diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java index fb29bd4684..1e1fdd2302 100644 --- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java +++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultRealmPullResultHandler.java @@ -274,7 +274,7 @@ private void create( finalize(operation, resultStatus, null, output, delta); } - private List update(final SyncDelta delta, final List keys) + private List update(final SyncDelta delta, final List keys, final boolean inLink) throws JobExecutionException { if (!profile.getTask().isPerformUpdate()) { @@ -314,8 +314,10 @@ private List update(final SyncDelta delta, final List deprovision(final SyncDelta delta, final List link(final SyncDelta delta, final List } else { realm.add(profile.getTask().getResource()); } - output = update(delta, Collections.singletonList(key)); - - for (PullActions action : profile.getActions()) { - action.after(profile, delta, RealmTO.class.cast(output), result); - } + output = update(delta, Collections.singletonList(key), true); resultStatus = Result.SUCCESS; @@ -687,8 +687,8 @@ private void doHandle(final SyncDelta delta, final OrgUnit orgUnit) throws JobEx if (keys.size() > 1) { switch (profile.getConflictResolutionAction()) { case IGNORE: - throw new IgnoreProvisionException("More than one match found for " - + processed.getObject().getUid().getUidValue() + ": " + keys); + throw new IgnoreProvisionException("More than one match found for " + + processed.getObject().getUid().getUidValue() + ": " + keys); case FIRSTMATCH: keys = keys.subList(0, 1); @@ -725,7 +725,7 @@ private void doHandle(final SyncDelta delta, final OrgUnit orgUnit) throws JobEx } else { switch (profile.getTask().getMatchingRule()) { case UPDATE: - profile.getResults().addAll(update(processed, keys)); + profile.getResults().addAll(update(processed, keys, false)); break; case DEPROVISION: