This is an automated email from the ASF dual-hosted git repository.

ilgrosso pushed a commit to branch 2_1_X
in repository https://gitbox.apache.org/repos/asf/syncope.git


The following commit(s) were added to refs/heads/2_1_X by this push:
     new 95d1658  Ensure to always set uidValue for ProvisioningReport instances
95d1658 is described below

commit 95d1658ac9fd92b6f787f8f5dec2727db5f14c7a
Author: Francesco Chicchiriccò <[email protected]>
AuthorDate: Mon Jun 15 11:50:03 2020 +0200

    Ensure to always set uidValue for ProvisioningReport instances
---
 .../java/pushpull/AbstractPullResultHandler.java   |  7 +++++
 .../pushpull/DefaultUserPullResultHandler.java     | 30 ++++++++++------------
 .../pushpull/DefaultUserPushResultHandler.java     |  2 ++
 3 files changed, 22 insertions(+), 17 deletions(-)

diff --git 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/AbstractPullResultHandler.java
 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/AbstractPullResultHandler.java
index de5b2c9..9c52f12 100644
--- 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/AbstractPullResultHandler.java
+++ 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/AbstractPullResultHandler.java
@@ -161,6 +161,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
             ignoreResult.setStatus(ProvisioningReport.Status.IGNORE);
             ignoreResult.setMessage(e.getMessage());
             ignoreResult.setKey(null);
+            ignoreResult.setUidValue(delta.getUid().getUidValue());
             ignoreResult.setName(delta.getObject().getName().getNameValue());
             profile.getResults().add(ignoreResult);
 
@@ -305,6 +306,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
             result.setAnyType(provision.getAnyType().getKey());
             result.setStatus(ProvisioningReport.Status.SUCCESS);
             result.setKey(match.getAny().getKey());
+            result.setUidValue(delta.getUid().getUidValue());
 
             AnyTO before = getAnyTO(match.getAny());
             if (before == null) {
@@ -414,6 +416,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
             result.setAnyType(provision.getAnyType().getKey());
             result.setStatus(ProvisioningReport.Status.SUCCESS);
             result.setKey(match.getAny().getKey());
+            result.setUidValue(delta.getUid().getUidValue());
 
             AnyTO before = getAnyTO(match.getAny());
 
@@ -530,6 +533,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
             result.setAnyType(provision.getAnyType().getKey());
             result.setStatus(ProvisioningReport.Status.SUCCESS);
             result.setKey(match.getAny().getKey());
+            result.setUidValue(delta.getUid().getUidValue());
 
             AnyTO before = getAnyTO(match.getAny());
 
@@ -636,6 +640,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
                 result.setOperation(ResourceOperation.DELETE);
                 result.setAnyType(provision.getAnyType().getKey());
                 result.setStatus(ProvisioningReport.Status.SUCCESS);
+                result.setUidValue(delta.getUid().getUidValue());
 
                 if (!profile.isDryRun()) {
                     for (PullActions action : profile.getActions()) {
@@ -711,6 +716,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
             report.setOperation(ResourceOperation.NONE);
             report.setAnyType(provision.getAnyType().getKey());
             report.setStatus(ProvisioningReport.Status.SUCCESS);
+            report.setUidValue(delta.getUid().getUidValue());
             if (message != null && message.length >= 1) {
                 report.setMessage(message[0]);
             }
@@ -724,6 +730,7 @@ public abstract class AbstractPullResultHandler extends 
AbstractSyncopeResultHan
                 report.setOperation(ResourceOperation.NONE);
                 report.setAnyType(provision.getAnyType().getKey());
                 report.setStatus(ProvisioningReport.Status.SUCCESS);
+                report.setUidValue(delta.getUid().getUidValue());
                 if (message != null && message.length >= 1) {
                     report.setMessage(message[0]);
                 }
diff --git 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
index 40ddc53..d54e9d3 100644
--- 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
+++ 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
@@ -229,6 +229,7 @@ public class DefaultUserPullResultHandler extends 
AbstractPullResultHandler impl
         report.setAnyType(MatchType.LINKED_ACCOUNT.name());
         report.setStatus(ProvisioningReport.Status.SUCCESS);
         report.setKey(account.getKey());
+        report.setUidValue(account.getConnObjectKeyValue());
 
         LinkedAccountTO before = userDataBinder.getLinkedAccountTO(account);
 
@@ -308,6 +309,7 @@ public class DefaultUserPullResultHandler extends 
AbstractPullResultHandler impl
         ProvisioningReport report = new ProvisioningReport();
         report.setOperation(ResourceOperation.CREATE);
         report.setName(accountTO.getConnObjectKeyValue());
+        report.setUidValue(accountTO.getConnObjectKeyValue());
         report.setAnyType(MatchType.LINKED_ACCOUNT.name());
         report.setStatus(ProvisioningReport.Status.SUCCESS);
 
@@ -429,6 +431,7 @@ public class DefaultUserPullResultHandler extends 
AbstractPullResultHandler impl
         ProvisioningReport report = new ProvisioningReport();
         report.setOperation(ResourceOperation.UPDATE);
         report.setKey(account.getKey());
+        report.setUidValue(account.getConnObjectKeyValue());
         report.setName(account.getConnObjectKeyValue());
         report.setAnyType(MatchType.LINKED_ACCOUNT.name());
         report.setStatus(ProvisioningReport.Status.SUCCESS);
@@ -558,6 +561,7 @@ public class DefaultUserPullResultHandler extends 
AbstractPullResultHandler impl
         try {
             report.setKey(account.getKey());
             report.setName(account.getConnObjectKeyValue());
+            report.setUidValue(account.getConnObjectKeyValue());
             report.setOperation(ResourceOperation.DELETE);
             report.setAnyType(MatchType.LINKED_ACCOUNT.name());
             report.setStatus(ProvisioningReport.Status.SUCCESS);
@@ -630,24 +634,16 @@ public class DefaultUserPullResultHandler extends 
AbstractPullResultHandler impl
         LOG.debug("Linked account to ignore {}", 
delta.getObject().getUid().getUidValue());
 
         ProvisioningReport report = new ProvisioningReport();
-        if (account == null) {
-            report.setKey(null);
-            report.setName(delta.getObject().getUid().getUidValue());
-            report.setOperation(ResourceOperation.NONE);
-            report.setAnyType(MatchType.LINKED_ACCOUNT.name());
-            report.setStatus(ProvisioningReport.Status.SUCCESS);
-            if (message != null && message.length >= 1) {
-                report.setMessage(message[0]);
-            }
-        } else {
+        report.setName(delta.getUid().getUidValue());
+        report.setUidValue(delta.getUid().getUidValue());
+        report.setOperation(ResourceOperation.NONE);
+        report.setAnyType(MatchType.LINKED_ACCOUNT.name());
+        report.setStatus(ProvisioningReport.Status.SUCCESS);
+        if (message != null && message.length >= 1) {
+            report.setMessage(message[0]);
+        }
+        if (account != null) {
             report.setKey(account.getKey());
-            report.setName(delta.getObject().getUid().getUidValue());
-            report.setOperation(ResourceOperation.NONE);
-            report.setAnyType(MatchType.LINKED_ACCOUNT.name());
-            report.setStatus(ProvisioningReport.Status.SUCCESS);
-            if (message != null && message.length >= 1) {
-                report.setMessage(message[0]);
-            }
         }
 
         end(AnyTypeKind.USER,
diff --git 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPushResultHandler.java
 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPushResultHandler.java
index 9479e46..d8612be 100644
--- 
a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPushResultHandler.java
+++ 
b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPushResultHandler.java
@@ -192,6 +192,7 @@ public class DefaultUserPushResultHandler extends 
AbstractPushResultHandler impl
                 ignoreResult = new ProvisioningReport();
                 ignoreResult.setKey(account.getKey());
                 ignoreResult.setAnyType(MatchType.LINKED_ACCOUNT.name());
+                ignoreResult.setUidValue(account.getConnObjectKeyValue());
 
                 profile.getResults().add(ignoreResult);
             }
@@ -214,6 +215,7 @@ public class DefaultUserPushResultHandler extends 
AbstractPushResultHandler impl
 
         result.setKey(account.getKey());
         result.setAnyType(MatchType.LINKED_ACCOUNT.name());
+        result.setUidValue(account.getConnObjectKeyValue());
         result.setName(account.getConnObjectKeyValue());
 
         LOG.debug("Pushing linked account {} towards {}", account.getKey(), 
profile.getTask().getResource());

Reply via email to