Class RepositoryTenantManager
- java.lang.Object
-
- org.pentaho.platform.repository2.mt.AbstractRepositoryTenantManager
-
- org.pentaho.platform.repository2.mt.RepositoryTenantManager
-
- All Implemented Interfaces:
org.pentaho.platform.api.mt.ITenantManager
public class RepositoryTenantManager extends AbstractRepositoryTenantManager
- Author:
- wseyler
-
-
Field Summary
Fields Modifier and Type Field Description protected org.springframework.extensions.jcr.JcrTemplate
jcrTemplate
When not using multi-tenancy, this value is used as opposed totenantAuthenticatedAuthorityPattern
.protected static org.apache.commons.logging.Log
logger
-
Fields inherited from class org.pentaho.platform.repository2.mt.AbstractRepositoryTenantManager
FOLDER_NAME_AUTHZ, FOLDER_NAME_ROLEBASED, FOLDER_NAME_RUNTIMEROLES, pathConversionHelper, repositoryAdminUsername, repositoryFileAclDao, repositoryFileDao, roleBindingDao, singleTenantAuthenticatedAuthorityRoleBindingList, tenantAdminRoleName, tenantAuthenticatedRoleName, tenantedRoleNameResolver, tenantedUserNameResolver, userRoleDao
-
-
Constructor Summary
Constructors Constructor Description RepositoryTenantManager(IRepositoryFileDao contentDao, org.pentaho.platform.api.engine.security.userroledao.IUserRoleDao userRoleDao, IRepositoryFileAclDao repositoryFileAclDao, IRoleAuthorizationPolicyRoleBindingDao roleBindingDao, org.springframework.extensions.jcr.JcrTemplate jcrTemplate, String repositoryAdminUsername, String tenantAuthenticatedAuthorityNamePattern, org.pentaho.platform.api.mt.ITenantedPrincipleNameResolver tenantedUserNameResolver, org.pentaho.platform.api.mt.ITenantedPrincipleNameResolver tenantedRoleNameResolver, String tenantAdminRoleName, List<String> singleTenantAuthenticatedAuthorityRoleBindingList)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.pentaho.platform.api.engine.IPentahoSession
createAuthenticatedPentahoSession(String tenantId, String userName)
javax.jcr.Node
createAuthzFolderNode(javax.jcr.Session session, PentahoJcrConstants pentahoJcrConstants, org.pentaho.platform.api.mt.ITenant tenant)
protected void
createInitialTenantFolders(org.pentaho.platform.api.mt.ITenant tenant, org.pentaho.platform.api.repository2.unified.RepositoryFile tenantRootFolder, org.pentaho.platform.api.repository2.unified.RepositoryFileSid fileOwnerSid)
javax.jcr.Node
createRoleBasedFolderNode(javax.jcr.Session session, PentahoJcrConstants pentahoJcrConstants, org.pentaho.platform.api.mt.ITenant tenant)
javax.jcr.Node
createRuntimeRolesFolderNode(javax.jcr.Session session, PentahoJcrConstants pentahoJcrConstants, org.pentaho.platform.api.mt.ITenant tenant)
org.pentaho.platform.api.mt.ITenant
createTenant(org.pentaho.platform.api.mt.ITenant parentTenant, String tenantName, String tenantAdminRoleName, String authenticatedRoleName, String anonymousRoleName)
void
deleteTenant(org.pentaho.platform.api.mt.ITenant tenant)
void
deleteTenants(List<org.pentaho.platform.api.mt.ITenant> tenants)
void
enableTenant(org.pentaho.platform.api.mt.ITenant tenant, boolean enable)
void
enableTenants(List<org.pentaho.platform.api.mt.ITenant> tenants, boolean enable)
List<org.pentaho.platform.api.mt.ITenant>
getChildTenants(org.pentaho.platform.api.mt.ITenant parentTenant)
List<org.pentaho.platform.api.mt.ITenant>
getChildTenants(org.pentaho.platform.api.mt.ITenant parentTenant, boolean includeDisabledTenants)
org.pentaho.platform.api.mt.ITenant
getTenant(String tenantId)
org.pentaho.platform.api.mt.ITenant
getTenantByRootFolderPath(String tenantRootFolderPath)
org.pentaho.platform.api.repository2.unified.RepositoryFile
getTenantRootFolder(org.pentaho.platform.api.mt.ITenant tenant)
org.pentaho.platform.api.engine.security.userroledao.IUserRoleDao
getUserRoleDao()
boolean
isSubTenant(org.pentaho.platform.api.mt.ITenant parentTenant, org.pentaho.platform.api.mt.ITenant descendantTenant)
protected void
login(String username, String tenantAdminRoleId)
void
updateTentant(String tenantPath, Map<String,Serializable> tenantInfo)
-
Methods inherited from class org.pentaho.platform.repository2.mt.AbstractRepositoryTenantManager
createInitialTenantFolders, createUserHomeFolder, deleteTenant, deleteTenants, enableTenant, enableTenants, getChildTenants, getChildTenants, getTenant, getUserHomeFolder, isSubTenant, setAsSystemFolder, updateTentant
-
-
-
-
Constructor Detail
-
RepositoryTenantManager
public RepositoryTenantManager(IRepositoryFileDao contentDao, org.pentaho.platform.api.engine.security.userroledao.IUserRoleDao userRoleDao, IRepositoryFileAclDao repositoryFileAclDao, IRoleAuthorizationPolicyRoleBindingDao roleBindingDao, org.springframework.extensions.jcr.JcrTemplate jcrTemplate, String repositoryAdminUsername, String tenantAuthenticatedAuthorityNamePattern, org.pentaho.platform.api.mt.ITenantedPrincipleNameResolver tenantedUserNameResolver, org.pentaho.platform.api.mt.ITenantedPrincipleNameResolver tenantedRoleNameResolver, String tenantAdminRoleName, List<String> singleTenantAuthenticatedAuthorityRoleBindingList)
-
-
Method Detail
-
createAuthzFolderNode
public javax.jcr.Node createAuthzFolderNode(javax.jcr.Session session, PentahoJcrConstants pentahoJcrConstants, org.pentaho.platform.api.mt.ITenant tenant) throws javax.jcr.RepositoryException
- Throws:
javax.jcr.RepositoryException
-
createRoleBasedFolderNode
public javax.jcr.Node createRoleBasedFolderNode(javax.jcr.Session session, PentahoJcrConstants pentahoJcrConstants, org.pentaho.platform.api.mt.ITenant tenant) throws javax.jcr.RepositoryException
- Throws:
javax.jcr.RepositoryException
-
createRuntimeRolesFolderNode
public javax.jcr.Node createRuntimeRolesFolderNode(javax.jcr.Session session, PentahoJcrConstants pentahoJcrConstants, org.pentaho.platform.api.mt.ITenant tenant) throws javax.jcr.RepositoryException
- Throws:
javax.jcr.RepositoryException
-
createTenant
public org.pentaho.platform.api.mt.ITenant createTenant(org.pentaho.platform.api.mt.ITenant parentTenant, String tenantName, String tenantAdminRoleName, String authenticatedRoleName, String anonymousRoleName)
-
createAuthenticatedPentahoSession
protected org.pentaho.platform.api.engine.IPentahoSession createAuthenticatedPentahoSession(String tenantId, String userName)
-
deleteTenants
public void deleteTenants(List<org.pentaho.platform.api.mt.ITenant> tenants)
-
deleteTenant
public void deleteTenant(org.pentaho.platform.api.mt.ITenant tenant)
-
enableTenant
public void enableTenant(org.pentaho.platform.api.mt.ITenant tenant, boolean enable)
-
getTenantRootFolder
public org.pentaho.platform.api.repository2.unified.RepositoryFile getTenantRootFolder(org.pentaho.platform.api.mt.ITenant tenant)
- Specified by:
getTenantRootFolder
in interfaceorg.pentaho.platform.api.mt.ITenantManager
- Overrides:
getTenantRootFolder
in classAbstractRepositoryTenantManager
-
enableTenants
public void enableTenants(List<org.pentaho.platform.api.mt.ITenant> tenants, boolean enable)
-
getChildTenants
public List<org.pentaho.platform.api.mt.ITenant> getChildTenants(org.pentaho.platform.api.mt.ITenant parentTenant, boolean includeDisabledTenants)
-
getChildTenants
public List<org.pentaho.platform.api.mt.ITenant> getChildTenants(org.pentaho.platform.api.mt.ITenant parentTenant)
-
updateTentant
public void updateTentant(String tenantPath, Map<String,Serializable> tenantInfo)
-
getTenant
public org.pentaho.platform.api.mt.ITenant getTenant(String tenantId)
-
getTenantByRootFolderPath
public org.pentaho.platform.api.mt.ITenant getTenantByRootFolderPath(String tenantRootFolderPath)
-
isSubTenant
public boolean isSubTenant(org.pentaho.platform.api.mt.ITenant parentTenant, org.pentaho.platform.api.mt.ITenant descendantTenant)
-
getUserRoleDao
public org.pentaho.platform.api.engine.security.userroledao.IUserRoleDao getUserRoleDao()
-
createInitialTenantFolders
protected void createInitialTenantFolders(org.pentaho.platform.api.mt.ITenant tenant, org.pentaho.platform.api.repository2.unified.RepositoryFile tenantRootFolder, org.pentaho.platform.api.repository2.unified.RepositoryFileSid fileOwnerSid) throws javax.jcr.RepositoryException
- Throws:
javax.jcr.RepositoryException
-
-