Class XmlNamespaceDictionary

java.lang.Object
com.google.api.client.xml.XmlNamespaceDictionary

@Beta public final class XmlNamespaceDictionary extends Object
Beta
Thread-safe XML namespace dictionary that provides a one-to-one map of namespace alias to URI.

Implementation is thread-safe. For maximum efficiency, applications should use a single globally-shared instance of the XML namespace dictionary.

A namespace alias is uniquely mapped to a single namespace URI, and a namespace URI is uniquely mapped to a single namespace alias. In other words, it is not possible to have duplicates.

Sample usage:

static final XmlNamespaceDictionary DICTIONARY = new XmlNamespaceDictionary()
.set("", "http://www.w3.org/2005/Atom")
.set("activity", "http://activitystrea.ms/spec/1.0/")
.set("georss", "http://www.georss.org/georss")
.set("media", "http://search.yahoo.com/mrss/")
.set("thr", "http://purl.org/syndication/thread/1.0");
Since:
1.0
Author:
Yaniv Inbar
  • Constructor Details

    • XmlNamespaceDictionary

      public XmlNamespaceDictionary()
  • Method Details

    • getAliasForUri

      public String getAliasForUri(String uri)
      Returns the namespace alias (or "" for the default namespace) for the given namespace URI.
      Parameters:
      uri - namespace URI
      Since:
      1.3
    • getUriForAlias

      public String getUriForAlias(String alias)
      Returns the namespace URI for the given namespace alias (or "" for the default namespace).
      Parameters:
      alias - namespace alias (or "" for the default namespace)
      Since:
      1.3
    • getAliasToUriMap

      public Map<String,String> getAliasToUriMap()
      Returns an unmodified set of map entries for the map from namespace alias (or "" for the default namespace) to namespace URI.
      Since:
      1.3
    • getUriToAliasMap

      public Map<String,String> getUriToAliasMap()
      Returns an unmodified set of map entries for the map from namespace URI to namespace alias (or "" for the default namespace).
      Since:
      1.3
    • set

      public XmlNamespaceDictionary set(String alias, String uri)
      Adds a namespace of the given alias and URI.

      If the uri is null, the namespace alias will be removed. Similarly, if the alias is null, the namespace URI will be removed. Otherwise, if the alias is already mapped to a different URI, it will be remapped to the new URI. Similarly, if a URI is already mapped to a different alias, it will be remapped to the new alias.

      Parameters:
      alias - alias or null to remove the namespace URI
      uri - namespace URI or null to remove the namespace alias
      Returns:
      this namespace dictionary
      Since:
      1.3
    • toStringOf

      public String toStringOf(String elementName, Object element)
      Shows a debug string representation of an element data object of key/value pairs.
      Parameters:
      elementName - optional XML element local name prefixed by its namespace alias -- for example "atom:entry" -- or null to make up something
      element - element data object (GenericXml, Map, or any object with public fields)
    • serialize

      public void serialize(org.xmlpull.v1.XmlSerializer serializer, String elementNamespaceUri, String elementLocalName, Object element) throws IOException
      Shows a debug string representation of an element data object of key/value pairs.
      Parameters:
      elementNamespaceUri - XML namespace URI or null for no namespace
      elementLocalName - XML local name
      element - element data object (GenericXml, Map, or any object with public fields)
      Throws:
      IOException - I/O exception
    • serialize

      public void serialize(org.xmlpull.v1.XmlSerializer serializer, String elementName, Object element) throws IOException
      Shows a debug string representation of an element data object of key/value pairs.
      Parameters:
      elementName - XML element local name prefixed by its namespace alias
      element - element data object (GenericXml, Map, or any object with public fields)
      Throws:
      IOException - I/O exception