All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.axiom.om.OMNamespace Maven / Gradle / Ivy

There is a newer version: 5.0.22
Show newest version
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

package org.apache.axiom.om;

/**
 * A namespace binding specifying a namespace prefix and a namespace URI.
 * 

* Implementations of this interface must be immutable or behave as if they were immutable, * i.e. {@link #getPrefix()} and {@link #getNamespaceURI()} must always return the same * values when invoked on the same instance. *

* Implementations must override {@link Object#equals(Object)} and {@link Object#hashCode()}. Two * {@link OMNamespace} instances are considered equal if their namespace URIs and prefixes are * equal. */ public interface OMNamespace { /** * Method equals. * * @param uri * @param prefix * @return Returns boolean. */ boolean equals(String uri, String prefix); /** * Get the namespace prefix. This method may return null for instances returned by * {@link OMFactory#createOMNamespace(String, String)}. This indicates that Axiom should * generate a namespace prefix when this instance is passed to one of the factory methods in * {@link OMFactory}. In all other cases the return value is not null. In particular, an empty * string indicates that no prefix is used, i.e. that the namespace is used as default * namespace. * * @return the namespace prefix */ String getPrefix(); /** * Method getName. * * @return Returns String. * @deprecated This method is deprecated. Please use getNamespaceURI() method instead. */ String getName(); /** * Get the namespace URI. This method never returns null. It may return an empty * string if this instance represents a namespace declaration of type {@code xmlns=""}. This * may be the case for instances returned by {@link OMElement#getAllDeclaredNamespaces()}. On * the other hand, methods such as {@link OMNamedInformationItem#getNamespace()} will return * null for information items that have no namespace. In that case the returned * string is never empty. * * @return the namespace URI */ String getNamespaceURI(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy