X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=org.argeo.api.acr%2Fsrc%2Forg%2Fargeo%2Fapi%2Facr%2Fspi%2FContentProvider.java;h=25b9be5c2081b924b7f08a0d4f0ce72b8a5e1559;hb=6d463a65d04d641c94a493579a75f8015c82097d;hp=d83cf49c95e27e8b828924a1f71547c235f16f83;hpb=7d2a002f5dcfe8a8c7b29803b70d4b1aff265ed1;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.api.acr/src/org/argeo/api/acr/spi/ContentProvider.java b/org.argeo.api.acr/src/org/argeo/api/acr/spi/ContentProvider.java index d83cf49c9..25b9be5c2 100644 --- a/org.argeo.api.acr/src/org/argeo/api/acr/spi/ContentProvider.java +++ b/org.argeo.api.acr/src/org/argeo/api/acr/spi/ContentProvider.java @@ -1,9 +1,40 @@ package org.argeo.api.acr.spi; +import java.util.Iterator; +import java.util.Spliterator; + +import javax.xml.namespace.NamespaceContext; + import org.argeo.api.acr.Content; +import org.argeo.api.acr.search.BasicSearch; + +public interface ContentProvider extends NamespaceContext { + + ProvidedContent get(ProvidedSession session, String relativePath); + + boolean exists(ProvidedSession session, String relativePath); + + String getMountPath(); + + /* + * NAMESPACE CONTEXT + */ + @Override + default String getPrefix(String namespaceURI) { + Iterator prefixes = getPrefixes(namespaceURI); + return prefixes.hasNext() ? prefixes.next() : null; + } -public interface ContentProvider { + default Spliterator search(ProvidedSession session, BasicSearch search, String relPath) { + throw new UnsupportedOperationException(); + } - Content get(ProvidedSession session, String mountPath, String relativePath); +// default ContentName parsePrefixedName(String nameWithPrefix) { +// return NamespaceUtils.parsePrefixedName(this, nameWithPrefix); +// } +// +// default String toPrefixedName(QName name) { +// return NamespaceUtils.toPrefixedName(this, name); +// } }