com.aptana.ide.metadata.reader
Class MetadataReader

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by com.aptana.sax.ValidatingReader
          extended by com.aptana.ide.metadata.reader.MetadataReader
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class MetadataReader
extends ValidatingReader

Author:
Kevin Lindsey

Field Summary
 
Fields inherited from class com.aptana.sax.ValidatingReader
_schema
 
Constructor Summary
MetadataReader()
          Create a new instance of CoreLoader
 
Method Summary
 void characters(char[] buffer, int offset, int length)
          Process character data
 java.lang.String decodeHtml(java.lang.String text)
          decodes HTML encoded strings
 void enterBrowser(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          start processing a browser element
 void enterElement(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          start processing a class element
 void enterEvent(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          start processing a event
 void enterField(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          start processing a class element
 void enterSpecification(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          Exit a specification element
 void enterValue(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          start processing a value element
 void exitAvailability(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit an availability element
 void exitBrowser(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a browser element
 void exitDeprecated(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a deprecated element
 void exitDescription(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a description element
 void exitElement(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a class element
 void exitEvent(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a class element
 void exitField(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a field element
 void exitHint(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a hint element
 void exitValue(java.lang.String ns, java.lang.String name, java.lang.String qname)
          Exit a field element
 java.util.ArrayList getElements()
          The list of elements parsed
 java.util.Hashtable getGlobalEvents()
          These are events which are defined once and referenced everywhere else (for compactness)
 java.util.Hashtable getGlobalFields()
          These are fields which are defined once and referenced everywhere else (for compactness)
static java.lang.String join(java.lang.String delimiter, java.lang.String[] items)
          Create a string by concatenating the elements of a string array using a delimited between each item
 void loadXML(java.io.InputStream stream)
          Load the JavaScript built-in objects documentation using a stream.
 void loadXML(java.lang.String filename)
          Load the JavaScript built-in objects documentation
 void startTextBuffer(java.lang.String ns, java.lang.String name, java.lang.String qname, org.xml.sax.Attributes attributes)
          start buffering text
 
Methods inherited from class com.aptana.sax.ValidatingReader
endElement, read, read, startDocument, startElement
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetadataReader

public MetadataReader()
               throws java.lang.Exception
Create a new instance of CoreLoader

Throws:
java.lang.Exception
Method Detail

getElements

public java.util.ArrayList getElements()
The list of elements parsed

Returns:
The list of elements

getGlobalFields

public java.util.Hashtable getGlobalFields()
These are fields which are defined once and referenced everywhere else (for compactness)

Returns:
a hashtable of fields (name, FieldMetadata)

getGlobalEvents

public java.util.Hashtable getGlobalEvents()
These are events which are defined once and referenced everywhere else (for compactness)

Returns:
a hashtable of events (name, EventMetadata)

characters

public void characters(char[] buffer,
                       int offset,
                       int length)
Process character data

Specified by:
characters in interface org.xml.sax.ContentHandler
Overrides:
characters in class org.xml.sax.helpers.DefaultHandler
Parameters:
buffer -
offset -
length -

loadXML

public void loadXML(java.lang.String filename)
             throws java.lang.Exception
Load the JavaScript built-in objects documentation

Parameters:
filename -
Throws:
java.lang.Exception

loadXML

public void loadXML(java.io.InputStream stream)
             throws java.lang.Exception
Load the JavaScript built-in objects documentation using a stream.

Parameters:
stream - The input stream for the source XML
Throws:
java.lang.Exception

startTextBuffer

public void startTextBuffer(java.lang.String ns,
                            java.lang.String name,
                            java.lang.String qname,
                            org.xml.sax.Attributes attributes)
start buffering text

Parameters:
ns -
name -
qname -
attributes -

decodeHtml

public java.lang.String decodeHtml(java.lang.String text)
decodes HTML encoded strings

Parameters:
text - The text to decode
Returns:
The decoded text

enterElement

public void enterElement(java.lang.String ns,
                         java.lang.String name,
                         java.lang.String qname,
                         org.xml.sax.Attributes attributes)
start processing a class element

Parameters:
ns -
name -
qname -
attributes -

exitElement

public void exitElement(java.lang.String ns,
                        java.lang.String name,
                        java.lang.String qname)
Exit a class element

Parameters:
ns -
name -
qname -

enterEvent

public void enterEvent(java.lang.String ns,
                       java.lang.String name,
                       java.lang.String qname,
                       org.xml.sax.Attributes attributes)
start processing a event

Parameters:
ns -
name -
qname -
attributes -

exitEvent

public void exitEvent(java.lang.String ns,
                      java.lang.String name,
                      java.lang.String qname)
Exit a class element

Parameters:
ns -
name -
qname -

enterField

public void enterField(java.lang.String ns,
                       java.lang.String name,
                       java.lang.String qname,
                       org.xml.sax.Attributes attributes)
start processing a class element

Parameters:
ns -
name -
qname -
attributes -

exitField

public void exitField(java.lang.String ns,
                      java.lang.String name,
                      java.lang.String qname)
Exit a field element

Parameters:
ns -
name -
qname -

join

public static java.lang.String join(java.lang.String delimiter,
                                    java.lang.String[] items)
Create a string by concatenating the elements of a string array using a delimited between each item

Parameters:
delimiter - The text to place between each element in the array
items - The array of items to join
Returns:
The resulting string

exitDescription

public void exitDescription(java.lang.String ns,
                            java.lang.String name,
                            java.lang.String qname)
Exit a description element

Parameters:
ns -
name -
qname -

exitDeprecated

public void exitDeprecated(java.lang.String ns,
                           java.lang.String name,
                           java.lang.String qname)
Exit a deprecated element

Parameters:
ns -
name -
qname -

exitHint

public void exitHint(java.lang.String ns,
                     java.lang.String name,
                     java.lang.String qname)
Exit a hint element

Parameters:
ns -
name -
qname -

enterSpecification

public void enterSpecification(java.lang.String ns,
                               java.lang.String name,
                               java.lang.String qname,
                               org.xml.sax.Attributes attributes)
Exit a specification element

Parameters:
ns -
name -
qname -
attributes -

enterValue

public void enterValue(java.lang.String ns,
                       java.lang.String name,
                       java.lang.String qname,
                       org.xml.sax.Attributes attributes)
start processing a value element

Parameters:
ns -
name -
qname -
attributes -

exitValue

public void exitValue(java.lang.String ns,
                      java.lang.String name,
                      java.lang.String qname)
Exit a field element

Parameters:
ns -
name -
qname -

exitAvailability

public void exitAvailability(java.lang.String ns,
                             java.lang.String name,
                             java.lang.String qname)
Exit an availability element

Parameters:
ns -
name -
qname -

exitBrowser

public void exitBrowser(java.lang.String ns,
                        java.lang.String name,
                        java.lang.String qname)
Exit a browser element

Parameters:
ns -
name -
qname -

enterBrowser

public void enterBrowser(java.lang.String ns,
                         java.lang.String name,
                         java.lang.String qname,
                         org.xml.sax.Attributes attributes)
start processing a browser element

Parameters:
ns -
name -
qname -
attributes -