Package com.fasterxml.aalto.in
Class FixedNsContext
- java.lang.Object
-
- com.fasterxml.aalto.in.FixedNsContext
-
- All Implemented Interfaces:
javax.xml.namespace.NamespaceContext
public final class FixedNsContext extends java.lang.Object implements javax.xml.namespace.NamespaceContextNon-transient implementation ofNamespaceContext.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String[]_declarationDataArray that contains prefix/namespace-uri pairs, ordered from the most recent declaration to older ones.protected NsDeclaration_lastDeclarationWe will keep a reference to the last namespace declaration in effect at point when this instance was created.protected java.util.ArrayList<java.lang.String>_tmpDeclTemporary List used for constructing compact namespace binding information that we will actually use.static FixedNsContextEMPTY_CONTEXTWe can share and reuse "no bindings" instance.
-
Constructor Summary
Constructors Modifier Constructor Description privateFixedNsContext(NsDeclaration lastDecl, java.lang.String[] declData)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetNamespaceURI(java.lang.String prefix)java.lang.StringgetPrefix(java.lang.String nsURI)java.util.Iterator<java.lang.String>getPrefixes(java.lang.String nsURI)FixedNsContextreuseOrCreate(NsDeclaration currLastDecl)Method called to either reuse this context or construct a new one.java.lang.StringtoString()
-
-
-
Field Detail
-
EMPTY_CONTEXT
public static final FixedNsContext EMPTY_CONTEXT
We can share and reuse "no bindings" instance.
-
_lastDeclaration
protected final NsDeclaration _lastDeclaration
We will keep a reference to the last namespace declaration in effect at point when this instance was created. This is used for lazy invalidation of instances: if last declaration for an instance differs from the last seen by the reader, a new context must be created.
-
_declarationData
protected final java.lang.String[] _declarationData
Array that contains prefix/namespace-uri pairs, ordered from the most recent declaration to older ones. Array is always exactly sized so there are no empty entries at the end.
-
_tmpDecl
protected java.util.ArrayList<java.lang.String> _tmpDecl
Temporary List used for constructing compact namespace binding information that we will actually use.
-
-
Constructor Detail
-
FixedNsContext
private FixedNsContext(NsDeclaration lastDecl, java.lang.String[] declData)
-
-
Method Detail
-
reuseOrCreate
public FixedNsContext reuseOrCreate(NsDeclaration currLastDecl)
Method called to either reuse this context or construct a new one. Reuse is ok if the currently active last declaration has not changed since time this instance was created.
-
getNamespaceURI
public final java.lang.String getNamespaceURI(java.lang.String prefix)
- Specified by:
getNamespaceURIin interfacejavax.xml.namespace.NamespaceContext
-
getPrefix
public final java.lang.String getPrefix(java.lang.String nsURI)
- Specified by:
getPrefixin interfacejavax.xml.namespace.NamespaceContext
-
getPrefixes
public final java.util.Iterator<java.lang.String> getPrefixes(java.lang.String nsURI)
- Specified by:
getPrefixesin interfacejavax.xml.namespace.NamespaceContext
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-