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 AuditLogHelperauditLogHelperprotected AbstractGroupProvisioningValidatordefaultGroupProvisionValidatorprotected DefaultProvisionGroupObjectDiffGeneratordiffGeneratorprotected GroovyScriptEngineIntegrationgroovyScriptEngineIntegrationprotected GroupRabbitMQServicegroupRabbitMQServiceprotected IdentityRabbitMqServiceidentityRabbitMqServiceprotected org.apache.commons.logging.Loglogprotected ManagedSystemCachemanagedSysCacheprotected ManagedSystemRabbitMQServicemanagedSystemRabbitMQServiceprotected StringpostProcessorprotected StringpreProcessorprotected PrimaryPrincipalBuilderprincipalBuilderprotected PropertyValueCachepropertyValueService-
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:
getOperationin 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
-
-