org.biomage.tools.xmlutils
Class MAGEContentHandler

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by org.biomage.tools.xmlutils.MAGEContentHandler
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler
Direct Known Subclasses:
CustomMAGEContentHandler

public class MAGEContentHandler
extends org.xml.sax.helpers.DefaultHandler

Description: Content handler for MAGE.


Nested Class Summary
protected  class MAGEContentHandler.UnresolvedRef
          Basic structure to hold unresolved references.
 
Field Summary
protected  java.util.Stack associationStack
           
protected  java.util.Map classConstructorMap
           
protected  java.util.Map identifierMap
           
protected  boolean lastDocument
           
protected  MAGEJava mageJava
           
protected  java.util.Map methodsMap
           
protected  java.util.Stack objectStack
           
protected  PCDataImpl pcDataStack
           
protected  java.util.LinkedList unresolvedRefList
           
 
Constructor Summary
MAGEContentHandler()
           
 
Method Summary
 void characters(char[] text, int start, int length)
           
protected  java.util.Stack createAssociationStack()
          Factory method to instantiate the Associations Stack.
protected  java.util.Map createClassConstructorMap()
          Factory method to instantiate the Class->Constructor Map.
protected  java.util.Map createIdentifierMap()
          Factory method to instantiate the String->Object (identifiers->identified objects) Map.
protected  MAGEJava createMAGEJava()
          Factory method to instantiate the MAGEJava object.
protected  java.lang.String createMAGEObject(java.lang.String localName, org.xml.sax.Attributes atts)
           
protected  MultiMap createMethodsMap()
          Factory method to instantiate the String->Method MultiMap.
protected  java.util.Stack createObjectStack()
          Factory method to instantiate the created Objects Stack.
protected  java.util.LinkedList createUnresolvedRefList()
          Factory method to instantiate the UnresolvedRefs Stack.
 void endDocument()
           
 void endElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qualifiedName)
           
 void endPrefixMapping(java.lang.String prefix)
           
 boolean getLastDocument()
           
 MAGEJava getMAGEJava()
          Get the finished MAGE top-level object
 void ignorableWhitespace(char[] text, int start, int length)
           
 void makeAssociation(org.biomage.tools.xmlutils.MAGEContentHandler.Association association_info, java.lang.Object parent, java.lang.Object child)
          Method to make an association between object via reflection.
protected  void mergePckgs(java.lang.Object pckg1, java.lang.Object pckg2)
           
 void processingInstruction(java.lang.String target, java.lang.String data)
           
 void setDocumentLocator(org.xml.sax.Locator locator)
           
 void setLastDocument(boolean b)
           
 void skippedEntity(java.lang.String name)
           
 void startDocument()
           
 void startElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qualifiedName, org.xml.sax.Attributes atts)
           
 void startPrefixMapping(java.lang.String prefix, java.lang.String uri)
           
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
error, fatalError, notationDecl, resolveEntity, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mageJava

protected MAGEJava mageJava

identifierMap

protected java.util.Map identifierMap

classConstructorMap

protected java.util.Map classConstructorMap

methodsMap

protected java.util.Map methodsMap

objectStack

protected java.util.Stack objectStack

associationStack

protected java.util.Stack associationStack

unresolvedRefList

protected java.util.LinkedList unresolvedRefList

pcDataStack

protected PCDataImpl pcDataStack

lastDocument

protected boolean lastDocument
Constructor Detail

MAGEContentHandler

public MAGEContentHandler()
Method Detail

getMAGEJava

public MAGEJava getMAGEJava()
Get the finished MAGE top-level object


setDocumentLocator

public void setDocumentLocator(org.xml.sax.Locator locator)
Specified by:
setDocumentLocator in interface org.xml.sax.ContentHandler
Overrides:
setDocumentLocator in class org.xml.sax.helpers.DefaultHandler

startDocument

public void startDocument()
                   throws org.xml.sax.SAXException
Specified by:
startDocument in interface org.xml.sax.ContentHandler
Overrides:
startDocument in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

setLastDocument

public void setLastDocument(boolean b)

getLastDocument

public boolean getLastDocument()

endDocument

public void endDocument()
                 throws org.xml.sax.SAXException
Specified by:
endDocument in interface org.xml.sax.ContentHandler
Overrides:
endDocument in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

mergePckgs

protected void mergePckgs(java.lang.Object pckg1,
                          java.lang.Object pckg2)

startElement

public void startElement(java.lang.String namespaceURI,
                         java.lang.String localName,
                         java.lang.String qualifiedName,
                         org.xml.sax.Attributes atts)
                  throws org.xml.sax.SAXException
Specified by:
startElement in interface org.xml.sax.ContentHandler
Overrides:
startElement in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

makeAssociation

public void makeAssociation(org.biomage.tools.xmlutils.MAGEContentHandler.Association association_info,
                            java.lang.Object parent,
                            java.lang.Object child)
                     throws org.xml.sax.SAXException
Method to make an association between object via reflection.

Throws:
org.xml.sax.SAXException

endElement

public void endElement(java.lang.String namespaceURI,
                       java.lang.String localName,
                       java.lang.String qualifiedName)
                throws org.xml.sax.SAXException
Specified by:
endElement in interface org.xml.sax.ContentHandler
Overrides:
endElement in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

startPrefixMapping

public void startPrefixMapping(java.lang.String prefix,
                               java.lang.String uri)
                        throws org.xml.sax.SAXException
Specified by:
startPrefixMapping in interface org.xml.sax.ContentHandler
Overrides:
startPrefixMapping in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

endPrefixMapping

public void endPrefixMapping(java.lang.String prefix)
                      throws org.xml.sax.SAXException
Specified by:
endPrefixMapping in interface org.xml.sax.ContentHandler
Overrides:
endPrefixMapping in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

characters

public void characters(char[] text,
                       int start,
                       int length)
                throws org.xml.sax.SAXException
Specified by:
characters in interface org.xml.sax.ContentHandler
Overrides:
characters in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

ignorableWhitespace

public void ignorableWhitespace(char[] text,
                                int start,
                                int length)
                         throws org.xml.sax.SAXException
Specified by:
ignorableWhitespace in interface org.xml.sax.ContentHandler
Overrides:
ignorableWhitespace in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

processingInstruction

public void processingInstruction(java.lang.String target,
                                  java.lang.String data)
                           throws org.xml.sax.SAXException
Specified by:
processingInstruction in interface org.xml.sax.ContentHandler
Overrides:
processingInstruction in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

skippedEntity

public void skippedEntity(java.lang.String name)
                   throws org.xml.sax.SAXException
Specified by:
skippedEntity in interface org.xml.sax.ContentHandler
Overrides:
skippedEntity in class org.xml.sax.helpers.DefaultHandler
Throws:
org.xml.sax.SAXException

createMAGEObject

protected java.lang.String createMAGEObject(java.lang.String localName,
                                            org.xml.sax.Attributes atts)
                                     throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

createMAGEJava

protected MAGEJava createMAGEJava()
Factory method to instantiate the MAGEJava object.


createIdentifierMap

protected java.util.Map createIdentifierMap()
Factory method to instantiate the String->Object (identifiers->identified objects) Map.


createMethodsMap

protected MultiMap createMethodsMap()
Factory method to instantiate the String->Method MultiMap.


createClassConstructorMap

protected java.util.Map createClassConstructorMap()
Factory method to instantiate the Class->Constructor Map.


createAssociationStack

protected java.util.Stack createAssociationStack()
Factory method to instantiate the Associations Stack.


createObjectStack

protected java.util.Stack createObjectStack()
Factory method to instantiate the created Objects Stack.


createUnresolvedRefList

protected java.util.LinkedList createUnresolvedRefList()
Factory method to instantiate the UnresolvedRefs Stack.