X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.api.acr%2Fsrc%2Forg%2Fargeo%2Fapi%2Facr%2FContentSession.java;h=b7d37dc10a876d38a14bad895c9e0e0a4d3280fc;hb=55d1a78150b6be0004f6bcb28703bcdd6daf55a1;hp=215bb9e22f8a70d577673b3601003068364e3273;hpb=7d2a002f5dcfe8a8c7b29803b70d4b1aff265ed1;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.api.acr/src/org/argeo/api/acr/ContentSession.java b/org.argeo.api.acr/src/org/argeo/api/acr/ContentSession.java index 215bb9e22..b7d37dc10 100644 --- a/org.argeo.api.acr/src/org/argeo/api/acr/ContentSession.java +++ b/org.argeo.api.acr/src/org/argeo/api/acr/ContentSession.java @@ -1,12 +1,11 @@ package org.argeo.api.acr; import java.util.Locale; -import java.util.Objects; +import java.util.concurrent.CompletionStage; +import java.util.function.Consumer; import javax.security.auth.Subject; -import javax.xml.XMLConstants; import javax.xml.namespace.NamespaceContext; -import javax.xml.namespace.QName; public interface ContentSession extends NamespaceContext { Subject getSubject(); @@ -14,36 +13,8 @@ public interface ContentSession extends NamespaceContext { Locale getLocale(); Content get(String path); + + boolean exists(String path); - /* - * NAMESPACE CONTEXT - */ - - default ContentName parsePrefixedName(String nameWithPrefix) { - Objects.requireNonNull(nameWithPrefix, "Name cannot be null"); - if (nameWithPrefix.charAt(0) == '{') { - return new ContentName(QName.valueOf(nameWithPrefix), this); - } - int index = nameWithPrefix.indexOf(':'); - if (index < 0) { - return new ContentName(nameWithPrefix); - } - String prefix = nameWithPrefix.substring(0, index); - // TODO deal with empty name? - String localName = nameWithPrefix.substring(index + 1); - String namespaceURI = getNamespaceURI(prefix); - if (XMLConstants.NULL_NS_URI.equals(namespaceURI)) - throw new IllegalStateException("Prefix " + prefix + " is unbound."); - return new ContentName(namespaceURI, localName, prefix); - } - - default String toPrefixedName(QName name) { - if (XMLConstants.NULL_NS_URI.equals(name.getNamespaceURI())) - return name.getLocalPart(); - String prefix = getPrefix(name.getNamespaceURI()); - if (prefix == null) - throw new IllegalStateException("Namespace " + name.getNamespaceURI() + " is unbound."); - return prefix + ":" + name.getLocalPart(); - } - + CompletionStage edit(Consumer work); }