org.argouml.xml.pgml
Class PGMLParser

java.lang.Object
  extended byorg.xml.sax.HandlerBase
      extended byorg.tigris.gef.xml.pgml.PGMLParser
          extended byorg.argouml.xml.pgml.PGMLParser
All Implemented Interfaces:
org.xml.sax.DocumentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class PGMLParser
extends org.tigris.gef.xml.pgml.PGMLParser


Nested Class Summary
protected  class PGMLParser.NameVal
          Utility class to pair a name and a value String together.
 
Field Summary
private  java.lang.String[] _entityPaths
           
protected  org.tigris.gef.presentation.FigNode _previousNode
           
protected  java.lang.StringBuffer _privateText
           
protected  int _privateTextDepth
           
protected  java.util.HashMap _translateUciToOrg
           
protected static org.apache.log4j.Logger cat
           
static PGMLParser SINGLETON
           
 
Fields inherited from class org.tigris.gef.xml.pgml.PGMLParser
_currentEdge, _currentNode, _detectedFailure, _diagram, _elementState, _figRegistry, _nestedGroups, _ownerRegistry, _textBuf, ANNOTATION_EDGE_STATE, ANNOTATION_STATE, DEFAULT_EDGE_STATE, DEFAULT_NODE_STATE, DEFAULT_STATE, EDGE_STATE, LINE_STATE, NODE_STATE, POLY_EDGE_STATE, POLY_NODE_STATE, POLY_STATE, PRIVATE_EDGE_STATE, PRIVATE_NODE_STATE, PRIVATE_STATE, systemId, TEXT_ANNOTATION_STATE, TEXT_EDGE_STATE, TEXT_NODE_STATE, TEXT_STATE
 
Constructor Summary
protected PGMLParser()
           
 
Method Summary
 void characters(char[] ch, int start, int length)
          Called by the PGML framework when there are characters inside an XML entity.
 void endElement(java.lang.String arg0)
           
protected  java.lang.String[] getEntityPaths()
           
 org.tigris.gef.base.Diagram readDiagram(java.io.InputStream is, boolean closeStream)
           
protected  void setElementItemUID(java.lang.String id)
          Sets the ItemUID value of the current element in the file.
protected  PGMLParser.NameVal splitNameVal(java.lang.String str)
          Splits a name value pair into a NameVal instance.
 void startElement(java.lang.String elementName, org.xml.sax.AttributeList attrList)
          Called by the XML framework when an entity starts.
protected  java.lang.String translateClassName(java.lang.String oldName)
           
 
Methods inherited from class org.tigris.gef.xml.pgml.PGMLParser
annotationStateStartElement, colorByName, findFig, findOwner, getGraphModelFor, getSystemId, handleEllipse, handleGroup, handleLine, handlePath, handlePGML, handlePolyLine, handleRect, handleText, initDiagram, lineStateStartElement, readDiagram, readDiagram, resolveEntity, rollbackAdd, setAttrs, setDetectedFailure, setOwnerAttr, setOwnerRegistry, setSystemId
 
Methods inherited from class org.xml.sax.HandlerBase
endDocument, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, setDocumentLocator, startDocument, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cat

protected static org.apache.log4j.Logger cat

_privateTextDepth

protected int _privateTextDepth

_privateText

protected java.lang.StringBuffer _privateText

SINGLETON

public static PGMLParser SINGLETON

_translateUciToOrg

protected java.util.HashMap _translateUciToOrg

_entityPaths

private java.lang.String[] _entityPaths

_previousNode

protected org.tigris.gef.presentation.FigNode _previousNode
Constructor Detail

PGMLParser

protected PGMLParser()
Method Detail

translateClassName

protected java.lang.String translateClassName(java.lang.String oldName)

getEntityPaths

protected java.lang.String[] getEntityPaths()

startElement

public void startElement(java.lang.String elementName,
                         org.xml.sax.AttributeList attrList)
Called by the XML framework when an entity starts.


characters

public void characters(char[] ch,
                       int start,
                       int length)
Called by the PGML framework when there are characters inside an XML entity. We need to save them if it would turn out to be a private entity.


setElementItemUID

protected void setElementItemUID(java.lang.String id)
Sets the ItemUID value of the current element in the file.


splitNameVal

protected PGMLParser.NameVal splitNameVal(java.lang.String str)
Splits a name value pair into a NameVal instance. A name value pair is a String on the form .

Parameters:
str - A String with a name value pair.
Returns:
A NameVal, or null if they could not be split.

readDiagram

public org.tigris.gef.base.Diagram readDiagram(java.io.InputStream is,
                                               boolean closeStream)

endElement

public void endElement(java.lang.String arg0)
See Also:
DocumentHandler.endElement(java.lang.String)


ArgoUML © 1996-2004 (20040316)ArgoUML HomepageArgoUML Developers' pageArgoUML Cookbook