You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2014/06/05 15:31:55 UTC

svn commit: r1600652 - in /syncope/trunk: ./ console/src/main/java/org/apache/syncope/console/pages/panels/ core/src/main/java/org/apache/syncope/core/connid/ core/src/main/java/org/apache/syncope/core/persistence/beans/

Author: ilgrosso
Date: Thu Jun  5 13:31:55 2014
New Revision: 1600652

URL: http://svn.apache.org/r1600652
Log:
[SYNCOPE-499] Merge from 1_1_X

Modified:
    syncope/trunk/   (props changed)
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleDetailsPanel.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RolePanel.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java

Propchange: syncope/trunk/
------------------------------------------------------------------------------
  Merged /syncope/branches/1_1_X:r1597714-1600646

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleDetailsPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleDetailsPanel.java?rev=1600652&r1=1600651&r2=1600652&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleDetailsPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleDetailsPanel.java Thu Jun  5 13:31:55 2014
@@ -45,11 +45,18 @@ import org.apache.wicket.markup.html.pan
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.spring.injection.annot.SpringBean;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class RoleDetailsPanel extends Panel {
 
     private static final long serialVersionUID = 855618618337931784L;
 
+    /**
+     * Logger.
+     */
+    protected static final Logger LOG = LoggerFactory.getLogger(RoleDetailsPanel.class);
+
     @SpringBean
     private UserRestClient userRestClient;
 
@@ -288,9 +295,14 @@ public class RoleDetailsPanel extends Pa
             switch (type) {
                 case USER:
                     if (roleTO.getUserOwner() != null) {
-                        UserTO user = userRestClient.read(roleTO.getUserOwner());
+                        UserTO user = null;
+                        try {
+                            user = userRestClient.read(roleTO.getUserOwner());
+                        } catch (Exception e) {
+                            LOG.warn("Could not find user with id {}, ignoring", roleTO.getUserOwner(), e);
+                        }
                         if (user == null) {
-                            object = String.valueOf(roleTO.getUserOwner());
+                            roleTO.setUserOwner(null);
                         } else {
                             object = user.getId() + " " + user.getUsername();
                         }
@@ -298,10 +310,15 @@ public class RoleDetailsPanel extends Pa
                     break;
 
                 case ROLE:
+                    RoleTO role = null;
                     if (roleTO.getRoleOwner() != null) {
-                        RoleTO role = roleRestClient.read(roleTO.getRoleOwner());
+                        try {
+                            role = roleRestClient.read(roleTO.getRoleOwner());
+                        } catch (Exception e) {
+                            LOG.warn("Could not find role with id {}, ignoring", roleTO.getRoleOwner(), e);
+                        }
                         if (role == null) {
-                            object = String.valueOf(roleTO.getRoleOwner());
+                            roleTO.setRoleOwner(null);
                         } else {
                             object = role.getDisplayName();
                         }
@@ -351,9 +368,14 @@ public class RoleDetailsPanel extends Pa
         public Object getObject() {
             Object object = null;
             if (roleTO.getParent() != 0) {
-                RoleTO parent = roleRestClient.read(roleTO.getParent());
+                RoleTO parent = null;
+                try {
+                    parent = roleRestClient.read(roleTO.getParent());
+                } catch (Exception e) {
+                    LOG.warn("Could not find role with id {}, ignoring", roleTO.getParent(), e);
+                }
                 if (parent == null) {
-                    object = String.valueOf(roleTO.getParent());
+                    roleTO.setParent(0);
                 } else {
                     object = parent.getDisplayName();
                 }
@@ -363,9 +385,7 @@ public class RoleDetailsPanel extends Pa
 
         @Override
         public void setObject(final Object object) {
-            long parentId = (object instanceof Long)
-                    ? ((Long) object).longValue() : 0;
-            roleTO.setParent(parentId);
+            roleTO.setParent((object instanceof Long) ? ((Long) object) : 0);
         }
 
         @Override

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RolePanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RolePanel.java?rev=1600652&r1=1600651&r2=1600652&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RolePanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RolePanel.java Thu Jun  5 13:31:55 2014
@@ -98,8 +98,7 @@ public class RolePanel extends Panel {
     private RolePanel(final Builder builder) {
         super(builder.id);
 
-        this.add(new RoleDetailsPanel(
-                "details", builder.roleTO, builder.mode == RoleModalPage.Mode.TEMPLATE));
+        this.add(new RoleDetailsPanel("details", builder.roleTO, builder.mode == RoleModalPage.Mode.TEMPLATE));
 
         if (builder.pageReference == null || builder.roleTO.getId() == 0) {
             this.add(new Label("statuspanel", ""));

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java?rev=1600652&r1=1600651&r2=1600652&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java Thu Jun  5 13:31:55 2014
@@ -52,6 +52,7 @@ import org.apache.syncope.core.persisten
 import org.apache.syncope.core.persistence.dao.PolicyDAO;
 import org.apache.syncope.core.persistence.dao.ResourceDAO;
 import org.apache.syncope.core.persistence.dao.RoleDAO;
+import org.apache.syncope.core.persistence.dao.UserDAO;
 import org.apache.syncope.core.propagation.ConnectorFactory;
 import org.apache.syncope.core.propagation.Connector;
 import org.apache.syncope.core.rest.controller.UnauthorizedRoleException;
@@ -96,6 +97,9 @@ public class ConnObjectUtil {
     private PolicyDAO policyDAO;
 
     @Autowired
+    private UserDAO userDAO;
+
+    @Autowired
     private RoleDAO roleDAO;
 
     @Autowired
@@ -379,10 +383,25 @@ public class ConnObjectUtil {
                     }
                 }
 
-                ((RoleTO) attributableTO).setParent(((RoleTO) template).getParent());
+                if (((RoleTO) template).getParent() != 0) {
+                    final SyncopeRole parentRole = roleDAO.find(((RoleTO) template).getParent());
+                    if (parentRole != null) {
+                        ((RoleTO) attributableTO).setParent(parentRole.getId());
+                    }
+                }
 
-                ((RoleTO) attributableTO).setUserOwner(((RoleTO) template).getUserOwner());
-                ((RoleTO) attributableTO).setRoleOwner(((RoleTO) template).getRoleOwner());
+                if (((RoleTO) template).getUserOwner() != null) {
+                    final SyncopeUser userOwner = userDAO.find(((RoleTO) template).getUserOwner());
+                    if (userOwner != null) {
+                        ((RoleTO) attributableTO).setUserOwner(userOwner.getId());
+                    }
+                }
+                if (((RoleTO) template).getRoleOwner() != null) {
+                    final SyncopeRole roleOwner = roleDAO.find(((RoleTO) template).getRoleOwner());
+                    if (roleOwner != null) {
+                        ((RoleTO) attributableTO).setRoleOwner(roleOwner.getId());
+                    }
+                }
 
                 ((RoleTO) attributableTO).getEntitlements().addAll(((RoleTO) template).getEntitlements());
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java?rev=1600652&r1=1600651&r2=1600652&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/SyncTask.java Thu Jun  5 13:31:55 2014
@@ -25,6 +25,7 @@ import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import org.apache.syncope.common.to.RoleTO;
 import org.apache.syncope.common.to.UserTO;
+import org.apache.syncope.core.sync.impl.SyncJob;
 import org.apache.syncope.core.util.XMLSerializer;
 
 @Entity
@@ -47,7 +48,7 @@ public class SyncTask extends AbstractSy
      * Default constructor.
      */
     public SyncTask() {
-        super("org.apache.syncope.core.sync.impl.SyncJob");
+        super(SyncJob.class.getName());
     }
 
     public UserTO getUserTemplate() {