Class AbstractPullResultHandler
- java.lang.Object
-
- org.apache.syncope.core.provisioning.java.pushpull.AbstractSyncopeResultHandler<PullTask,PullActions>
-
- org.apache.syncope.core.provisioning.java.pushpull.AbstractPullResultHandler
-
- All Implemented Interfaces:
SyncopePullResultHandler,SyncopeResultHandler<PullTask,PullActions>,SyncResultsHandler
- Direct Known Subclasses:
DefaultAnyObjectPullResultHandler,DefaultGroupPullResultHandler,DefaultUserPullResultHandler
public abstract class AbstractPullResultHandler extends AbstractSyncopeResultHandler<PullTask,PullActions> implements SyncopePullResultHandler
-
-
Field Summary
Fields Modifier and Type Field Description protected AnyTypeDAOanyTypeDAOprotected AuditManagerauditManagerprotected ConnObjectUtilsconnObjectUtilsprotected EntityFactoryentityFactoryprotected InboundMatcherinboundMatcherprotected NotificationManagernotificationManagerprotected RemediationDAOremediationDAOprotected TaskDAOtaskDAOprotected UserDAOuserDAOprotected VirAttrCachevirAttrCacheprotected VirSchemaDAOvirSchemaDAO-
Fields inherited from class org.apache.syncope.core.provisioning.java.pushpull.AbstractSyncopeResultHandler
anyObjectDataBinder, anyUtilsFactory, awfAdapter, groupDataBinder, gwfAdapter, LOG, profile, propagationManager, securityProperties, taskExecutor, userDataBinder, uwfAdapter
-
-
Constructor Summary
Constructors Constructor Description AbstractPullResultHandler()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected static AuditElements.Resultand(AuditElements.Result left, AuditElements.Result right)protected voidcreateRemediation(String anyType, String anyKey, AnyCR anyCR, AnyUR anyUR, ProvisioningReport result, SyncDelta delta)protected voidcreateRemediationIfNeeded(AnyUR anyUR, SyncDelta delta, ProvisioningReport result)protected AuditElements.Resultdelete(SyncDelta delta, List<PullMatch> matches, Provision provision)protected AuditElements.Resultdeprovision(MatchingRule matchingRule, SyncDelta delta, List<PullMatch> matches, Provision provision)protected abstract AnyTOdoCreate(AnyCR anyCR, SyncDelta delta)protected AuditElements.ResultdoHandle(SyncDelta delta, Provision provision, AnyTypeKind anyTypeKind)Look into SyncDelta and take necessary profile.getActions() (create / update / delete) on any object(s).protected abstract AnyURdoUpdate(AnyTO before, AnyUR anyUR, SyncDelta delta, ProvisioningReport result)protected voidend(String anyType, String event, AuditElements.Result result, Object before, Object output, SyncDelta delta, Object... furtherInput)protected abstract StringgetName(AnyCR anyCR)protected abstract StringgetName(AnyTO anyTO)protected abstract ProvisioningManager<?,?>getProvisioningManager()booleanhandle(SyncDelta delta)protected AuditElements.ResulthandleAnys(SyncDelta delta, List<PullMatch> matches, AnyTypeKind anyTypeKind, Provision provision)protected AuditElements.ResulthandleLinkedAccounts(SyncDelta delta, List<PullMatch> matches, Provision provision)protected AuditElements.Resultignore(SyncDelta delta, List<PullMatch> matches, Provision provision, boolean matching, String... message)protected AuditElements.Resultlink(SyncDelta delta, List<PullMatch> matches, Provision provision, boolean unlink)protected AuditElements.Resultprovision(UnmatchingRule rule, SyncDelta delta, AnyTypeKind anyTypeKind, Provision provision)protected voidthrowIgnoreProvisionException(SyncDelta delta, Exception exception)protected AuditElements.Resultupdate(SyncDelta delta, List<PullMatch> matches, Provision provision)-
Methods inherited from class org.apache.syncope.core.provisioning.java.pushpull.AbstractSyncopeResultHandler
getAnyTO, getAnyUtils, getContext, setProfile, 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
-
-
-
-
Field Detail
-
inboundMatcher
@Autowired protected InboundMatcher inboundMatcher
-
notificationManager
@Autowired protected NotificationManager notificationManager
-
auditManager
@Autowired protected AuditManager auditManager
-
connObjectUtils
@Autowired protected ConnObjectUtils connObjectUtils
-
userDAO
@Autowired protected UserDAO userDAO
-
anyTypeDAO
@Autowired protected AnyTypeDAO anyTypeDAO
-
taskDAO
@Autowired protected TaskDAO taskDAO
-
remediationDAO
@Autowired protected RemediationDAO remediationDAO
-
virSchemaDAO
@Autowired protected VirSchemaDAO virSchemaDAO
-
virAttrCache
@Autowired protected VirAttrCache virAttrCache
-
entityFactory
@Autowired protected EntityFactory entityFactory
-
-
Method Detail
-
and
protected static AuditElements.Result and(AuditElements.Result left, AuditElements.Result right)
-
getProvisioningManager
protected abstract ProvisioningManager<?,?> getProvisioningManager()
-
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:
handlein interfaceSyncopePullResultHandler- Specified by:
handlein interfaceSyncResultsHandler
-
throwIgnoreProvisionException
protected void throwIgnoreProvisionException(SyncDelta delta, Exception exception) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
provision
protected AuditElements.Result provision(UnmatchingRule rule, SyncDelta delta, AnyTypeKind anyTypeKind, Provision provision) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
update
protected AuditElements.Result update(SyncDelta delta, List<PullMatch> matches, Provision provision) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
deprovision
protected AuditElements.Result deprovision(MatchingRule matchingRule, SyncDelta delta, List<PullMatch> matches, Provision provision) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
link
protected AuditElements.Result link(SyncDelta delta, List<PullMatch> matches, Provision provision, boolean unlink) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
delete
protected AuditElements.Result delete(SyncDelta delta, List<PullMatch> matches, Provision provision) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
ignore
protected AuditElements.Result ignore(SyncDelta delta, List<PullMatch> matches, Provision provision, boolean matching, String... message) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
handleAnys
protected AuditElements.Result handleAnys(SyncDelta delta, List<PullMatch> matches, AnyTypeKind anyTypeKind, Provision provision) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
handleLinkedAccounts
protected AuditElements.Result handleLinkedAccounts(SyncDelta delta, List<PullMatch> matches, Provision provision) throws org.quartz.JobExecutionException
- Throws:
org.quartz.JobExecutionException
-
doHandle
protected AuditElements.Result doHandle(SyncDelta delta, Provision provision, AnyTypeKind anyTypeKind) throws org.quartz.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:
org.quartz.JobExecutionException- in case of pull failure.
-
end
protected void end(String anyType, String event, AuditElements.Result result, Object before, Object output, SyncDelta delta, Object... furtherInput)
-
createRemediationIfNeeded
protected void createRemediationIfNeeded(AnyUR anyUR, SyncDelta delta, ProvisioningReport result)
-
-