Class CodedName

  • All Implemented Interfaces:
    NodeName

    public class CodedName
    extends java.lang.Object
    implements NodeName
    An implementation of NodeName that encapsulates an integer namecode and a reference to the NamePool from which it was allocated.
    • Constructor Summary

      Constructors 
      Constructor Description
      CodedName​(int nameCode, NamePool pool)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int allocateNameCode​(NamePool namePool)
      Get the nameCode of this name, allocating a new code from the namepool if necessary
      boolean equals​(java.lang.Object obj)
      Indicates whether some other object is "equal to" this one.
      java.lang.String getDisplayName()
      Get the display name, that is the lexical QName in the form [prefix:]local-part
      int getFingerprint()
      Get the fingerprint of this name if known.
      java.lang.String getLocalPart()
      Get the local part of the QName
      int getNameCode()
      Get the nameCode of this name if known.
      NamespaceBinding getNamespaceBinding()
      Get a NamespaceBinding whose (prefix, uri) pair are the prefix and URI of this node name
      java.lang.String getPrefix()
      Get the prefix of the QName.
      StructuredQName getStructuredQName()
      Get the name in the form of a StructuredQName
      java.lang.String getURI()
      Get the namespace URI of the QName.
      boolean hasFingerprint()
      Ask whether this node name representation has a known namecode and fingerprint
      int hashCode()
      Returns a hash code value for the object.
      boolean isInNamespace​(java.lang.String ns)
      Test whether this name is in a given namespace
      boolean isInSameNamespace​(NodeName other)
      Test whether this name is in the same namespace as another name
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • CodedName

        public CodedName​(int nameCode,
                         NamePool pool)
    • Method Detail

      • getPrefix

        public java.lang.String getPrefix()
        Get the prefix of the QName.
        Specified by:
        getPrefix in interface NodeName
        Returns:
        the prefix. Returns the empty string if the name is unprefixed.
      • getURI

        public java.lang.String getURI()
        Get the namespace URI of the QName.
        Specified by:
        getURI in interface NodeName
        Returns:
        the URI. Returns the empty string to represent the no-namespace
      • getLocalPart

        public java.lang.String getLocalPart()
        Get the local part of the QName
        Specified by:
        getLocalPart in interface NodeName
        Returns:
        the local part of the QName
      • getDisplayName

        public java.lang.String getDisplayName()
        Get the display name, that is the lexical QName in the form [prefix:]local-part
        Specified by:
        getDisplayName in interface NodeName
        Returns:
        the lexical QName
      • getStructuredQName

        public StructuredQName getStructuredQName()
        Get the name in the form of a StructuredQName
        Specified by:
        getStructuredQName in interface NodeName
        Returns:
        the name in the form of a StructuredQName
      • isInSameNamespace

        public boolean isInSameNamespace​(NodeName other)
        Test whether this name is in the same namespace as another name
        Specified by:
        isInSameNamespace in interface NodeName
        Parameters:
        other - the other name
        Returns:
        true if the two names are in the same namespace
      • isInNamespace

        public boolean isInNamespace​(java.lang.String ns)
        Test whether this name is in a given namespace
        Specified by:
        isInNamespace in interface NodeName
        Parameters:
        ns - the namespace to be tested against
        Returns:
        true if the name is in the specified namespace
      • hasFingerprint

        public boolean hasFingerprint()
        Ask whether this node name representation has a known namecode and fingerprint
        Specified by:
        hasFingerprint in interface NodeName
        Returns:
        true if the methods getFingerprint() and getNameCode() will return a result other than -1
      • getFingerprint

        public int getFingerprint()
        Get the fingerprint of this name if known. This method should not to any work to allocate a fingerprint if none is already available
        Specified by:
        getFingerprint in interface NodeName
        Returns:
        the fingerprint if known; otherwise -1
      • getNameCode

        public int getNameCode()
        Get the nameCode of this name if known. This method should not to any work to allocate a nameCode if none is already available
        Specified by:
        getNameCode in interface NodeName
        Returns:
        the nameCode if known; otherwise -1
      • allocateNameCode

        public int allocateNameCode​(NamePool namePool)
        Get the nameCode of this name, allocating a new code from the namepool if necessary
        Specified by:
        allocateNameCode in interface NodeName
        Parameters:
        namePool - the NamePool used to allocate the name
        Returns:
        a nameCode for this name, newly allocated if necessary
      • hashCode

        public int hashCode()
        Returns a hash code value for the object.
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Indicates whether some other object is "equal to" this one.
        Overrides:
        equals in class java.lang.Object