Top Description Inners Fields Constructors Methods
com.sun.org.apache.xerces.internal.util

public Class NamespaceSupport

extends Object
implements NamespaceContext
Class Inheritance
All Implemented Interfaces
com.sun.org.apache.xerces.internal.xni.NamespaceContext
Known Direct Subclasses
com.sun.org.apache.xerces.internal.xinclude.MultipleScopeNamespaceSupport, com.sun.org.apache.xerces.internal.impl.xs.SchemaNamespaceSupport
Imports
com.sun.org.apache.xerces.internal.xni.NamespaceContext, java.util.ArrayList, .Enumeration, .Iterator, .List, .NoSuchElementException

Namespace support for XML document handlers. This class doesn't perform any error checking and assumes that all strings passed as arguments to methods are unique symbols. The SymbolTable class can be used for this purpose.
Author
Andy Clark, IBM

Nested and Inner Type Summary

Modifier and TypeClass and Description
protected class
protected class

Field Summary

Modifier and TypeField and Description
protected int[]
fContext

Context indexes.

protected int
fCurrentContext

The current context.

protected String[]
fNamespace

Namespace binding information.

protected int
fNamespaceSize

The top of the namespace information array.

protected String[]

Constructor Summary

AccessConstructor and Description
public
NamespaceSupport()

Default constructor.

public
NamespaceSupport(NamespaceContext context)

Constructs a namespace context object and initializes it with the prefixes declared in the specified context.

Method Summary

Modifier and TypeMethod and Description
public boolean

Returns:

true if the given prefix exists in the context
containsPrefix
(String
The prefix to look up.
prefix
)

Checks whether a binding or unbinding for the given prefix exists in the context.

public boolean

Returns:

true if the given prefix exists in the current context
containsPrefixInCurrentContext
(String
The prefix to look up.
prefix
)

Checks whether a binding or unbinding for the given prefix exists in the current context.

public boolean
declarePrefix(String
The prefix to declare, or null for the empty string.
prefix
,
String
The Namespace URI to associate with the prefix.
uri
)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.declarePrefix.

Declare a Namespace prefix.

public Enumeration<String>
getAllPrefixes()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getAllPrefixes.

Return an enumeration of all prefixes whose declarations are active in the current context.

public String
getDeclaredPrefixAt(int index)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getDeclaredPrefixAt.

Returns the prefix at the specified index in the current context.

public int
getDeclaredPrefixCount()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getDeclaredPrefixCount.

Return a count of locally declared prefixes, including the default prefix if bound.

public String
getPrefix(String
The namespace URI to look up.
uri
)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getPrefix.

Look up a namespace URI and get one of the mapped prefix.

public Iterator<String>
public List<String>
public String
getURI(String
The prefix to look up.
prefix
)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getURI.

Look up a prefix and get the currently-mapped Namespace URI.

public void
popContext()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.popContext.

Revert to the previous Namespace context.

public void
public void
reset()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.reset.

Reset this Namespace support object for reuse.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

fContextback to summary
protected int[] fContext

Context indexes. This array contains indexes into the namespace information array. The index at the current context is the start index of declared namespace bindings and runs to the size of the namespace information array.

See Also
fNamespaceSize
fCurrentContextback to summary
protected int fCurrentContext

The current context.

fNamespaceback to summary
protected String[] fNamespace

Namespace binding information. This array is composed of a series of tuples containing the namespace binding information: <prefix, uri>. The default size can be set to anything as long as it is a power of 2 greater than 1.

See Also
fNamespaceSize, fContext
fNamespaceSizeback to summary
protected int fNamespaceSize

The top of the namespace information array.

fPrefixesback to summary
protected String[] fPrefixes

Constructor Detail

NamespaceSupportback to summary
public NamespaceSupport()

Default constructor.

NamespaceSupportback to summary
public NamespaceSupport(NamespaceContext context)

Constructs a namespace context object and initializes it with the prefixes declared in the specified context.

Method Detail

containsPrefixback to summary
public boolean containsPrefix(String prefix)

Checks whether a binding or unbinding for the given prefix exists in the context.

Parameters
prefix:String

The prefix to look up.

Returns:boolean

true if the given prefix exists in the context

containsPrefixInCurrentContextback to summary
public boolean containsPrefixInCurrentContext(String prefix)

Checks whether a binding or unbinding for the given prefix exists in the current context.

Parameters
prefix:String

The prefix to look up.

Returns:boolean

true if the given prefix exists in the current context

declarePrefixback to summary
public boolean declarePrefix(String prefix, String uri)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.declarePrefix.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.declarePrefix.

Declare a Namespace prefix.

This method declares a prefix in the current Namespace context; the prefix will remain in force until this context is popped, unless it is shadowed in a descendant context.

Note that to declare a default Namespace, use the empty string. The prefixes "xml" and "xmlns" can't be rebound.

Note that you must not declare a prefix after you've pushed and popped another Namespace.

Parameters
prefix:String

The prefix to declare, or null for the empty string.

uri:String

The Namespace URI to associate with the prefix.

Returns:boolean

true if the prefix was legal, false otherwise

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#declarePrefix(String, String)
getAllPrefixesback to summary
public Enumeration<String> getAllPrefixes()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getAllPrefixes.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.getAllPrefixes.

Return an enumeration of all prefixes whose declarations are active in the current context. This includes declarations from parent contexts that have not been overridden.

Returns:Enumeration<String>

Enumeration

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#getAllPrefixes()
getDeclaredPrefixAtback to summary
public String getDeclaredPrefixAt(int index)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getDeclaredPrefixAt.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.getDeclaredPrefixAt.

Returns the prefix at the specified index in the current context.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#getDeclaredPrefixAt(int)
getDeclaredPrefixCountback to summary
public int getDeclaredPrefixCount()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getDeclaredPrefixCount.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.getDeclaredPrefixCount.

Return a count of locally declared prefixes, including the default prefix if bound.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#getDeclaredPrefixCount()
getPrefixback to summary
public String getPrefix(String uri)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getPrefix.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.getPrefix.

Look up a namespace URI and get one of the mapped prefix.

This method looks up the namespace URI in the current context. If more than one prefix is currently mapped to the same URI, this method will make an arbitrary selection If no mapping is found, this methods will continue lookup in the parent context(s).

Parameters
uri:String

The namespace URI to look up.

Returns:String

One of the associated prefixes, or null if the uri does not map to any prefix.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#getPrefix(String)
getPrefixesback to summary
public Iterator<String> getPrefixes()
getPrefixesback to summary
public List<String> getPrefixes(String uri)
getURIback to summary
public String getURI(String prefix)

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.getURI.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.getURI.

Look up a prefix and get the currently-mapped Namespace URI.

This method looks up the prefix in the current context. If no mapping is found, this methods will continue lookup in the parent context(s). Use the empty string ("") for the default Namespace.

Parameters
prefix:String

The prefix to look up.

Returns:String

The associated Namespace URI, or null if the prefix is undeclared in this context.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#getURI(String)
popContextback to summary
public void popContext()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.popContext.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.popContext.

Revert to the previous Namespace context.

The context should be popped at the end of each XML element. After popping the context, all Namespace prefix mappings that were previously in force are restored.

Users must not attempt to declare additional Namespace prefixes after popping a context, unless you push another context first.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#popContext()
pushContextback to summary
public void pushContext()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.pushContext.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.pushContext.

Start a new Namespace context.

A new context should be pushed at the beginning of each XML element: the new context will automatically inherit the declarations of its parent context, but it will also keep track of which declarations were made within this context.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#pushContext()
resetback to summary
public void reset()

Implements com.sun.org.apache.xerces.internal.xni.NamespaceContext.reset.

Doc from com.sun.org.apache.xerces.internal.xni.NamespaceContext.reset.

Reset this Namespace support object for reuse.

It is necessary to invoke this method before reusing the Namespace support object for a new session.

Note that implementations of this method need to ensure that the declaration of the prefixes "xmlns" and "xml" are available.

See Also
com.sun.org.apache.xerces.internal.xni.NamespaceContext#reset()
com.sun.org.apache.xerces.internal.util back to summary

protected final Class NamespaceSupport.IteratorPrefixes

extends Object
implements Iterator<String>
Class Inheritance
  • java.lang.Object
  • com.sun.org.apache.xerces.internal.util.NamespaceSupport.IteratorPrefixes
All Implemented Interfaces
java.util.Iterator

Field Summary

Modifier and TypeField and Description
private int
private String[]
private int

Constructor Summary

AccessConstructor and Description
public
IteratorPrefixes(String[] prefixes, int size)

Constructor for Prefixes.

Method Summary

Modifier and TypeMethod and Description
public boolean
hasNext()

Implements java.util.Iterator.hasNext.

Returns true if the iteration has more elements.

public String
next()

Implements java.util.Iterator.next.

Returns the next element in the iteration.

public void
remove()

Overrides default java.util.Iterator.remove.

Removes from the underlying collection the last element returned by this iterator (optional operation).

public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

counterback to summary
private int counter
prefixesback to summary
private String[] prefixes
sizeback to summary
private int size

Constructor Detail

IteratorPrefixesback to summary
public IteratorPrefixes(String[] prefixes, int size)

Constructor for Prefixes.

Method Detail

hasNextback to summary
public boolean hasNext()

Implements java.util.Iterator.hasNext.

Doc from java.util.Iterator.hasNext.

Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)

Returns:boolean

true if the iteration has more elements

See Also
java.util.Enumeration#hasMoreElements()
nextback to summary
public String next()

Implements java.util.Iterator.next.

Doc from java.util.Iterator.next.

Returns the next element in the iteration.

Returns:String

the next element in the iteration

See Also
java.util.Enumeration#nextElement()
removeback to summary
public void remove()

Overrides default java.util.Iterator.remove.

Doc from java.util.Iterator.remove.

Removes from the underlying collection the last element returned by this iterator (optional operation). This method can be called only once per call to next.

The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method, unless an overriding class has specified a concurrent modification policy.

The behavior of an iterator is unspecified if this method is called after a call to the forEachRemaining method.

toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

com.sun.org.apache.xerces.internal.util back to summary

protected final Class NamespaceSupport.Prefixes

extends Object
implements Enumeration<String>
Class Inheritance
  • java.lang.Object
  • com.sun.org.apache.xerces.internal.util.NamespaceSupport.Prefixes
All Implemented Interfaces
java.util.Enumeration

Field Summary

Modifier and TypeField and Description
private int
private String[]
private int

Constructor Summary

AccessConstructor and Description
public
Prefixes(String[] prefixes, int size)

Constructor for Prefixes.

Method Summary

Modifier and TypeMethod and Description
public boolean
hasMoreElements()

Implements java.util.Enumeration.hasMoreElements.

Tests if this enumeration contains more elements.

public String
nextElement()

Implements java.util.Enumeration.nextElement.

Returns the next element of this enumeration if this enumeration object has at least one more element to provide.

public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

counterback to summary
private int counter
prefixesback to summary
private String[] prefixes
sizeback to summary
private int size

Constructor Detail

Prefixesback to summary
public Prefixes(String[] prefixes, int size)

Constructor for Prefixes.

Method Detail

hasMoreElementsback to summary
public boolean hasMoreElements()

Implements java.util.Enumeration.hasMoreElements.

Doc from java.util.Enumeration.hasMoreElements.

Tests if this enumeration contains more elements.

Returns:boolean

true if and only if this enumeration object contains at least one more element to provide; false otherwise.

See Also
java.util.Enumeration#hasMoreElements()
nextElementback to summary
public String nextElement()

Implements java.util.Enumeration.nextElement.

Doc from java.util.Enumeration.nextElement.

Returns the next element of this enumeration if this enumeration object has at least one more element to provide.

Returns:String

the next element of this enumeration.

See Also
java.util.Enumeration#nextElement()
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object