Package org.dom4j

Class Namespace

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, Node
    Direct Known Subclasses:
    DefaultNamespace

    public class Namespace
    extends AbstractNode
    Namespace is a Flyweight Namespace that can be shared amongst nodes.
    See Also:
    Serialized Form
    • Field Detail

      • CACHE

        protected static final NamespaceCache CACHE
        Cache of Namespace instances
      • XML_NAMESPACE

        public static final Namespace XML_NAMESPACE
        XML Namespace
      • NO_NAMESPACE

        public static final Namespace NO_NAMESPACE
        No Namespace present
    • Constructor Detail

      • Namespace

        public Namespace​(java.lang.String prefix,
                         java.lang.String uri)
        DOCUMENT ME!
        Parameters:
        prefix - is the prefix for this namespace
        uri - is the URI for this namespace
    • Method Detail

      • get

        public static Namespace get​(java.lang.String prefix,
                                    java.lang.String uri)
        A helper method to return the Namespace instance for the given prefix and URI
        Parameters:
        prefix - DOCUMENT ME!
        uri - DOCUMENT ME!
        Returns:
        an interned Namespace object
      • get

        public static Namespace get​(java.lang.String uri)
        A helper method to return the Namespace instance for no prefix and the URI
        Parameters:
        uri - DOCUMENT ME!
        Returns:
        an interned Namespace object
      • getNodeType

        public short getNodeType()
        Description copied from interface: Node
        Returns the code according to the type of node. This makes processing nodes polymorphically much easier as the switch statement can be used instead of multiple if (instanceof) statements.
        Specified by:
        getNodeType in interface Node
        Overrides:
        getNodeType in class AbstractNode
        Returns:
        a W3C DOM complient code for the node type such as ELEMENT_NODE or ATTRIBUTE_NODE
      • hashCode

        public int hashCode()
        DOCUMENT ME!
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        the hash code based on the qualified name and the URI of the namespace.
      • createHashCode

        protected int createHashCode()
        Factory method to create the hashcode allowing derived classes to change the behaviour
        Returns:
        DOCUMENT ME!
      • equals

        public boolean equals​(java.lang.Object object)
        Checks whether this Namespace equals the given Namespace. Two Namespaces are equals if their URI and prefix are equal.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        object - DOCUMENT ME!
        Returns:
        DOCUMENT ME!
      • getText

        public java.lang.String getText()
        Description copied from interface: Node

        Returns the text of this node.

        Specified by:
        getText in interface Node
        Overrides:
        getText in class AbstractNode
        Returns:
        the text for this node.
      • getStringValue

        public java.lang.String getStringValue()
        Description copied from interface: Node
        Returns the XPath string-value of this node. The behaviour of this method is defined in the XPath specification .
        Specified by:
        getStringValue in interface Node
        Overrides:
        getStringValue in class AbstractNode
        Returns:
        the text from all the child Text and Element nodes appended together.
      • getPrefix

        public java.lang.String getPrefix()
        DOCUMENT ME!
        Returns:
        the prefix for this Namespace.
      • getURI

        public java.lang.String getURI()
        DOCUMENT ME!
        Returns:
        the URI for this Namespace.
      • getXPathNameStep

        public java.lang.String getXPathNameStep()
      • getPath

        public java.lang.String getPath​(Element context)
        Description copied from interface: Node
        Returns the relative XPath expression which will return a node set containing the given node such as a/b/@c. No indexing will be used to restrict the path if multiple elements with the same name occur on the path.
        Parameters:
        context - is the parent context from which the relative path should start. If the context is null or the context is not an ancestor of this node then the path will be absolute and start from the document and so begin with the '/' character.
        Returns:
        the XPath expression relative to the given context which will return a nodeset containing at least this node.
      • getUniquePath

        public java.lang.String getUniquePath​(Element context)
        Description copied from interface: Node

        Returns the relative unique XPath expression from the given context which will return a nodeset of one node which is the current node. This method will use the XPath index operator to restrict the path if multiple elements with the same name occur on the path.

        Parameters:
        context - is the parent context from which the path should start. If the context is null or the context is not an ancestor of this node then the path will start from the document and so begin with the '/' character.
        Returns:
        the XPath expression relative to the given context which will return a nodeset containing just this node.
      • toString

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

        public java.lang.String asXML()
        Description copied from interface: Node

        asXML returns the textual XML representation of this node.

        Returns:
        the XML representation of this node
      • accept

        public void accept​(Visitor visitor)
        Description copied from interface: Node

        accept is the method used in the Visitor Pattern.

        Parameters:
        visitor - is the visitor in the Visitor Pattern