Class AbstractGroupProvisionOperation<T extends BaseObject,R extends Response>
- java.lang.Object
-
- org.openiam.idm.provisioning.service.AbstractProvisioningOperation<T,GroupProvisionAPI,R,PasswordSync>
-
- org.openiam.idm.provisioning.service.group.AbstractGroupProvisionOperation<T,R>
-
- Direct Known Subclasses:
AddEventGroupProvisioningOperation
,AddGroupProvisionOperation
,AddModifyRequestGroupProvisioningOperation
,DeleteGroupDirectProvisionOperation
,DeleteGroupProvisionOperation
,SearchGroupProvisioningOperation
,TestConnectionGroupProvisioningOperation
,UpdateGroupProvisioningOperation
public abstract class AbstractGroupProvisionOperation<T extends BaseObject,R extends Response> extends AbstractProvisioningOperation<T,GroupProvisionAPI,R,PasswordSync>
- Author:
- vitalia
-
-
Field Summary
Fields Modifier and Type Field Description protected AuditLogHelper
auditLogHelper
protected AbstractGroupProvisioningValidator
defaultGroupProvisionValidator
protected DefaultProvisionGroupObjectDiffGenerator
diffGenerator
protected GroovyScriptEngineIntegration
groovyScriptEngineIntegration
protected GroupRabbitMQService
groupRabbitMQService
protected IdentityRabbitMqService
identityRabbitMqService
protected org.apache.commons.logging.Log
log
protected ManagedSystemCache
managedSysCache
protected ManagedSystemRabbitMQService
managedSystemRabbitMQService
protected String
postProcessor
protected String
preProcessor
protected PrimaryPrincipalBuilder
principalBuilder
protected PropertyValueCache
propertyValueService
-
Fields inherited from class org.openiam.idm.provisioning.service.AbstractProvisioningOperation
authManagerMQService, loginQueue, mapper, rabbitMQSender, resourceMQService, resourceQueue
-
-
Constructor Summary
Constructors Constructor Description AbstractGroupProvisionOperation()
-
Method Summary
-
Methods inherited from class org.openiam.idm.provisioning.service.AbstractProvisioningOperation
applyAuditLogCommonProperties, applyDiffToAuditLog, execute, fillExtensibleAttributes, getAuditAction, getCachedEntitlementsForUser, getRequestorId, getResourceIdsForNonCachedRequest, getResourcePropertyValue, getValidator
-
-
-
-
Field Detail
-
identityRabbitMqService
@Autowired protected IdentityRabbitMqService identityRabbitMqService
-
principalBuilder
@Autowired protected PrimaryPrincipalBuilder principalBuilder
-
groupRabbitMQService
@Autowired protected GroupRabbitMQService groupRabbitMQService
-
defaultGroupProvisionValidator
@Autowired protected AbstractGroupProvisioningValidator defaultGroupProvisionValidator
-
propertyValueService
@Autowired protected PropertyValueCache propertyValueService
-
managedSysCache
@Autowired protected ManagedSystemCache managedSysCache
-
managedSystemRabbitMQService
@Autowired protected ManagedSystemRabbitMQService managedSystemRabbitMQService
-
auditLogHelper
@Autowired protected AuditLogHelper auditLogHelper
-
diffGenerator
@Autowired protected DefaultProvisionGroupObjectDiffGenerator diffGenerator
-
preProcessor
@Value("${org.openiam.idm.group.preProcessor.groovy.script}") protected String preProcessor
-
postProcessor
@Value("${org.openiam.idm.group.postProcessor.groovy.script}") protected String postProcessor
-
log
protected final org.apache.commons.logging.Log log
-
groovyScriptEngineIntegration
@Autowired protected GroovyScriptEngineIntegration groovyScriptEngineIntegration
-
-
Method Detail
-
getOperation
public abstract GroupProvisionAPI getOperation()
- Specified by:
getOperation
in classAbstractProvisioningOperation<T extends BaseObject,GroupProvisionAPI,R extends Response,PasswordSync>
-
save
protected final String save(ProvisionGroup pGroup) throws BasicDataServiceException
- Parameters:
pGroup
-- Returns:
- savedGroupId
- Throws:
BasicDataServiceException
-
validateIdentityAlreadyExisted
protected void validateIdentityAlreadyExisted(IdentityDto identityDto) throws BasicDataServiceException
- Throws:
BasicDataServiceException
-
processIdentities
protected void processIdentities(Set<AuthorizationResource> resourcesCurrentlyEntitledTo, ProvisionGroupObjectDiff diff, IdentityDto identityDto, ProvisionGroup pGroup)
designed for building identity based on groovy for GROUP_PRINCIPAL- Parameters:
resourcesCurrentlyEntitledTo
-diff
-identityDto
-pGroup
-
-
sendProvisioningRequestAsynchronously
protected void sendProvisioningRequestAsynchronously(ProvisionGroup pGroup, ProvisionGroupObjectDiff diff, Predicate<String> authorizationCheck, Function<IdentityDto,GroupProvisionAPI> operationMapper) throws BasicDataServiceException
sends provision request to target systems asynchronously- Parameters:
pGroup
-diff
-authorizationCheck
-operationMapper
-- Throws:
BasicDataServiceException
-
getGroup
protected Group getGroup(String groupId) throws BasicDataServiceException
- Throws:
BasicDataServiceException
-
buildPrePostProcessorContext
protected final GroupProvisioningPrePostprocessorBuilder buildPrePostProcessorContext(ProvisionGroupObjectDiff diff, IdentityDto identity)
-
runManageSysProcessorScriptOfGroupIdentity
protected void runManageSysProcessorScriptOfGroupIdentity(List<IdentityDto> identityDtoList, ProvisionGroup pGroup, ProvisionGroupObjectDiff diff, ManagedSystemPropertyEnum process) throws BasicDataServiceException
- Throws:
BasicDataServiceException
-
-