org.apache.xerces.util

## Class JAXPNamespaceContextWrapper

- java.lang.Object
- - org.apache.xerces.util.JAXPNamespaceContextWrapper

- All Implemented Interfaces:
    org.apache.xerces.xni.NamespaceContext

      public final class JAXPNamespaceContextWrapper
      extends java.lang.Object
      implements org.apache.xerces.xni.NamespaceContext

  A read-only XNI wrapper around a JAXP NamespaceContext.

  Version:
    $Id: JAXPNamespaceContextWrapper.java 694381 2008-09-11 17:43:36Z mrglavas $
  Author:
    Michael Glavassevich, IBM

- - ### Field Summary

    - ### Fields inherited from interface org.apache.xerces.xni.NamespaceContext

      `XML_URI, XMLNS_URI`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JAXPNamespaceContextWrapper(SymbolTable symbolTable)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `declarePrefix(java.lang.String prefix, java.lang.String uri)` Declare a Namespace prefix.
    `java.util.Enumeration` | `getAllPrefixes()` Return an enumeration of all prefixes whose declarations are active in the current context.
    `java.lang.String` | `getDeclaredPrefixAt(int index)` Returns the prefix at the specified index in the current context.
    `int` | `getDeclaredPrefixCount()` Return a count of locally declared prefixes, including the default prefix if bound.
    `java.util.List` | `getDeclaredPrefixes()`
    `javax.xml.namespace.NamespaceContext` | `getNamespaceContext()`
    `java.lang.String` | `getPrefix(java.lang.String uri)` Look up a namespace URI and get one of the mapped prefix.
    `SymbolTable` | `getSymbolTable()`
    `java.lang.String` | `getURI(java.lang.String prefix)` Look up a prefix and get the currently-mapped Namespace URI.
    `void` | `popContext()` Revert to the previous Namespace context.
    `void` | `pushContext()` Start a new Namespace context.
    `void` | `reset()` Reset this Namespace support object for reuse.
    `void` | `setDeclaredPrefixes(java.util.List prefixes)`
    `void` | `setNamespaceContext(javax.xml.namespace.NamespaceContext context)`
    `void` | `setSymbolTable(SymbolTable symbolTable)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JAXPNamespaceContextWrapper

          public JAXPNamespaceContextWrapper(SymbolTable symbolTable)

  - ### Method Detail

    - #### setNamespaceContext

          public void setNamespaceContext(javax.xml.namespace.NamespaceContext context)

    - #### getNamespaceContext

          public javax.xml.namespace.NamespaceContext getNamespaceContext()

    - #### setSymbolTable

          public void setSymbolTable(SymbolTable symbolTable)

    - #### getSymbolTable

          public SymbolTable getSymbolTable()

    - #### setDeclaredPrefixes

          public void setDeclaredPrefixes(java.util.List prefixes)

    - #### getDeclaredPrefixes

          public java.util.List getDeclaredPrefixes()

    - #### getURI

          public java.lang.String getURI(java.lang.String prefix)

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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.

      Specified by:
        `getURI` in interface `org.apache.xerces.xni.NamespaceContext`
      Parameters:
        `prefix` - The prefix to look up.
      Returns:
        The associated Namespace URI, or null if the prefix is undeclared in this context.

    - #### getPrefix

          public java.lang.String getPrefix(java.lang.String uri)

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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).

      Specified by:
        `getPrefix` in interface `org.apache.xerces.xni.NamespaceContext`
      Parameters:
        `uri` - The namespace URI to look up.
      Returns:
        One of the associated prefixes, or null if the uri does not map to any prefix.
      See Also:
        `NamespaceContext.getPrefix(java.lang.String)`

    - #### getAllPrefixes

          public java.util.Enumeration getAllPrefixes()

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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.
      Specified by:
        `getAllPrefixes` in interface `org.apache.xerces.xni.NamespaceContext`
      Returns:
        Enumeration

    - #### pushContext

          public void pushContext()

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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.

      Specified by:
        `pushContext` in interface `org.apache.xerces.xni.NamespaceContext`
      See Also:
        `NamespaceContext.popContext()`

    - #### popContext

          public void popContext()

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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.

      Specified by:
        `popContext` in interface `org.apache.xerces.xni.NamespaceContext`
      See Also:
        `NamespaceContext.pushContext()`

    - #### declarePrefix

          public boolean declarePrefix(java.lang.String prefix,
                              java.lang.String uri)

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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.

      Specified by:
        `declarePrefix` in interface `org.apache.xerces.xni.NamespaceContext`
      Parameters:
        `prefix` - The prefix to declare, or null for the empty string.
        `uri` - The Namespace URI to associate with the prefix.
      Returns:
        true if the prefix was legal, false otherwise
      See Also:
        `NamespaceContext.getURI(java.lang.String)`, `NamespaceContext.getDeclaredPrefixAt(int)`

    - #### getDeclaredPrefixCount

          public int getDeclaredPrefixCount()

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      Return a count of locally declared prefixes, including the default prefix if bound.
      Specified by:
        `getDeclaredPrefixCount` in interface `org.apache.xerces.xni.NamespaceContext`

    - #### getDeclaredPrefixAt

          public java.lang.String getDeclaredPrefixAt(int index)

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      Returns the prefix at the specified index in the current context.
      Specified by:
        `getDeclaredPrefixAt` in interface `org.apache.xerces.xni.NamespaceContext`

    - #### reset

          public void reset()

      Description copied from interface: `org.apache.xerces.xni.NamespaceContext`
      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.

      Specified by:
        `reset` in interface `org.apache.xerces.xni.NamespaceContext`

Copyright © 1999-2022 The Apache Software Foundation. All Rights Reserved.