org.camunda.bpm.engine.impl.identity.db
Class DbIdentityServiceProvider

java.lang.Object
  extended by org.camunda.bpm.engine.impl.persistence.AbstractManager
      extended by org.camunda.bpm.engine.impl.identity.db.DbReadOnlyIdentityServiceProvider
          extended by org.camunda.bpm.engine.impl.identity.db.DbIdentityServiceProvider
All Implemented Interfaces:
ReadOnlyIdentityProvider, WritableIdentityProvider, Session

public class DbIdentityServiceProvider
extends DbReadOnlyIdentityServiceProvider
implements WritableIdentityProvider

WritableIdentityProvider implementation backed by a database. This implementation is used for the built-in user management.

Author:
Daniel Meyer

Constructor Summary
DbIdentityServiceProvider()
           
 
Method Summary
protected  void createDefaultAuthorizations(Group group)
           
protected  void createDefaultAuthorizations(Tenant tenant)
           
protected  void createDefaultAuthorizations(UserEntity userEntity)
           
protected  void createDefaultMembershipAuthorizations(String userId, String groupId)
           
protected  void createDefaultTenantMembershipAuthorizations(Tenant tenant, Group group)
           
protected  void createDefaultTenantMembershipAuthorizations(Tenant tenant, User user)
           
 void createMembership(String userId, String groupId)
          Creates a membership relation between a user and a group.
 GroupEntity createNewGroup(String groupId)
          Returns a new (transient) Group object.
 Tenant createNewTenant(String tenantId)
           Returns a new (transient) Tenant object.
 UserEntity createNewUser(String userId)
          Returns a new (transient) User object.
 void createTenantGroupMembership(String tenantId, String groupId)
          Creates a membership relation between a tenant and a group.
 void createTenantUserMembership(String tenantId, String userId)
          Creates a membership relation between a tenant and a user.
 void deleteGroup(String groupId)
          Allows deleting a persistent Group object.
 void deleteMembership(String userId, String groupId)
          Deletes a membership relation between a user and a group.
protected  void deleteMembershipsByGroupId(String groupId)
           
protected  void deleteMembershipsByUserId(String userId)
           
 void deleteTenant(String tenantId)
          Allows deleting a persistent Tenant object.
 void deleteTenantGroupMembership(String tenantId, String groupId)
          Deletes a membership relation between a tenant and a group.
protected  void deleteTenantMembershipsOfGroup(String groupId)
           
protected  void deleteTenantMembershipsOfTenant(String tenant)
           
protected  void deleteTenantMembershipsOfUser(String userId)
           
 void deleteTenantUserMembership(String tenantId, String userId)
          Deletes a membership relation between a tenant and a user.
 void deleteUser(String userId)
          Allows deleting a persistent User object.
 GroupEntity saveGroup(Group group)
          Allows saving a Group object which is not yet persistent.
 Tenant saveTenant(Tenant tenant)
          Allows saving a Tenant object which is not yet persistent.
 User saveUser(User user)
          Allows saving or updates a User object
 
Methods inherited from class org.camunda.bpm.engine.impl.identity.db.DbReadOnlyIdentityServiceProvider
checkAuthorization, checkPassword, configureQuery, createGroupQuery, createGroupQuery, createNativeUserQuery, createTenantQuery, createTenantQuery, createUserQuery, createUserQuery, findGroupById, findGroupByQueryCriteria, findGroupCountByQueryCriteria, findTenantById, findTenantByQueryCriteria, findTenantCountByQueryCriteria, findUserById, findUserByNativeQuery, findUserByQueryCriteria, findUserCountByNativeQuery, findUserCountByQueryCriteria, matchPassword
 
Methods inherited from class org.camunda.bpm.engine.impl.persistence.AbstractManager
close, delete, deleteAuthorizations, deleteAuthorizationsForGroup, deleteAuthorizationsForUser, deleteDefaultAuthorizations, flush, getAttachmentManager, getAuthorizationManager, getBatchManager, getByteArrayManager, getCaseDefinitionManager, getCaseExecutionManager, getCaseInstanceManager, getCommandContext, getCurrentAuthentication, getDbEntityManager, getDbSqlSession, getDecisionDefinitionManager, getDecisionRequirementsDefinitionManager, getDeploymentManager, getEventSubscriptionManager, getHistoricActivityInstanceManager, getHistoricBatchManager, getHistoricCaseActivityInstanceManager, getHistoricCaseInstanceManager, getHistoricDecisionInstanceManager, getHistoricDetailManager, getHistoricExternalTaskLogManager, getHistoricIdentityLinkManager, getHistoricIncidentManager, getHistoricJobLogManager, getHistoricProcessInstanceManager, getHistoricReportManager, getHistoricTaskInstanceManager, getHistoricVariableInstanceManager, getIdentityInfoManager, getIdentityLinkManager, getJobDefinitionManager, getJobManager, getProcessDefinitionManager, getProcessInstanceManager, getResourceAuthorizationProvider, getResourceManager, getSession, getTaskManager, getTaskReportManager, getTenantManager, getUserOperationLogManager, getVariableInstanceManager, insert, isAuthorizationEnabled, saveDefaultAuthorizations
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.camunda.bpm.engine.impl.interceptor.Session
close, flush
 

Constructor Detail

DbIdentityServiceProvider

public DbIdentityServiceProvider()
Method Detail

createNewUser

public UserEntity createNewUser(String userId)
Description copied from interface: WritableIdentityProvider

Returns a new (transient) User object. The Object is not yet persistent and must be saved using the WritableIdentityProvider.saveUser(User) method.

NOTE: the implementation does not validate the uniqueness of the userId parameter at this time.

Specified by:
createNewUser in interface WritableIdentityProvider
Returns:
an non-persistent user object.

saveUser

public User saveUser(User user)
Description copied from interface: WritableIdentityProvider
Allows saving or updates a User object

Specified by:
saveUser in interface WritableIdentityProvider
Parameters:
user - a User object.
Returns:
the User object.

deleteUser

public void deleteUser(String userId)
Description copied from interface: WritableIdentityProvider
Allows deleting a persistent User object.

Specified by:
deleteUser in interface WritableIdentityProvider

createNewGroup

public GroupEntity createNewGroup(String groupId)
Description copied from interface: WritableIdentityProvider

Returns a new (transient) Group object. The Object is not yet persistent and must be saved using the WritableIdentityProvider.saveGroup(Group) method.

NOTE: the implementation does not validate the uniqueness of the groupId parameter at this time.

Specified by:
createNewGroup in interface WritableIdentityProvider
Returns:
an non-persistent group object.

saveGroup

public GroupEntity saveGroup(Group group)
Description copied from interface: WritableIdentityProvider
Allows saving a Group object which is not yet persistent.

Specified by:
saveGroup in interface WritableIdentityProvider
Parameters:
group - a group object.
Returns:
the persistent group object.

deleteGroup

public void deleteGroup(String groupId)
Description copied from interface: WritableIdentityProvider
Allows deleting a persistent Group object.

Specified by:
deleteGroup in interface WritableIdentityProvider
Parameters:
groupId - the id of the group object to delete. *

createNewTenant

public Tenant createNewTenant(String tenantId)
Description copied from interface: WritableIdentityProvider

Returns a new (transient) Tenant object. The Object is not yet persistent and must be saved using the WritableIdentityProvider.saveTenant(Tenant) method.

NOTE: the implementation does not validate the uniqueness of the tenantId parameter at this time.

Specified by:
createNewTenant in interface WritableIdentityProvider
Parameters:
tenantId - the id of the new tenant
Returns:
an non-persistent tenant object.

saveTenant

public Tenant saveTenant(Tenant tenant)
Description copied from interface: WritableIdentityProvider
Allows saving a Tenant object which is not yet persistent.

Specified by:
saveTenant in interface WritableIdentityProvider
Parameters:
tenant - the tenant object to save.
Returns:
the persistent tenant object.

deleteTenant

public void deleteTenant(String tenantId)
Description copied from interface: WritableIdentityProvider
Allows deleting a persistent Tenant object.

Specified by:
deleteTenant in interface WritableIdentityProvider
Parameters:
tenantId - the id of the tenant object to delete. *

createMembership

public void createMembership(String userId,
                             String groupId)
Description copied from interface: WritableIdentityProvider
Creates a membership relation between a user and a group. If the user is already part of that group, IdentityProviderException is thrown.

Specified by:
createMembership in interface WritableIdentityProvider
Parameters:
userId - the id of the user
groupId - id of the group

deleteMembership

public void deleteMembership(String userId,
                             String groupId)
Description copied from interface: WritableIdentityProvider
Deletes a membership relation between a user and a group.

Specified by:
deleteMembership in interface WritableIdentityProvider
Parameters:
userId - the id of the user
groupId - id of the group

deleteMembershipsByUserId

protected void deleteMembershipsByUserId(String userId)

deleteMembershipsByGroupId

protected void deleteMembershipsByGroupId(String groupId)

createTenantUserMembership

public void createTenantUserMembership(String tenantId,
                                       String userId)
Description copied from interface: WritableIdentityProvider
Creates a membership relation between a tenant and a user.

Specified by:
createTenantUserMembership in interface WritableIdentityProvider
Parameters:
tenantId - the id of the tenant
userId - the id of the user

createTenantGroupMembership

public void createTenantGroupMembership(String tenantId,
                                        String groupId)
Description copied from interface: WritableIdentityProvider
Creates a membership relation between a tenant and a group.

Specified by:
createTenantGroupMembership in interface WritableIdentityProvider
Parameters:
tenantId - the id of the tenant
groupId - the id of the group

deleteTenantUserMembership

public void deleteTenantUserMembership(String tenantId,
                                       String userId)
Description copied from interface: WritableIdentityProvider
Deletes a membership relation between a tenant and a user.

Specified by:
deleteTenantUserMembership in interface WritableIdentityProvider
Parameters:
tenantId - the id of the tenant
userId - the id of the user

deleteTenantGroupMembership

public void deleteTenantGroupMembership(String tenantId,
                                        String groupId)
Description copied from interface: WritableIdentityProvider
Deletes a membership relation between a tenant and a group.

Specified by:
deleteTenantGroupMembership in interface WritableIdentityProvider
Parameters:
tenantId - the id of the tenant
groupId - the id of the group

deleteTenantMembershipsOfUser

protected void deleteTenantMembershipsOfUser(String userId)

deleteTenantMembershipsOfGroup

protected void deleteTenantMembershipsOfGroup(String groupId)

deleteTenantMembershipsOfTenant

protected void deleteTenantMembershipsOfTenant(String tenant)

createDefaultAuthorizations

protected void createDefaultAuthorizations(UserEntity userEntity)

createDefaultAuthorizations

protected void createDefaultAuthorizations(Group group)

createDefaultAuthorizations

protected void createDefaultAuthorizations(Tenant tenant)

createDefaultMembershipAuthorizations

protected void createDefaultMembershipAuthorizations(String userId,
                                                     String groupId)

createDefaultTenantMembershipAuthorizations

protected void createDefaultTenantMembershipAuthorizations(Tenant tenant,
                                                           User user)

createDefaultTenantMembershipAuthorizations

protected void createDefaultTenantMembershipAuthorizations(Tenant tenant,
                                                           Group group)


Copyright © 2017 camunda services GmbH. All rights reserved.