Class AbstractPullResultHandler
java.lang.Object
org.apache.syncope.core.provisioning.java.pushpull.AbstractSyncopeResultHandler<PullTask,InboundActions>
org.apache.syncope.core.provisioning.java.pushpull.AbstractPullResultHandler
- All Implemented Interfaces:
SyncopePullResultHandler
,SyncopeResultHandler<PullTask,
,InboundActions> SyncResultsHandler
- Direct Known Subclasses:
DefaultAnyObjectPullResultHandler
,DefaultGroupPullResultHandler
,DefaultUserPullResultHandler
public abstract class AbstractPullResultHandler
extends AbstractSyncopeResultHandler<PullTask,InboundActions>
implements SyncopePullResultHandler
-
Field Summary
Modifier and TypeFieldDescriptionprotected AnyTypeDAO
protected AuditManager
protected ConnObjectUtils
protected EntityFactory
protected InboundMatcher
protected NotificationManager
protected RemediationDAO
protected TaskDAO
protected UserDAO
protected javax.cache.Cache
<VirAttrCacheKey, VirAttrCacheValue> protected VirSchemaDAO
Fields inherited from class org.apache.syncope.core.provisioning.java.pushpull.AbstractSyncopeResultHandler
anyObjectDataBinder, anyUtilsFactory, awfAdapter, groupDataBinder, gwfAdapter, LOG, profile, propagationManager, securityProperties, stopRequested, taskExecutor, userDataBinder, uwfAdapter
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected static OpEvent.Outcome
and
(OpEvent.Outcome left, OpEvent.Outcome right) protected void
createRemediation
(String anyType, String anyKey, AnyCR anyCR, AnyUR anyUR, ProvisioningReport result, SyncDelta delta) protected void
createRemediationIfNeeded
(AnyUR anyUR, SyncDelta delta, ProvisioningReport result) protected OpEvent.Outcome
delete
(SyncDelta delta, List<InboundMatch> matches, Provision provision) protected OpEvent.Outcome
deprovision
(MatchingRule matchingRule, SyncDelta delta, List<InboundMatch> matches, Provision provision) protected abstract AnyTO
protected OpEvent.Outcome
doHandle
(SyncDelta delta, Provision provision, AnyTypeKind anyTypeKind) Look into SyncDelta and take necessary profile.getActions() (create / update / delete) on any object(s).protected abstract AnyUR
doUpdate
(AnyTO before, AnyUR anyUR, SyncDelta delta, ProvisioningReport result) protected void
end
(String anyType, String event, OpEvent.Outcome result, Object before, Object output, SyncDelta delta, Object... furtherInput) protected abstract String
protected abstract String
protected abstract ProvisioningManager
<?, ?> boolean
protected OpEvent.Outcome
handleAnys
(SyncDelta delta, List<InboundMatch> matches, AnyTypeKind anyTypeKind, Provision provision) protected OpEvent.Outcome
handleLinkedAccounts
(SyncDelta delta, List<InboundMatch> matches, Provision provision) protected OpEvent.Outcome
ignore
(SyncDelta delta, List<InboundMatch> matches, Provision provision, boolean matching, String... message) protected OpEvent.Outcome
link
(SyncDelta delta, List<InboundMatch> matches, Provision provision, boolean unlink) protected OpEvent.Outcome
provision
(UnmatchingRule rule, SyncDelta delta, AnyTypeKind anyTypeKind, Provision provision) protected void
throwIgnoreProvisionException
(SyncDelta delta, Exception exception) protected OpEvent.Outcome
update
(SyncDelta delta, List<InboundMatch> matches, Provision provision) Methods inherited from class org.apache.syncope.core.provisioning.java.pushpull.AbstractSyncopeResultHandler
getAnyTO, getAnyUtils, setProfile, stop, update
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.syncope.core.provisioning.api.pushpull.SyncopeResultHandler
setProfile, stop
-
Field Details
-
inboundMatcher
-
notificationManager
-
auditManager
-
connObjectUtils
-
userDAO
-
anyTypeDAO
-
taskDAO
-
remediationDAO
-
virSchemaDAO
-
virAttrCache
-
entityFactory
-
-
Constructor Details
-
AbstractPullResultHandler
public AbstractPullResultHandler()
-
-
Method Details
-
and
-
getName
-
getName
-
getProvisioningManager
-
doCreate
-
doUpdate
protected abstract AnyUR doUpdate(AnyTO before, AnyUR anyUR, SyncDelta delta, ProvisioningReport result) -
handle
@Transactional(rollbackFor=java.lang.Throwable.class, propagation=REQUIRES_NEW) public boolean handle(SyncDelta delta) - Specified by:
handle
in interfaceSyncopePullResultHandler
- Specified by:
handle
in interfaceSyncResultsHandler
-
throwIgnoreProvisionException
-
provision
protected OpEvent.Outcome provision(UnmatchingRule rule, SyncDelta delta, AnyTypeKind anyTypeKind, Provision provision) throws JobExecutionException - Throws:
JobExecutionException
-
update
protected OpEvent.Outcome update(SyncDelta delta, List<InboundMatch> matches, Provision provision) throws JobExecutionException - Throws:
JobExecutionException
-
deprovision
protected OpEvent.Outcome deprovision(MatchingRule matchingRule, SyncDelta delta, List<InboundMatch> matches, Provision provision) throws JobExecutionException - Throws:
JobExecutionException
-
link
protected OpEvent.Outcome link(SyncDelta delta, List<InboundMatch> matches, Provision provision, boolean unlink) throws JobExecutionException - Throws:
JobExecutionException
-
delete
-
ignore
protected OpEvent.Outcome ignore(SyncDelta delta, List<InboundMatch> matches, Provision provision, boolean matching, String... message) -
handleAnys
protected OpEvent.Outcome handleAnys(SyncDelta delta, List<InboundMatch> matches, AnyTypeKind anyTypeKind, Provision provision) throws JobExecutionException - Throws:
JobExecutionException
-
handleLinkedAccounts
protected OpEvent.Outcome handleLinkedAccounts(SyncDelta delta, List<InboundMatch> matches, Provision provision) throws JobExecutionException - Throws:
JobExecutionException
-
doHandle
protected OpEvent.Outcome doHandle(SyncDelta delta, Provision provision, AnyTypeKind anyTypeKind) throws JobExecutionException Look into SyncDelta and take necessary profile.getActions() (create / update / delete) on any object(s).- Parameters:
delta
- returned by the underlying profile.getConnector()provision
- provisioning infoanyTypeKind
- any type kind- Returns:
- if handle was successful or not
- Throws:
JobExecutionException
- in case of pull failure.
-
end
-
createRemediationIfNeeded
-
createRemediation
-