X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fruntime%2FDeployedContentRepository.java;h=4a4a4d9867863a4e4bf4ecf3887ba63ecdc37ab3;hb=4c7e1885b8bf3c93fa0919ace122e3f289a925ea;hp=cff9bc5148a3464678dc98ae310f93d035332724;hpb=da9d144b6b241e1526a3bd255dff905a7969a5bc;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/runtime/DeployedContentRepository.java b/org.argeo.cms/src/org/argeo/cms/internal/runtime/DeployedContentRepository.java index cff9bc514..4a4a4d986 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/runtime/DeployedContentRepository.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/runtime/DeployedContentRepository.java @@ -6,13 +6,16 @@ import java.nio.file.Path; import java.util.Map; import org.argeo.api.acr.spi.ContentProvider; +import org.argeo.cms.CmsUserManager; import org.argeo.cms.acr.CmsContentRepository; +import org.argeo.cms.acr.directory.DirectoryContentProvider; import org.argeo.cms.acr.fs.FsContentProvider; -import org.argeo.util.OS; public class DeployedContentRepository extends CmsContentRepository { private final static String ROOT_XML = "cr:root.xml"; + private CmsUserManager userManager; + @Override public void start() { try { @@ -24,10 +27,16 @@ public class DeployedContentRepository extends CmsContentRepository { // FsContentProvider srvContentProvider = new FsContentProvider("/" + CmsConstants.SRV_WORKSPACE, srvPath, false); // addProvider(srvContentProvider); - Path runDirPath = KernelUtils.getOsgiInstancePath(CmsContentRepository.RUN_BASE); + // run dir + Path runDirPath = KernelUtils.getOsgiInstancePath(CmsContentRepository.RUN_BASE); Files.createDirectories(runDirPath); FsContentProvider runContentProvider = new FsContentProvider(CmsContentRepository.RUN_BASE, runDirPath); addProvider(runContentProvider); + + // users + DirectoryContentProvider directoryContentProvider = new DirectoryContentProvider( + CmsContentRepository.DIRECTORY_BASE, userManager); + addProvider(directoryContentProvider); } catch (IOException e) { throw new IllegalStateException("Cannot start content repository", e); } @@ -46,4 +55,8 @@ public class DeployedContentRepository extends CmsContentRepository { public void removeContentProvider(ContentProvider provider, Map properties) { } + public void setUserManager(CmsUserManager userManager) { + this.userManager = userManager; + } + }