Improve ACR support
[gpl/argeo-suite.git] / org.argeo.app.core / src / org / argeo / app / core / SuiteMaintenanceService.java
index 532b7dd511f45b2bad990446079c148e5944ab5e..98784f82f82be746a82a6ccc60284f05f6f6cce2 100644 (file)
@@ -8,6 +8,7 @@ import javax.jcr.Session;
 import javax.jcr.nodetype.NodeType;
 import javax.jcr.security.Privilege;
 
+import org.argeo.api.acr.spi.ProvidedRepository;
 import org.argeo.api.cms.CmsConstants;
 import org.argeo.app.api.EntityType;
 import org.argeo.jcr.JcrUtils;
@@ -15,6 +16,15 @@ import org.argeo.maintenance.AbstractMaintenanceService;
 
 /** Initialises an Argeo Suite backend. */
 public class SuiteMaintenanceService extends AbstractMaintenanceService {
+       @Override
+       public void init() {
+               super.init();
+
+               for (SuiteContentTypes types : SuiteContentTypes.values()) {
+                       getContentRepository().registerTypes(types.getDefaultPrefix(), types.getNamespace(),
+                                       types.getResource() != null ? types.getResource().toExternalForm() : null);
+               }
+       }
 
        @Override
        public boolean prepareJcrTree(Session adminSession) throws RepositoryException, IOException {
@@ -33,7 +43,8 @@ public class SuiteMaintenanceService extends AbstractMaintenanceService {
        public void configurePrivileges(Session adminSession) throws RepositoryException {
                JcrUtils.addPrivilege(adminSession, EntityType.user.basePath(), CmsConstants.ROLE_USER_ADMIN,
                                Privilege.JCR_ALL);
-               //JcrUtils.addPrivilege(adminSession, "/", SuiteRole.coworker.dn(), Privilege.JCR_READ);
+               // JcrUtils.addPrivilege(adminSession, "/", SuiteRole.coworker.dn(),
+               // Privilege.JCR_READ);
        }
 
 }