]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.cms/src/org/argeo/cms/internal/runtime/DeployedContentRepository.java
Improve, clarify and register namespaces
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / internal / runtime / DeployedContentRepository.java
index cff9bc5148a3464678dc98ae310f93d035332724..551062379a6047d9fbb733aee597719ca6b16d29 100644 (file)
@@ -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);
                }
@@ -38,12 +47,16 @@ public class DeployedContentRepository extends CmsContentRepository {
                super.stop();
        }
 
-       public void addContentProvider(ContentProvider provider, Map<String, Object> properties) {
-//             String base = LangUtils.get(properties, CmsContentRepository.ACR_MOUNT_PATH_PROPERTY);
-               addProvider(provider);
-       }
+//     public void addContentProvider(ContentProvider provider, Map<String, Object> properties) {
+////           String base = LangUtils.get(properties, CmsContentRepository.ACR_MOUNT_PATH_PROPERTY);
+//             addProvider(provider);
+//     }
+
+//     public void removeContentProvider(ContentProvider provider, Map<String, Object> properties) {
+//     }
 
-       public void removeContentProvider(ContentProvider provider, Map<String, Object> properties) {
+       public void setUserManager(CmsUserManager userManager) {
+               this.userManager = userManager;
        }
 
 }