1 package org
.argeo
.internal
.app
.jcr
;
3 import java
.io
.IOException
;
6 import javax
.jcr
.RepositoryException
;
7 import javax
.jcr
.Session
;
8 import javax
.jcr
.nodetype
.NodeType
;
9 import javax
.jcr
.security
.Privilege
;
11 import org
.argeo
.api
.cms
.CmsConstants
;
12 import org
.argeo
.app
.api
.EntityType
;
13 import org
.argeo
.jcr
.JcrUtils
;
14 import org
.argeo
.maintenance
.AbstractMaintenanceService
;
16 /** Initialises JCR in an Argeo Suite backend. */
17 public class SuiteMaintenanceService
extends AbstractMaintenanceService
{
19 public boolean prepareJcrTree(Session adminSession
) throws RepositoryException
, IOException
{
20 boolean modified
= false;
21 Node rootNode
= adminSession
.getRootNode();
22 if (!rootNode
.hasNode(EntityType
.user
.name())) {
23 rootNode
.addNode(EntityType
.user
.name(), NodeType
.NT_UNSTRUCTURED
);
32 public void configurePrivileges(Session adminSession
) throws RepositoryException
{
33 JcrUtils
.addPrivilege(adminSession
, EntityType
.user
.basePath(), CmsConstants
.ROLE_USER_ADMIN
,
35 // JcrUtils.addPrivilege(adminSession, "/", SuiteRole.coworker.dn(),
36 // Privilege.JCR_READ);