Class ReadOnlyNamespaceContextBase

  • All Implemented Interfaces:
    javax.xml.namespace.NamespaceContext

    public class ReadOnlyNamespaceContextBase
    extends java.lang.Object
    implements javax.xml.namespace.NamespaceContext

    This class provides a ReadOnlyNamespace context that takes a snapshot of the current namespaces in scope

    • Constructor Summary

      Constructors 
      Constructor Description
      ReadOnlyNamespaceContextBase​(java.lang.String[] prefixArray, java.lang.String[] uriArray, int size)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getDefaultNameSpace()  
      java.lang.String getNamespaceURI​(java.lang.String prefix)
      Get Namespace URI bound to a prefix in the current scope.
      java.lang.String getPrefix​(java.lang.String uri)
      Get prefix bound to Namespace URI in the current scope.
      java.util.Iterator getPrefixes​(java.lang.String uri)
      Get all prefixes bound to a Namespace URI in the current scope.
      static void main​(java.lang.String[] args)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • ReadOnlyNamespaceContextBase

        public ReadOnlyNamespaceContextBase​(java.lang.String[] prefixArray,
                                            java.lang.String[] uriArray,
                                            int size)
    • Method Detail

      • getNamespaceURI

        public java.lang.String getNamespaceURI​(java.lang.String prefix)
        Description copied from interface: javax.xml.namespace.NamespaceContext
        Get Namespace URI bound to a prefix in the current scope.

        When requesting a Namespace URI by prefix, the following table describes the returned Namespace URI value for all possible prefix values:

        getNamespaceURI(prefix) return value for specified prefixes
        prefix parameter Namespace URI return value
        DEFAULT_NS_PREFIX ("") default Namespace URI in the current scope or null when there is no default Namespace URI in the current scope
        bound prefix Namespace URI bound to prefix in current scope
        unbound prefix null
        XMLConstants.XML_NS_PREFIX ("xml") XMLConstants.XML_NS_URI ("http://www.w3.org/XML/1998/namespace")
        XMLConstants.XMLNS_ATTRIBUTE ("xmlns") XMLConstants.XMLNS_ATTRIBUTE_NS_URI ("http://www.w3.org/2000/xmlns/")
        null IllegalArgumentException is thrown
        Specified by:
        getNamespaceURI in interface javax.xml.namespace.NamespaceContext
        Parameters:
        prefix - prefix to look up
        Returns:
        Namespace URI bound to prefix in the current scope
      • getPrefix

        public java.lang.String getPrefix​(java.lang.String uri)
        Description copied from interface: javax.xml.namespace.NamespaceContext
        Get prefix bound to Namespace URI in the current scope.

        To get all prefixes bound to a Namespace URI in the current scope, use NamespaceContext.getPrefixes(String namespaceURI).

        When requesting a prefix by Namespace URI, the following table describes the returned prefix value for all Namespace URI values:

        getPrefix(namespaceURI) return value for specified Namespace URIs
        Namespace URI parameter prefix value returned
        <default Namespace URI> XMLConstants.DEFAULT_NS_PREFIX ("")
        bound Namespace URI prefix bound to Namespace URI in the current scope, if multiple prefixes are bound to the Namespace URI in the current scope, a single arbitrary prefix, whose choice is implementation dependent, is returned
        unbound Namespace URI null
        XMLConstants.XML_NS_URI ("http://www.w3.org/XML/1998/namespace") XMLConstants.XML_NS_PREFIX ("xml")
        XMLConstants.XMLNS_ATTRIBUTE_NS_URI ("http://www.w3.org/2000/xmlns/") XMLConstants.XMLNS_ATTRIBUTE ("xmlns")
        "" or null IllegalArgumentException is thrown
        Specified by:
        getPrefix in interface javax.xml.namespace.NamespaceContext
        Parameters:
        uri - URI of Namespace to lookup
        Returns:
        prefix bound to Namespace URI in current context
      • getDefaultNameSpace

        public java.lang.String getDefaultNameSpace()
      • getPrefixes

        public java.util.Iterator getPrefixes​(java.lang.String uri)
        Description copied from interface: javax.xml.namespace.NamespaceContext
        Get all prefixes bound to a Namespace URI in the current scope.

        The returned Iterator is not modifiable. e.g. the remove() method will throw NoSuchMethodException.

        Prefixes are returned in an arbitrary, implementation dependent, order.

        When requesting prefixes by Namespace URI, the following table describes the returned prefixes value for all Namespace URI values:

        getPrefixes(namespaceURI) return value for specified Namespace URIs
        Namespace URI parameter prefixes value returned
        bound Namespace URI, including the <default Namespace URI> Iterator over prefixes bound to Namespace URI in the current scope in an arbitrary, implementation dependent, order
        unbound Namespace URI empty Iterator
        XMLConstants.XML_NS_URI ("http://www.w3.org/XML/1998/namespace") Iterator with one element set to XMLConstants.XML_NS_PREFIX ("xml")
        XMLConstants.XMLNS_ATTRIBUTE_NS_URI ("http://www.w3.org/2000/xmlns/") Iterator with one element set to XMLConstants.XMLNS_ATTRIBUTE ("xmlns")
        "" or null IllegalArgumentException is thrown
        Specified by:
        getPrefixes in interface javax.xml.namespace.NamespaceContext
        Parameters:
        uri - URI of Namespace to lookup
        Returns:
        Iterator for all prefixes bound to the Namespace URI in the current scope
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • main

        public static void main​(java.lang.String[] args)
                         throws java.lang.Exception
        Throws:
        java.lang.Exception