Class Namespace

java.lang.Object
org.opensextant.giscore.Namespace

public final class Namespace extends Object
An XML namespace representation, as well as a factory for creating XML namespace objects. Namespaces are not Serializable, however objects that use namespaces have special logic to handle serialization manually. These classes call the getNamespace() method on deserialization to ensure there is one unique Namespace object for any unique prefix/uri pair.
Version:
$Revision: 1.43 $, $Date: 2007/11/10 05:28:59 $
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Namespace
    Define a Namespace for when not in a namespace
    static final Namespace
    Define a Namespace for the standard xml prefix.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    This tests for equality - Two Namespaces are equal if and only if their URIs are byte-for-byte equals.
    static @NotNull Namespace
    This will retrieve (if in existence) or create (if not) a Namespace for the supplied URI, and make it usable as a default namespace, as no prefix is supplied.
    static @NotNull Namespace
    getNamespace(String prefix, String uri)
    This will retrieve (if in existence) or create (if not) a Namespace for the supplied prefix and URI.
    @NotNull String
    This returns the prefix mapped to this Namespace.
    @NotNull String
    This returns the namespace URI for this Namespace.
    int
    This returns a probably unique hash code for the Namespace.
    This returns a String representation of this Namespace, suitable for use in debugging.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • NO_NAMESPACE

      public static final Namespace NO_NAMESPACE
      Define a Namespace for when not in a namespace
    • XML_NAMESPACE

      public static final Namespace XML_NAMESPACE
      Define a Namespace for the standard xml prefix.
  • Method Details

    • getNamespace

      @NotNull public static @NotNull Namespace getNamespace(String prefix, String uri)
      This will retrieve (if in existence) or create (if not) a Namespace for the supplied prefix and URI.
      Parameters:
      prefix - String prefix to map to Namespace.
      uri - String URI of new Namespace.
      Returns:
      Namespace - ready to use namespace.
      Throws:
      IllegalArgumentException - if the given prefix and uri make up an illegal namespace name.
    • getNamespace

      @NotNull public static @NotNull Namespace getNamespace(String uri)
      This will retrieve (if in existence) or create (if not) a Namespace for the supplied URI, and make it usable as a default namespace, as no prefix is supplied.
      Parameters:
      uri - String URI of new Namespace.
      Returns:
      Namespace - ready to use namespace.
    • getPrefix

      @NotNull public @NotNull String getPrefix()
      This returns the prefix mapped to this Namespace.
      Returns:
      String - prefix for this Namespace.
    • getURI

      @NotNull public @NotNull String getURI()
      This returns the namespace URI for this Namespace.
      Returns:
      String - URI for this Namespace.
    • equals

      public boolean equals(Object ob)
      This tests for equality - Two Namespaces are equal if and only if their URIs are byte-for-byte equals.
      Overrides:
      equals in class Object
      Parameters:
      ob - Object to compare to this Namespace.
      Returns:
      boolean - whether the supplied object is equal to this Namespace.
    • toString

      public String toString()
      This returns a String representation of this Namespace, suitable for use in debugging.
      Overrides:
      toString in class Object
      Returns:
      String - information about this instance.
    • hashCode

      public int hashCode()
      This returns a probably unique hash code for the Namespace. If two namespaces have the same URI, they are equal and have the same hash code, even if they have different prefixes.
      Overrides:
      hashCode in class Object
      Returns:
      int - hash code for this Namespace.