Subversion Repositories ES

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
16 PointedEar 1
package de.pointedears.converter.helpers;
2
 
3
import java.util.HashMap;
4
import java.util.Iterator;
5
 
6
import javax.xml.XMLConstants;
7
import javax.xml.namespace.NamespaceContext;
8
 
9
/**
10
 * @author pelinux
11
 *
12
 */
13
public final class ConverterNamespaceContext implements NamespaceContext
14
{
15
  private final HashMap<String, String> namespaces =
16
    new HashMap<String, String>();
17
 
18
  public void add(String prefix, String uri)
19
  {
20
    this.namespaces.put(prefix, uri);
21
  }
22
 
23
  @Override
24
  public Iterator getPrefixes(String namespaceURI)
25
  {
26
    throw new UnsupportedOperationException();
27
  }
28
 
29
  @Override
30
  public String getPrefix(String namespaceURI)
31
  {
32
    throw new UnsupportedOperationException();
33
  }
34
 
35
  @Override
36
  public String getNamespaceURI(String prefix)
37
  {
38
    if (prefix == null)
39
    {
40
      throw new NullPointerException("Null prefix");
41
    }
42
    else
43
    {
44
      if ("xml".equals(prefix))
45
      {
46
        return XMLConstants.XML_NS_URI;
47
      }
48
 
49
      String storedPrefix = this.namespaces.get(prefix);
50
      if (storedPrefix != null)
51
      {
52
        return storedPrefix;
53
      }
54
 
55
      return XMLConstants.NULL_NS_URI;
56
    }
57
  }
58
}