Class AbstractPropagationTaskExecutor
- java.lang.Object
-
- org.apache.syncope.core.provisioning.java.propagation.AbstractPropagationTaskExecutor
-
- All Implemented Interfaces:
org.apache.syncope.core.provisioning.api.propagation.PropagationTaskExecutor
- Direct Known Subclasses:
PriorityPropagationTaskExecutor
@Transactional(rollbackFor=java.lang.Throwable.class) public abstract class AbstractPropagationTaskExecutor extends Object implements org.apache.syncope.core.provisioning.api.propagation.PropagationTaskExecutor
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.syncope.core.persistence.api.dao.AnyObjectDAO
anyObjectDAO
protected org.apache.syncope.core.persistence.api.entity.AnyUtilsFactory
anyUtilsFactory
protected org.apache.syncope.core.provisioning.api.AuditManager
auditManager
protected org.apache.syncope.core.provisioning.api.ConnectorManager
connectorManager
protected ConnObjectUtils
connObjectUtils
protected org.apache.syncope.core.persistence.api.entity.EntityFactory
entityFactory
protected org.apache.syncope.core.persistence.api.dao.GroupDAO
groupDAO
protected static org.slf4j.Logger
LOG
protected org.apache.syncope.core.provisioning.api.notification.NotificationManager
notificationManager
protected OutboundMatcher
outboundMatcher
protected org.apache.syncope.core.persistence.api.dao.PlainSchemaDAO
plainSchemaDAO
protected org.apache.syncope.core.persistence.api.dao.ExternalResourceDAO
resourceDAO
protected Map<String,org.springframework.retry.support.RetryTemplate>
retryTemplates
protected org.apache.syncope.core.persistence.api.dao.TaskDAO
taskDAO
protected org.apache.syncope.core.provisioning.api.data.TaskDataBinder
taskDataBinder
protected org.apache.syncope.core.persistence.api.entity.task.TaskUtilsFactory
taskUtilsFactory
protected org.apache.syncope.core.persistence.api.dao.UserDAO
userDAO
-
Constructor Summary
Constructors Constructor Description AbstractPropagationTaskExecutor(org.apache.syncope.core.provisioning.api.ConnectorManager connectorManager, ConnObjectUtils connObjectUtils, org.apache.syncope.core.persistence.api.dao.UserDAO userDAO, org.apache.syncope.core.persistence.api.dao.GroupDAO groupDAO, org.apache.syncope.core.persistence.api.dao.AnyObjectDAO anyObjectDAO, org.apache.syncope.core.persistence.api.dao.TaskDAO taskDAO, org.apache.syncope.core.persistence.api.dao.ExternalResourceDAO resourceDAO, org.apache.syncope.core.persistence.api.dao.PlainSchemaDAO plainSchemaDAO, org.apache.syncope.core.provisioning.api.notification.NotificationManager notificationManager, org.apache.syncope.core.provisioning.api.AuditManager auditManager, org.apache.syncope.core.provisioning.api.data.TaskDataBinder taskDataBinder, org.apache.syncope.core.persistence.api.entity.AnyUtilsFactory anyUtilsFactory, org.apache.syncope.core.persistence.api.entity.task.TaskUtilsFactory taskUtilsFactory, org.apache.syncope.core.persistence.api.entity.EntityFactory entityFactory, OutboundMatcher outboundMatcher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.apache.syncope.core.persistence.api.entity.task.PropagationTask
buildTask(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo)
protected org.identityconnectors.framework.common.objects.Uid
createOrUpdate(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.identityconnectors.framework.common.objects.ConnectorObject beforeObj, org.apache.syncope.core.provisioning.api.Connector connector, AtomicReference<Boolean> propagationAttempted)
protected org.identityconnectors.framework.common.objects.Uid
delete(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.identityconnectors.framework.common.objects.ConnectorObject beforeObj, org.apache.syncope.core.provisioning.api.Connector connector, AtomicReference<Boolean> propagationAttempted)
protected org.apache.syncope.core.persistence.api.entity.task.TaskExec
doExecute(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo, org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.provisioning.api.propagation.PropagationReporter reporter, String executor)
org.apache.syncope.core.persistence.api.entity.task.TaskExec
execute(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo, org.apache.syncope.core.provisioning.api.propagation.PropagationReporter reporter, String executor)
void
expireRetryTemplate(String resource)
protected List<org.apache.syncope.core.provisioning.api.propagation.PropagationActions>
getPropagationActions(org.apache.syncope.core.persistence.api.entity.ExternalResource resource)
protected org.identityconnectors.framework.common.objects.ConnectorObject
getRemoteObject(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.provisioning.api.Connector connector, org.apache.syncope.common.lib.to.OrgUnit orgUnit, List<org.apache.syncope.core.provisioning.api.propagation.PropagationActions> actions, boolean latest)
Get remote object for given task.protected org.identityconnectors.framework.common.objects.ConnectorObject
getRemoteObject(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.provisioning.api.Connector connector, org.apache.syncope.common.lib.to.Provision provision, List<org.apache.syncope.core.provisioning.api.propagation.PropagationActions> actions, boolean latest)
Get remote object for given task.protected boolean
hasToBeregistered(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.persistence.api.entity.task.TaskExec execution)
Check whether an execution has to be stored, for a given task.protected org.apache.syncope.core.persistence.api.entity.task.TaskExec
rejected(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo, String rejectReason, org.apache.syncope.core.provisioning.api.propagation.PropagationReporter reporter, String executor)
protected Optional<org.springframework.retry.support.RetryTemplate>
retryTemplate(org.apache.syncope.core.persistence.api.entity.ExternalResource resource)
-
-
-
Field Detail
-
LOG
protected static final org.slf4j.Logger LOG
-
retryTemplates
protected final Map<String,org.springframework.retry.support.RetryTemplate> retryTemplates
-
connectorManager
protected final org.apache.syncope.core.provisioning.api.ConnectorManager connectorManager
-
connObjectUtils
protected final ConnObjectUtils connObjectUtils
-
userDAO
protected final org.apache.syncope.core.persistence.api.dao.UserDAO userDAO
-
groupDAO
protected final org.apache.syncope.core.persistence.api.dao.GroupDAO groupDAO
-
anyObjectDAO
protected final org.apache.syncope.core.persistence.api.dao.AnyObjectDAO anyObjectDAO
-
taskDAO
protected final org.apache.syncope.core.persistence.api.dao.TaskDAO taskDAO
-
resourceDAO
protected final org.apache.syncope.core.persistence.api.dao.ExternalResourceDAO resourceDAO
-
plainSchemaDAO
protected final org.apache.syncope.core.persistence.api.dao.PlainSchemaDAO plainSchemaDAO
-
notificationManager
protected final org.apache.syncope.core.provisioning.api.notification.NotificationManager notificationManager
-
auditManager
protected final org.apache.syncope.core.provisioning.api.AuditManager auditManager
-
taskDataBinder
protected final org.apache.syncope.core.provisioning.api.data.TaskDataBinder taskDataBinder
-
anyUtilsFactory
protected final org.apache.syncope.core.persistence.api.entity.AnyUtilsFactory anyUtilsFactory
-
taskUtilsFactory
protected final org.apache.syncope.core.persistence.api.entity.task.TaskUtilsFactory taskUtilsFactory
-
entityFactory
protected final org.apache.syncope.core.persistence.api.entity.EntityFactory entityFactory
-
outboundMatcher
protected final OutboundMatcher outboundMatcher
-
-
Constructor Detail
-
AbstractPropagationTaskExecutor
public AbstractPropagationTaskExecutor(org.apache.syncope.core.provisioning.api.ConnectorManager connectorManager, ConnObjectUtils connObjectUtils, org.apache.syncope.core.persistence.api.dao.UserDAO userDAO, org.apache.syncope.core.persistence.api.dao.GroupDAO groupDAO, org.apache.syncope.core.persistence.api.dao.AnyObjectDAO anyObjectDAO, org.apache.syncope.core.persistence.api.dao.TaskDAO taskDAO, org.apache.syncope.core.persistence.api.dao.ExternalResourceDAO resourceDAO, org.apache.syncope.core.persistence.api.dao.PlainSchemaDAO plainSchemaDAO, org.apache.syncope.core.provisioning.api.notification.NotificationManager notificationManager, org.apache.syncope.core.provisioning.api.AuditManager auditManager, org.apache.syncope.core.provisioning.api.data.TaskDataBinder taskDataBinder, org.apache.syncope.core.persistence.api.entity.AnyUtilsFactory anyUtilsFactory, org.apache.syncope.core.persistence.api.entity.task.TaskUtilsFactory taskUtilsFactory, org.apache.syncope.core.persistence.api.entity.EntityFactory entityFactory, OutboundMatcher outboundMatcher)
-
-
Method Detail
-
expireRetryTemplate
public void expireRetryTemplate(String resource)
- Specified by:
expireRetryTemplate
in interfaceorg.apache.syncope.core.provisioning.api.propagation.PropagationTaskExecutor
-
getPropagationActions
protected List<org.apache.syncope.core.provisioning.api.propagation.PropagationActions> getPropagationActions(org.apache.syncope.core.persistence.api.entity.ExternalResource resource)
-
createOrUpdate
protected org.identityconnectors.framework.common.objects.Uid createOrUpdate(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.identityconnectors.framework.common.objects.ConnectorObject beforeObj, org.apache.syncope.core.provisioning.api.Connector connector, AtomicReference<Boolean> propagationAttempted)
-
delete
protected org.identityconnectors.framework.common.objects.Uid delete(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.identityconnectors.framework.common.objects.ConnectorObject beforeObj, org.apache.syncope.core.provisioning.api.Connector connector, AtomicReference<Boolean> propagationAttempted)
-
buildTask
protected org.apache.syncope.core.persistence.api.entity.task.PropagationTask buildTask(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo)
-
retryTemplate
protected Optional<org.springframework.retry.support.RetryTemplate> retryTemplate(org.apache.syncope.core.persistence.api.entity.ExternalResource resource)
-
execute
public org.apache.syncope.core.persistence.api.entity.task.TaskExec execute(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo, org.apache.syncope.core.provisioning.api.propagation.PropagationReporter reporter, String executor)
- Specified by:
execute
in interfaceorg.apache.syncope.core.provisioning.api.propagation.PropagationTaskExecutor
-
doExecute
protected org.apache.syncope.core.persistence.api.entity.task.TaskExec doExecute(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo, org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.provisioning.api.propagation.PropagationReporter reporter, String executor)
-
rejected
protected org.apache.syncope.core.persistence.api.entity.task.TaskExec rejected(org.apache.syncope.core.provisioning.api.propagation.PropagationTaskInfo taskInfo, String rejectReason, org.apache.syncope.core.provisioning.api.propagation.PropagationReporter reporter, String executor)
-
hasToBeregistered
protected boolean hasToBeregistered(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.persistence.api.entity.task.TaskExec execution)
Check whether an execution has to be stored, for a given task.- Parameters:
task
- propagation taskexecution
- to be decide whether to store or not- Returns:
- true if execution has to be store, false otherwise
-
getRemoteObject
protected org.identityconnectors.framework.common.objects.ConnectorObject getRemoteObject(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.provisioning.api.Connector connector, org.apache.syncope.common.lib.to.Provision provision, List<org.apache.syncope.core.provisioning.api.propagation.PropagationActions> actions, boolean latest)
Get remote object for given task.- Parameters:
connector
- connector facade proxy.task
- current propagation task.provision
- provisionactions
- propagation actionslatest
- 'FALSE' to retrieve object using old connObjectKey if not null.- Returns:
- remote connector object.
-
getRemoteObject
protected org.identityconnectors.framework.common.objects.ConnectorObject getRemoteObject(org.apache.syncope.core.persistence.api.entity.task.PropagationTask task, org.apache.syncope.core.provisioning.api.Connector connector, org.apache.syncope.common.lib.to.OrgUnit orgUnit, List<org.apache.syncope.core.provisioning.api.propagation.PropagationActions> actions, boolean latest)
Get remote object for given task.- Parameters:
connector
- connector facade proxy.task
- current propagation task.orgUnit
- orgUnitactions
- propagation actionslatest
- 'FALSE' to retrieve object using old connObjectKey if not null.- Returns:
- remote connector object.
-
-