|
NASA World Wind | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectgov.nasa.worldwind.avlist.AVListImpl
gov.nasa.worldwind.util.xml.BasicXMLEventParserContext
public class BasicXMLEventParserContext
Provides an implementation of XMLEventParserContext. This class is meant to be
the base class for schema-specific parsers.
| Field Summary | |
|---|---|
static QName |
BOOLEAN
The parser name of the default boolean parser. |
static QName |
BOOLEAN_INTEGER
The parser name of the default boolean integer parser. |
protected BooleanIntegerXMLEventParser |
booleanIntegerParser
|
protected BooleanXMLEventParser |
booleanParser
|
protected String |
defaultNamespaceURI
|
static QName |
DOUBLE
The parser name of the default double parser. |
protected DoubleXMLEventParser |
doubleParser
|
protected ConcurrentHashMap<String,Object> |
idTable
|
static QName |
INTEGER
The parser name of the default integer parser. |
protected IntegerXMLEventParser |
integerParser
|
protected XMLParserNotificationListener |
notificationListener
|
protected ConcurrentHashMap<QName,XMLEventParser> |
parsers
|
protected XMLEventReader |
reader
|
static QName |
STRING
The parser name of the default string parser. |
protected StringXMLEventParser |
stringParser
|
static QName |
UNRECOGNIZED
The parser name of the unrecognized-element parser. |
| Fields inherited from interface gov.nasa.worldwind.util.xml.XMLEventParserContext |
|---|
UNRECOGNIZED_ELEMENT_PARSER |
| Constructor Summary | |
|---|---|
BasicXMLEventParserContext()
Construct an instance. |
|
BasicXMLEventParserContext(BasicXMLEventParserContext ctx)
|
|
BasicXMLEventParserContext(XMLEventReader eventReader)
Construct an instance for a specified event reader. |
|
BasicXMLEventParserContext(XMLEventReader eventReader,
String defaultNamespace)
Construct an instance for a specified event reader and default namespace. |
|
| Method Summary | |
|---|---|
protected void |
addBooleanIntegerParsers(String namespace,
String[] booleanIntegerFields)
Add boolean integer parsers for a list of element types and qualified for a specified namespace. |
protected void |
addBooleanParsers(String namespace,
String[] booleanFields)
Add boolean parsers for a list of element types and qualified for a specified namespace. |
protected void |
addDoubleParsers(String namespace,
String[] doubleFields)
Add double parsers for a list of element types and qualified for a specified namespace. |
void |
addId(String id,
Object o)
Adds a mapping of an id attribute to its associated KML object. |
protected void |
addIntegerParsers(String namespace,
String[] integerFields)
Add integer parsers for a list of element types and qualified for a specified namespace. |
protected void |
addStringParsers(String namespace,
String[] stringFields)
Add string parsers for a list of element types and qualified for a specified namespace. |
XMLEventParser |
allocate(XMLEvent event)
Create a parser for a specified event's element name, if a parser for that name is registered with the context. |
XMLEventParser |
allocate(XMLEvent event,
XMLEventParser defaultParser)
Create a parser for a specified event's element name, if a parser for that name is registered with the context. |
BooleanIntegerXMLEventParser |
getBooleanIntegerParser()
Returns the default parser for a simple boolean integer (0 or 1). |
BooleanXMLEventParser |
getBooleanParser()
Returns the default parser for a simple boolean. |
String |
getCharacters(XMLEvent event)
Returns the text associated with the event. |
String |
getDefaultNamespaceURI()
Returns the context's default namespace URI. |
DoubleXMLEventParser |
getDoubleParser()
Returns a parser for a simple double. |
XMLEventReader |
getEventReader()
Returns the event reader used by this instance. |
Map<String,Object> |
getIdTable()
Returns the table associating objects with their id attribute as specified in the object's KML file. |
IntegerXMLEventParser |
getIntegerParser()
Returns the default parser for a simple integer. |
XMLEventParser |
getParser(QName name)
Returns a new parser for a specified element name. |
XMLEventParser |
getParser(XMLEvent event)
Returns a new parser for a specified event. |
protected XMLEventParser |
getParser(XMLEvent event,
XMLEventParser defaultParser)
|
StringXMLEventParser |
getStringParser()
Returns the default parser for a simple string. |
XMLEventParser |
getUnrecognizedElementParser()
Returns a parser to handle unrecognized elements. |
boolean |
hasNext()
Indicates whether the event stream associated with this context contains another event. |
protected void |
initialize()
|
protected void |
initializeDefaultNotificationListener()
|
protected void |
initializeParsers()
Initializes the parser table with the default parsers for the strings, integers, etc., qualified for the default namespace. |
boolean |
isDefaultNamespace(String namespaceURI)
Indicates whether the specified namespace URI is the default namespace URI used by this parser context. |
boolean |
isEndElement(XMLEvent event,
XMLEvent startElement)
Determines whether an event is the corresponding end element for a specified start event. |
static boolean |
isEndElementEvent(XMLEvent event,
XMLEvent startElement)
|
protected static boolean |
isNullNamespace(String namespaceURI)
|
boolean |
isSameAttributeName(QName qa,
QName qb)
Determines whether two fully qualified attribute names are the same. |
boolean |
isSameName(QName qa,
QName qb)
Determines whether two element names are the same. |
boolean |
isStartElement(XMLEvent event,
QName elementName)
Determines whether an event is a start event for a specific event type. |
XMLEvent |
nextEvent()
Returns the next event in the event stream associated with this context. |
void |
registerParser(QName elementName,
XMLEventParser parser)
Registers a parser for a specified element name. |
void |
resolveInternalReferences(String referenceName,
String fieldName,
AbstractXMLEventParser parser)
Deprecated. |
void |
setDefaultNamespaceURI(String defaultNamespaceURI)
Specifies the context's default namespace URI. |
void |
setEventReader(XMLEventReader reader)
Specify the event reader for the parser context to use to parse XML. |
void |
setNotificationListener(XMLParserNotificationListener listener)
Specify the object to receive notifications, which are sent when exceptions occur during parsing and when unrecognized element types are encountered. |
| Methods inherited from class gov.nasa.worldwind.avlist.AVListImpl |
|---|
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getBooleanValue, getBooleanValue, getChangeSupport, getDoubleValue, getDoubleValue, getEntries, getIntegerValue, getIntegerValue, getLongValue, getLongValue, getRestorableStateForAVPair, getStringValue, getStringValue, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface gov.nasa.worldwind.avlist.AVList |
|---|
addPropertyChangeListener, addPropertyChangeListener, clearList, copy, firePropertyChange, firePropertyChange, getEntries, getStringValue, getValue, getValues, hasKey, removeKey, removePropertyChangeListener, removePropertyChangeListener, setValue, setValues |
| Field Detail |
|---|
public static QName BOOLEAN
public static QName BOOLEAN_INTEGER
protected BooleanIntegerXMLEventParser booleanIntegerParser
protected BooleanXMLEventParser booleanParser
protected String defaultNamespaceURI
public static QName DOUBLE
protected DoubleXMLEventParser doubleParser
protected ConcurrentHashMap<String,Object> idTable
public static QName INTEGER
protected IntegerXMLEventParser integerParser
protected XMLParserNotificationListener notificationListener
protected ConcurrentHashMap<QName,XMLEventParser> parsers
protected XMLEventReader reader
public static QName STRING
protected StringXMLEventParser stringParser
public static QName UNRECOGNIZED
| Constructor Detail |
|---|
public BasicXMLEventParserContext()
initializeParsers() and initialize().
public BasicXMLEventParserContext(BasicXMLEventParserContext ctx)
public BasicXMLEventParserContext(XMLEventReader eventReader)
initializeParsers() and initialize().
eventReader - the event reader to use for XML parsing.
public BasicXMLEventParserContext(XMLEventReader eventReader,
String defaultNamespace)
initializeParsers()
and initialize().
eventReader - the event reader to use for XML parsing.defaultNamespace - the namespace URI of the default namespace.| Method Detail |
|---|
protected void addBooleanIntegerParsers(String namespace,
String[] booleanIntegerFields)
namespace - the namespace URI.booleanIntegerFields - the string parser.
protected void addBooleanParsers(String namespace,
String[] booleanFields)
namespace - the namespace URI.booleanFields - the string parsers.
protected void addDoubleParsers(String namespace,
String[] doubleFields)
namespace - the namespace URI.doubleFields - the string parsers.
public void addId(String id,
Object o)
XMLEventParserContext
addId in interface XMLEventParserContextid - the object id. If null, this method returns without creating a mapping.o - the object to associate with the id.
protected void addIntegerParsers(String namespace,
String[] integerFields)
namespace - the namespace URI.integerFields - the string parsers.
protected void addStringParsers(String namespace,
String[] stringFields)
namespace - the namespace URI.stringFields - the string parsers.public XMLEventParser allocate(XMLEvent event)
XMLEventParserContext
allocate in interface XMLEventParserContextevent - the event whose element name identifies the parser to create.
public XMLEventParser allocate(XMLEvent event,
XMLEventParser defaultParser)
XMLEventParserContext
allocate in interface XMLEventParserContextevent - the event whose element name identifies the parser to create.defaultParser - a parser to return if no parser is registered for the specified name. May be null.
public BooleanIntegerXMLEventParser getBooleanIntegerParser()
XMLEventParserContext
getBooleanIntegerParser in interface XMLEventParserContextpublic BooleanXMLEventParser getBooleanParser()
XMLEventParserContext
getBooleanParser in interface XMLEventParserContextpublic String getCharacters(XMLEvent event)
XMLEventParserContext
getCharacters in interface XMLEventParserContextevent - the event of interest.
public String getDefaultNamespaceURI()
XMLEventParserContext
getDefaultNamespaceURI in interface XMLEventParserContextXMLEventParserContext.setDefaultNamespaceURI(String)public DoubleXMLEventParser getDoubleParser()
XMLEventParserContext
getDoubleParser in interface XMLEventParserContextpublic XMLEventReader getEventReader()
getEventReader in interface XMLEventParserContextpublic Map<String,Object> getIdTable()
XMLEventParserContext
getIdTable in interface XMLEventParserContextpublic IntegerXMLEventParser getIntegerParser()
XMLEventParserContext
getIntegerParser in interface XMLEventParserContextpublic XMLEventParser getParser(QName name)
XMLEventParserContext
getParser in interface XMLEventParserContextname - indicates the element name for which a parser is created.
public XMLEventParser getParser(XMLEvent event)
XMLEventParserContext
getParser in interface XMLEventParserContextevent - indicates the element name for which a parser is created.
protected XMLEventParser getParser(XMLEvent event,
XMLEventParser defaultParser)
public StringXMLEventParser getStringParser()
XMLEventParserContext
getStringParser in interface XMLEventParserContextpublic XMLEventParser getUnrecognizedElementParser()
UnrecognizedXMLEventParser, and may be replaced by calling registerParser(javax.xml.namespace.QName, XMLEventParser) and specifying UNRECOGNIZED as the parser
name.
getUnrecognizedElementParser in interface XMLEventParserContextpublic boolean hasNext()
XMLEventParserContext
hasNext in interface XMLEventParserContextXMLEventReader.hasNext()protected void initialize()
protected void initializeDefaultNotificationListener()
protected void initializeParsers()
public boolean isDefaultNamespace(String namespaceURI)
XMLEventParserContext
isDefaultNamespace in interface XMLEventParserContextnamespaceURI - the namespace URI to check.
public boolean isEndElement(XMLEvent event,
XMLEvent startElement)
XMLEventParserContext
isEndElement in interface XMLEventParserContextevent - the event of interest.startElement - the start event associated with the potential end event.
public static boolean isEndElementEvent(XMLEvent event,
XMLEvent startElement)
protected static boolean isNullNamespace(String namespaceURI)
public boolean isSameAttributeName(QName qa,
QName qb)
XMLEventParserContext
isSameAttributeName in interface XMLEventParserContextqa - the first attribute name.qb - the second attribute name.
public boolean isSameName(QName qa,
QName qb)
XMLEventParserContext
isSameName in interface XMLEventParserContextqa - first element nameqb - second element name
public boolean isStartElement(XMLEvent event,
QName elementName)
XMLEventParserContext
isStartElement in interface XMLEventParserContextevent - an event identifying the event type of interest.elementName - the event name.
public XMLEvent nextEvent()
throws XMLStreamException
XMLEventParserContext
nextEvent in interface XMLEventParserContextXMLStreamException - if there is an error with the underlying XML.XMLEventReader.nextEvent()
public void registerParser(QName elementName,
XMLEventParser parser)
XMLEventParserContextXMLEventParserContext.getParser(javax.xml.stream.events.XMLEvent) is called for the same element name.
registerParser in interface XMLEventParserContextelementName - the element name for which to return a parser.parser - the parser to register.
@Deprecated
public void resolveInternalReferences(String referenceName,
String fieldName,
AbstractXMLEventParser parser)
XMLEventParserContext
resolveInternalReferences in interface XMLEventParserContextreferenceName - the element name of the elements whose references this method resolves. An example is
styleUrl. Resolution is performed for only elements of this name.fieldName - the key used to identify the resolved object in a parser's field table. After this method
resolves references, the referenced object can be obtained by calling the parsers AbstractXMLEventParser.getField(javax.xml.namespace.QName)
method with the fieldName specified here as the name argument.parser - the parser whose references to resolve.public void setDefaultNamespaceURI(String defaultNamespaceURI)
XMLEventParserContext
setDefaultNamespaceURI in interface XMLEventParserContextdefaultNamespaceURI - the default namespace URI.XMLEventParserContext.getDefaultNamespaceURI(),
XMLEventParserContext.isSameName(javax.xml.namespace.QName, javax.xml.namespace.QName)public void setEventReader(XMLEventReader reader)
reader - the event reader to use.public void setNotificationListener(XMLParserNotificationListener listener)
XMLEventParserContextXMLParserNotification for
more information.
The parser context may have only one notification listener. That listener may be changed at any time.
setNotificationListener in interface XMLEventParserContextlistener - the object to receive notification events.
|
NASA World Wind | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||