1 package org
.argeo
.cms
.jcr
.acr
;
3 import java
.util
.Arrays
;
4 import java
.util
.Iterator
;
6 import javax
.jcr
.RepositoryException
;
7 import javax
.jcr
.Session
;
8 import javax
.xml
.namespace
.NamespaceContext
;
10 import org
.argeo
.jcr
.JcrException
;
12 /** A {@link NamespaceContext} based on a JCR {@link Session}. */
13 public class JcrSessionNamespaceContext
implements NamespaceContext
{
14 private final Session session
;
16 public JcrSessionNamespaceContext(Session session
) {
17 this.session
= session
;
21 public String
getNamespaceURI(String prefix
) {
23 return session
.getNamespaceURI(prefix
);
24 } catch (RepositoryException e
) {
25 throw new JcrException(e
);
30 public String
getPrefix(String namespaceURI
) {
32 return session
.getNamespacePrefix(namespaceURI
);
33 } catch (RepositoryException e
) {
34 throw new JcrException(e
);
39 public Iterator
<String
> getPrefixes(String namespaceURI
) {
41 return Arrays
.asList(session
.getNamespacePrefix(namespaceURI
)).iterator();
42 } catch (RepositoryException e
) {
43 throw new JcrException(e
);