Package org.apache.jackrabbit.commons
Class NamespaceHelper
- java.lang.Object
- 
- org.apache.jackrabbit.commons.NamespaceHelper
 
- 
 public class NamespaceHelper extends Object Helper class for working with JCR namespaces.- Since:
- Jackrabbit JCR Commons 1.5
 
- 
- 
Constructor SummaryConstructors Constructor Description NamespaceHelper(Session session)Creates a namespace helper for the given session.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetJcrName(String name)Replaces the standardjcr,nt, ormixprefix in the given name with the prefix mapped to that namespace in the current session.StringgetJcrName(String uri, String name)Returns the prefixed JCR name for the given namespace URI and local name in the current session.Map<String,String>getNamespaces()Returns a map containing all prefix to namespace URI mappings of the current session.StringgetPrefix(String uri)Returns the prefix mapped to the given namespace URI in the current session, ornullif the namespace does not exist.StringgetURI(String prefix)Returns the namespace URI mapped to the given prefix in the current session, ornullif the namespace does not exist.StringregisterNamespace(String prefix, String uri)Safely registers the given namespace.voidregisterNamespaces(Map<String,String> namespaces)Safely registers all namespaces in the given map from prefixes to namespace URIs.
 
- 
- 
- 
Field Detail- 
JCRpublic static final String JCR Thejcrnamespace URI.- See Also:
- Constant Field Values
 
 - 
NTpublic static final String NT Thentnamespace URI.- See Also:
- Constant Field Values
 
 - 
MIXpublic static final String MIX Themixnamespace URI.- See Also:
- Constant Field Values
 
 
- 
 - 
Constructor Detail- 
NamespaceHelperpublic NamespaceHelper(Session session) Creates a namespace helper for the given session.- Parameters:
- session- current session
 
 
- 
 - 
Method Detail- 
getNamespacespublic Map<String,String> getNamespaces() throws RepositoryException Returns a map containing all prefix to namespace URI mappings of the current session. The returned map is newly allocated and can can be freely modified by the caller.- Returns:
- namespace mappings
- Throws:
- RepositoryException- if the namespaces could not be retrieved
- See Also:
- Session.getNamespacePrefixes()
 
 - 
getPrefixpublic String getPrefix(String uri) throws RepositoryException Returns the prefix mapped to the given namespace URI in the current session, ornullif the namespace does not exist.- Parameters:
- uri- namespace URI
- Returns:
- namespace prefix, or null
- Throws:
- RepositoryException- if the namespace could not be retrieved
- See Also:
- Session.getNamespacePrefix(String)
 
 - 
getURIpublic String getURI(String prefix) throws RepositoryException Returns the namespace URI mapped to the given prefix in the current session, ornullif the namespace does not exist.- Parameters:
- prefix- namespace prefix
- Returns:
- namespace prefix, or null
- Throws:
- RepositoryException- if the namespace could not be retrieved
- See Also:
- Session.getNamespaceURI(String)
 
 - 
getJcrNamepublic String getJcrName(String uri, String name) throws NamespaceException, RepositoryException Returns the prefixed JCR name for the given namespace URI and local name in the current session.- Parameters:
- uri- namespace URI
- name- local name
- Returns:
- prefixed JCR name
- Throws:
- NamespaceException- if the namespace does not exist
- RepositoryException- if the namespace could not be retrieved
 
 - 
getJcrNamepublic String getJcrName(String name) throws IllegalArgumentException, RepositoryException Replaces the standardjcr,nt, ormixprefix in the given name with the prefix mapped to that namespace in the current session.The purpose of this method is to make it easier to write namespace-aware code that uses names in the standard JCR namespaces. For example: node.getProperty(helper.getName("jcr:data"));- Parameters:
- name- prefixed name using the standard JCR prefixes
- Returns:
- prefixed name using the current session namespace mappings
- Throws:
- IllegalArgumentException- if the prefix is unknown
- RepositoryException- if the namespace could not be retrieved
 
 - 
registerNamespacepublic String registerNamespace(String prefix, String uri) throws RepositoryException Safely registers the given namespace. If the namespace already exists, then the prefix mapped to the namespace in the current session is returned. Otherwise the namespace is registered to the namespace registry. If the given prefix is already registered for some other namespace or otherwise invalid, then another prefix is automatically generated. After the namespace has been registered, the prefix mapped to it in the current session is returned.- Parameters:
- prefix- namespace prefix
- uri- namespace URI
- Returns:
- namespace prefix in the current session
- Throws:
- RepositoryException- if the namespace could not be registered
- See Also:
- NamespaceRegistry.registerNamespace(String, String)
 
 - 
registerNamespacespublic void registerNamespaces(Map<String,String> namespaces) throws RepositoryException Safely registers all namespaces in the given map from prefixes to namespace URIs.- Parameters:
- namespaces- namespace mappings
- Throws:
- RepositoryException- if the namespaces could not be registered
 
 
- 
 
-