com.google.api.client.xml
Class XmlNamespaceDictionary

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

public final class XmlNamespaceDictionary
extends Object

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 Summary
XmlNamespaceDictionary()
           
 
Method Summary
 String getAliasForUri(String uri)
          Returns the namespace alias (or "" for the default namespace) for the given namespace URI.
 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.
 String getUriForAlias(String alias)
          Returns the namespace URI for the given namespace alias (or "" for the default namespace).
 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).
 void serialize(org.xmlpull.v1.XmlSerializer serializer, String elementName, Object element)
          Shows a debug string representation of an element data object of key/value pairs.
 void serialize(org.xmlpull.v1.XmlSerializer serializer, String elementNamespaceUri, String elementLocalName, Object element)
          Shows a debug string representation of an element data object of key/value pairs.
 XmlNamespaceDictionary set(String alias, String uri)
          Adds a namespace of the given alias and URI.
 String toStringOf(String elementName, Object element)
          Shows a debug string representation of an element data object of key/value pairs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XmlNamespaceDictionary

public XmlNamespaceDictionary()
Method Detail

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:
element - element data object (GenericXml, Map, or any object with public fields)
elementName - optional XML element local name prefixed by its namespace alias -- for example "atom:entry" -- or null to make up something

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:
element - element data object (GenericXml, Map, or any object with public fields)
elementNamespaceUri - XML namespace URI or null for no namespace
elementLocalName - XML local name
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:
element - element data object (GenericXml, Map, or any object with public fields)
elementName - XML element local name prefixed by its namespace alias
Throws:
IOException - I/O exception


Copyright © 2011-2012 Google. All Rights Reserved.