X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=jcr%2Forg.argeo.cms.jcr%2Fsrc%2Forg%2Fargeo%2Fcms%2Fjcr%2Facr%2FJcrContentProvider.java;h=f7bfd0949f422b5ce359111347c6e8723de1ca11;hb=e3db2eba9a7f8380a6f76d7b0e6cd4825e91893e;hp=a7005ce23c826b464c7716a5277a6edf1e2e2e95;hpb=ceb6d574e9ea49fcac490d0923d23f259f271f8d;p=lgpl%2Fargeo-commons.git diff --git a/jcr/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/JcrContentProvider.java b/jcr/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/JcrContentProvider.java index a7005ce23..f7bfd0949 100644 --- a/jcr/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/JcrContentProvider.java +++ b/jcr/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/JcrContentProvider.java @@ -5,6 +5,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.Map; +import java.util.Objects; import javax.jcr.Repository; import javax.jcr.RepositoryException; @@ -15,6 +16,7 @@ import org.argeo.api.acr.Content; import org.argeo.api.acr.ContentUtils; import org.argeo.api.acr.spi.ContentProvider; import org.argeo.api.acr.spi.ProvidedSession; +import org.argeo.cms.acr.CmsContentRepository; import org.argeo.cms.jcr.CmsJcrUtils; import org.argeo.jcr.JcrException; import org.argeo.jcr.JcrUtils; @@ -24,9 +26,13 @@ public class JcrContentProvider implements ContentProvider, NamespaceContext { private Repository jcrRepository; private Session adminSession; + private String mountPath; + private Map sessionAdapters = Collections.synchronizedMap(new HashMap<>()); - public void start() { + public void start(Map properties) { + mountPath = properties.get(CmsContentRepository.ACR_MOUNT_PATH_PROPERTY); + Objects.requireNonNull(mountPath); adminSession = CmsJcrUtils.openDataAdminSession(jcrRepository, null); } @@ -59,6 +65,11 @@ public class JcrContentProvider implements ContentProvider, NamespaceContext { return jcrSession; } + @Override + public String getMountPath() { + return mountPath; + } + /* * NAMESPACE CONTEXT */