Author: ilgrosso
Date: Mon Jul 22 07:36:46 2013
New Revision: 1505611

URL: http://svn.apache.org/r1505611
Log:
[SYNCOPE-404] Synchronization cannot alter entitlements

Modified:
    
syncope/branches/1_1_X/common/src/main/java/org/apache/syncope/common/to/RoleTO.java
    
syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java

Modified: 
syncope/branches/1_1_X/common/src/main/java/org/apache/syncope/common/to/RoleTO.java
URL: 
http://svn.apache.org/viewvc/syncope/branches/1_1_X/common/src/main/java/org/apache/syncope/common/to/RoleTO.java?rev=1505611&r1=1505610&r2=1505611&view=diff
==============================================================================
--- 
syncope/branches/1_1_X/common/src/main/java/org/apache/syncope/common/to/RoleTO.java
 (original)
+++ 
syncope/branches/1_1_X/common/src/main/java/org/apache/syncope/common/to/RoleTO.java
 Mon Jul 22 07:36:46 2013
@@ -62,6 +62,8 @@ public class RoleTO extends AbstractAttr
     private Long accountPolicy;
 
     public RoleTO() {
+        super();
+
         entitlements = new ArrayList<String>();
     }
 

Modified: 
syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
URL: 
http://svn.apache.org/viewvc/syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java?rev=1505611&r1=1505610&r2=1505611&view=diff
==============================================================================
--- 
syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
 (original)
+++ 
syncope/branches/1_1_X/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
 Mon Jul 22 07:36:46 2013
@@ -232,6 +232,8 @@ public class ConnObjectUtil {
             return (T) AttributableOperations.diff(((UserTO) updated), 
((UserTO) original), true);
         }
         if (AttributableType.ROLE == attrUtil.getType()) {
+            // reading from connector object cannot change entitlements
+            ((RoleTO) updated).setEntitlements(((RoleTO) 
original).getEntitlements());
             return (T) AttributableOperations.diff(((RoleTO) updated), 
((RoleTO) original), true);
         }
 
@@ -244,7 +246,9 @@ public class ConnObjectUtil {
         final T attributableTO = attrUtil.newAttributableTO();
 
         // 1. fill with data from connector object
-        for (AbstractMappingItem item : 
attrUtil.getMappingItems(syncTask.getResource(), 
MappingPurpose.SYNCHRONIZATION)) {
+        for (AbstractMappingItem item : attrUtil.getMappingItems(
+                syncTask.getResource(), MappingPurpose.SYNCHRONIZATION)) {
+
             Attribute attribute = 
obj.getAttributeByName(item.getExtAttrName());
 
             AttributeTO attributeTO;


Reply via email to