ingo@113: /* ingo@113: * Copyright (c) 2010 by Intevation GmbH ingo@113: * ingo@113: * This program is free software under the LGPL (>=v2.1) ingo@113: * Read the file LGPL.txt coming with the software for details ingo@113: * or visit http://www.gnu.org/licenses/ if it does not exist. ingo@113: */ ingo@113: teichmann@475: package org.dive4elements.artifacts.common; ingo@113: ingo@113: import java.util.Iterator; ingo@113: ingo@113: import javax.xml.XMLConstants; ingo@113: ingo@113: import javax.xml.namespace.NamespaceContext; ingo@113: ingo@113: /** ingo@113: * The namespace used in artifact documents. ingo@113: * @author Sascha L. Teichmann ingo@113: */ ingo@113: public class ArtifactNamespaceContext ingo@113: implements NamespaceContext ingo@113: { ingo@113: /** ingo@113: * The URI of the namespace of the artifacts. ingo@113: */ ingo@113: public final static String NAMESPACE_URI = ingo@113: "http://www.intevation.de/2009/artifacts"; ingo@113: ingo@113: /** ingo@113: * The XML prefix for the artifacts namespace. ingo@113: */ ingo@113: public final static String NAMESPACE_PREFIX = "art"; ingo@113: ingo@113: /** ingo@113: * Final instance to be easily used to avoid creation ingo@113: * of instances. ingo@113: */ ingo@113: public static final ArtifactNamespaceContext INSTANCE = ingo@113: new ArtifactNamespaceContext(); ingo@113: ingo@113: /** ingo@113: * The default constructor. ingo@113: */ ingo@113: public ArtifactNamespaceContext() { ingo@113: } ingo@113: ingo@113: /** ingo@113: * @see javax.xml.namespace.NamespaceContext#getNamespaceURI(String) ingo@113: * @param prefix The prefix ingo@113: * @return The corresponing URI ingo@113: */ ingo@113: public String getNamespaceURI(String prefix) { ingo@113: ingo@113: if (prefix == null) { ingo@113: throw new NullPointerException("Null prefix"); ingo@113: } ingo@113: ingo@113: if (NAMESPACE_PREFIX.equals(prefix)) { ingo@113: return NAMESPACE_URI; ingo@113: } ingo@113: ingo@113: if ("xml".equals(prefix)) { ingo@113: return XMLConstants.XML_NS_URI; ingo@113: } ingo@113: ingo@113: return XMLConstants.NULL_NS_URI; ingo@113: } ingo@113: ingo@113: /** ingo@113: * @see javax.xml.namespace.NamespaceContext#getPrefix(String) ingo@113: * @param uri The URI ingo@113: * @return nothing. ingo@113: * @throws java.lang.UnsupportedOperationException ingo@113: */ ingo@113: public String getPrefix(String uri) { ingo@113: throw new UnsupportedOperationException(); ingo@113: } ingo@113: ingo@113: /** ingo@113: * @see javax.xml.namespace.NamespaceContext#getPrefixes(java.lang.String) ingo@113: * @param uri The URI ingo@113: * @return nothing ingo@113: * @throws java.lang.UnsupportedOperationException ingo@113: */ ingo@113: public Iterator getPrefixes(String uri) { ingo@113: throw new UnsupportedOperationException(); ingo@113: } ingo@113: } ingo@113: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :