public final class NonNsInputElementStack extends InputElementStack
InputElementStack
used when operating in
non-namespace-aware, non validating mode.Modifier and Type | Field and Description |
---|---|
protected NonNsAttributeCollector |
mAttrCollector |
protected java.lang.String[] |
mElements
Array that contains path of open elements from root, one String
for each open start element.
|
protected java.lang.String |
mLastLocalName |
protected javax.xml.namespace.QName |
mLastName |
protected int |
mSize
Number of Strings in
mElements that are valid. |
mConfig, mIdAttrIndex, mReporter, mValidator
Constructor and Description |
---|
NonNsInputElementStack(int initialSize,
ReaderConfig cfg) |
Modifier and Type | Method and Description |
---|---|
int |
addDefaultAttribute(java.lang.String localName,
java.lang.String uri,
java.lang.String prefix,
java.lang.String value)
Method called by actual validator instances when attributes with
default values have no explicit values for the element; if so,
default value needs to be added as if it was parsed from the
element.
|
void |
addNsBinding(java.lang.String prefix,
java.lang.String uri) |
BaseNsContext |
createNonTransientNsContext(javax.xml.stream.Location loc)
Method called to construct a non-transient NamespaceContext instance;
generally needed when creating events to return from event-based
iterators.
|
int |
findAttributeIndex(java.lang.String nsURI,
java.lang.String localName) |
AttributeCollector |
getAttrCollector()
Method called by
BasicStreamReader , to retrieve the
attribute collector it needs for some direct access. |
int |
getAttributeCount()
This method returns number of attributes accessible from within
currently active start element.
|
javax.xml.namespace.QName |
getCurrentElementName()
Method that can be used to access name information of the
innermost (top) element in the element stack.
|
int |
getCurrentNsCount() |
java.lang.String |
getDefaultNsURI() |
int |
getDepth() |
java.lang.String |
getLocalName() |
java.lang.String |
getLocalNsPrefix(int index) |
java.lang.String |
getLocalNsURI(int index) |
java.lang.String |
getNamespaceURI(java.lang.String prefix)
Method that can be called by the validator to resolve a namespace
prefix of the currently active top-level element.
|
java.lang.String |
getNsURI() |
java.lang.String |
getPrefix() |
java.lang.String |
getPrefix(java.lang.String nsURI) |
java.util.Iterator |
getPrefixes(java.lang.String nsURI) |
java.lang.String |
getTopElementDesc() |
int |
getTotalNsCount() |
boolean |
isEmpty() |
boolean |
isNamespaceAware() |
boolean |
isPrefixLocallyDeclared(java.lang.String internedPrefix) |
boolean |
matches(java.lang.String prefix,
java.lang.String localName) |
int |
pop()
Method called by the stream reader to remove the topmost (start)
element from the stack;
called when an end element is encountered during parsing.
|
void |
push(java.lang.String fullName)
Method called by the stream reader to add new (start) element
into the stack in non-namespace mode; called when a start element
is encountered during parsing, but only in non-namespace mode.
|
void |
push(java.lang.String prefix,
java.lang.String localName)
Method called by the stream reader to add new (start) element
into the stack in namespace-aware mode; called when a start element
is encountered during parsing, but only in ns-aware mode.
|
int |
resolveAndValidateElement()
Method called to update information about top of the stack, with
attribute information passed in.
|
protected void |
setAutomaticDTDValidator(XMLValidator validator,
NsDefaultProvider nsDefs)
Method called to connect the automatically handled DTD validator
(one detected from DOCTYPE, loaded and completely handled by
the stream reader without application calling validation methods).
|
addValidator, connectReporter, getAttributeLocalName, getAttributeNamespace, getAttributePrefix, getAttributeType, getAttributeValue, getAttributeValue, getBaseUri, getIdAttributeIndex, getNotationAttributeIndex, getValidationLocation, getXmlVersion, isNotationDeclared, isUnparsedEntityDeclared, normalizeXmlIdAttr, reallyValidating, reportProblem, stopValidatingAgainst, stopValidatingAgainst, validateAgainst, validateText
protected final NonNsAttributeCollector mAttrCollector
protected java.lang.String[] mElements
protected int mSize
mElements
that are valid.protected java.lang.String mLastLocalName
protected javax.xml.namespace.QName mLastName
public NonNsInputElementStack(int initialSize, ReaderConfig cfg)
protected void setAutomaticDTDValidator(XMLValidator validator, NsDefaultProvider nsDefs)
InputElementStack
setAutomaticDTDValidator
in class InputElementStack
public final void push(java.lang.String prefix, java.lang.String localName)
InputElementStack
push
in class InputElementStack
public final void push(java.lang.String fullName)
InputElementStack
push
in class InputElementStack
public int pop() throws javax.xml.stream.XMLStreamException
InputElementStack
pop
in class InputElementStack
javax.xml.stream.XMLStreamException
public int resolveAndValidateElement() throws javax.xml.stream.XMLStreamException
resolveAndValidateElement
in class InputElementStack
javax.xml.stream.XMLStreamException
public final boolean isNamespaceAware()
isNamespaceAware
in class InputElementStack
public final int getDepth()
getDepth
in class InputElementStack
public final AttributeCollector getAttrCollector()
InputElementStack
BasicStreamReader
, to retrieve the
attribute collector it needs for some direct access.getAttrCollector
in class InputElementStack
public final BaseNsContext createNonTransientNsContext(javax.xml.stream.Location loc)
createNonTransientNsContext
in class InputElementStack
public final java.lang.String getNamespaceURI(java.lang.String prefix)
ValidationContext
getNamespaceURI
in interface javax.xml.namespace.NamespaceContext
getNamespaceURI
in interface ValidationContext
getNamespaceURI
in class InputElementStack
public final java.lang.String getPrefix(java.lang.String nsURI)
getPrefix
in interface javax.xml.namespace.NamespaceContext
getPrefix
in class InputElementStack
public final java.util.Iterator getPrefixes(java.lang.String nsURI)
getPrefixes
in interface javax.xml.namespace.NamespaceContext
getPrefixes
in class InputElementStack
public final int getAttributeCount()
ValidationContext
Note: this method is only guaranteed to be callable during execution
of XMLValidator
methods
XMLValidator.validateElementStart(java.lang.String, java.lang.String, java.lang.String)
,
XMLValidator.validateAttribute(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
and
XMLValidator.validateElementAndAttributes()
. At other times
implementations may choose to allow it to be called (for example,
with information regarding last start element processed), to throw
a IllegalArgumentException
, or to return 0 to indicate no
attribute information is available.
Also note that whether defaulted attributes (attributes for which values are only available via attribute defaulting) are accessible depends on exact time when this method is called, and in general can not be assumed to function reliably.
getAttributeCount
in interface AttributeInfo
getAttributeCount
in interface ValidationContext
getAttributeCount
in class InputElementStack
public final int findAttributeIndex(java.lang.String nsURI, java.lang.String localName)
findAttributeIndex
in interface AttributeInfo
findAttributeIndex
in interface ValidationContext
findAttributeIndex
in class InputElementStack
public final javax.xml.namespace.QName getCurrentElementName()
ValidationContext
getCurrentElementName
in interface ValidationContext
getCurrentElementName
in class InputElementStack
public int addDefaultAttribute(java.lang.String localName, java.lang.String uri, java.lang.String prefix, java.lang.String value)
InputElementStack
addDefaultAttribute
in interface ValidationContext
addDefaultAttribute
in class InputElementStack
public boolean isPrefixLocallyDeclared(java.lang.String internedPrefix)
isPrefixLocallyDeclared
in class InputElementStack
public void addNsBinding(java.lang.String prefix, java.lang.String uri)
addNsBinding
in class InputElementStack
public final boolean isEmpty()
isEmpty
in class InputElementStack
public final java.lang.String getDefaultNsURI()
getDefaultNsURI
in class InputElementStack
public final java.lang.String getNsURI()
getNsURI
in class InputElementStack
public final java.lang.String getPrefix()
getPrefix
in class InputElementStack
public final java.lang.String getLocalName()
getLocalName
in class InputElementStack
public final boolean matches(java.lang.String prefix, java.lang.String localName)
matches
in class InputElementStack
public final java.lang.String getTopElementDesc()
getTopElementDesc
in class InputElementStack
public final int getTotalNsCount()
getTotalNsCount
in class InputElementStack
public final int getCurrentNsCount()
getCurrentNsCount
in class InputElementStack
public final java.lang.String getLocalNsPrefix(int index)
getLocalNsPrefix
in class InputElementStack
public final java.lang.String getLocalNsURI(int index)
getLocalNsURI
in class InputElementStack