Subversion Repositories ES

Rev

View as "text/plain" | Blame | Last modification | View Log | RSS feed

1
package de.pointedears.converter.helpers;

import java.util.HashMap;
import java.util.Iterator;

import javax.xml.XMLConstants;
import javax.xml.namespace.NamespaceContext;

/**
 * @author pelinux
 *
 */

public final class ConverterNamespaceContext implements NamespaceContext
{
  private final HashMap<String, String> namespaces =
    new HashMap<String, String>();

  public void add(String prefix, String uri)
  {
    this.namespaces.put(prefix, uri);
  }

  @Override
  public Iterator getPrefixes(String namespaceURI)
  {
    throw new UnsupportedOperationException();
  }

  @Override
  public String getPrefix(String namespaceURI)
  {
    throw new UnsupportedOperationException();
  }

  @Override
  public String getNamespaceURI(String prefix)
  {
    if (prefix == null)
    {
      throw new NullPointerException("Null prefix");
    }
    else
    {
      if ("xml".equals(prefix))
      {
        return XMLConstants.XML_NS_URI;
      }

      String storedPrefix = this.namespaces.get(prefix);
      if (storedPrefix != null)
      {
        return storedPrefix;
      }

      return XMLConstants.NULL_NS_URI;
    }
  }
}