X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.suite.core%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fcore%2FSuiteMaintenanceService.java;h=ab2043fa3c816b6ac5690fc7e2aaff6bddf33c4a;hb=41e9998f7f1c87c747c57f60c6bec65fa20757a6;hp=91f20433c5379fc8c24fe7084a48fe7c246df5d0;hpb=65030067b0125a4399f58b897b78debded2984d3;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.suite.core/src/org/argeo/suite/core/SuiteMaintenanceService.java b/org.argeo.suite.core/src/org/argeo/suite/core/SuiteMaintenanceService.java index 91f2043..ab2043f 100644 --- a/org.argeo.suite.core/src/org/argeo/suite/core/SuiteMaintenanceService.java +++ b/org.argeo.suite.core/src/org/argeo/suite/core/SuiteMaintenanceService.java @@ -2,9 +2,15 @@ package org.argeo.suite.core; import java.io.IOException; +import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.Session; +import javax.jcr.nodetype.NodeType; +import javax.jcr.security.Privilege; +import org.argeo.api.cms.CmsConstants; +import org.argeo.entity.EntityType; +import org.argeo.jcr.JcrUtils; import org.argeo.maintenance.AbstractMaintenanceService; /** Initialises an Argeo Suite backend. */ @@ -13,14 +19,21 @@ public class SuiteMaintenanceService extends AbstractMaintenanceService { @Override public boolean prepareJcrTree(Session adminSession) throws RepositoryException, IOException { boolean modified = false; -// Node rootNode = adminSession.getRootNode(); -// if (!rootNode.hasNode(EntityNames.TERM)) { -// rootNode.addNode(EntityNames.TERM, EntityType.typologies.get()); -// modified = true; -// } -// if (modified) -// adminSession.save(); + Node rootNode = adminSession.getRootNode(); + if (!rootNode.hasNode(EntityType.user.name())) { + rootNode.addNode(EntityType.user.name(), NodeType.NT_UNSTRUCTURED); + modified = true; + } + if (modified) + adminSession.save(); return modified; } + @Override + 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); + } + }