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 2016/05/09 11:27:41 UTC

syncope git commit: [SYNCOPE-156] Various small tweaks

Repository: syncope
Updated Branches:
  refs/heads/master b99b684ab -> f8ffa6c2f


[SYNCOPE-156] Various small tweaks


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/f8ffa6c2
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/f8ffa6c2
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/f8ffa6c2

Branch: refs/heads/master
Commit: f8ffa6c2fecb48e5b53642dd4f7b927585b68336
Parents: b99b684
Author: Francesco Chicchiricc� <il...@apache.org>
Authored: Mon May 9 13:26:39 2016 +0200
Committer: Francesco Chicchiricc� <il...@apache.org>
Committed: Mon May 9 13:26:39 2016 +0200

----------------------------------------------------------------------
 .../syncope/client/console/pages/BasePage.java  | 26 ++++-----
 .../console/rest/AbstractAnyRestClient.java     |  6 +-
 .../client/console/rest/ResourceRestClient.java | 13 ++++-
 .../client/console/wizards/any/AuxClasses.java  |  2 +
 .../client/console/wizards/any/Groups.java      | 60 ++++++++++++--------
 .../client/console/wizards/any/Resources.java   |  2 +-
 .../client/console/wizards/any/ResultPage.java  |  4 --
 .../client/console/wizards/any/Roles.java       |  4 +-
 .../provisioning/java/MappingManagerImpl.java   |  2 +-
 9 files changed, 70 insertions(+), 49 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java b/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
index b9cbe61..ccce28f 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
@@ -75,15 +75,9 @@ public class BasePage extends WebPage implements IAjaxIndicatorAware {
 
     protected static final Logger LOG = LoggerFactory.getLogger(BasePage.class);
 
-    protected static final String CANCEL = "cancel";
+    protected static final HeaderItem META_IE_EDGE = new MetaHeaderItem("X-UA-Compatible", "IE=edge");
 
-    protected static final String SUBMIT = "submit";
-
-    protected static final String APPLY = "apply";
-
-    protected static final String FORM = "form";
-
-    protected final HeaderItem meta = new MetaHeaderItem("X-UA-Compatible", "IE=edge");
+    protected static SystemInfo SYSTEM_INFO;
 
     protected final WebMarkupContainer body;
 
@@ -134,11 +128,15 @@ public class BasePage extends WebPage implements IAjaxIndicatorAware {
         body.add(new ApprovalsWidget("approvalsWidget", getPageReference()).setRenderBodyOnly(true));
 
         // right sidebar
-        SystemInfo systemInfo = SyncopeConsoleSession.get().getService(SyncopeService.class).system();
-        body.add(new Label("hostname", systemInfo.getHostname()));
-        body.add(new Label("processors", systemInfo.getAvailableProcessors()));
-        body.add(new Label("os", systemInfo.getOs()));
-        body.add(new Label("jvm", systemInfo.getJvm()));
+        synchronized (this) {
+            if (SYSTEM_INFO == null) {
+                SYSTEM_INFO = SyncopeConsoleSession.get().getService(SyncopeService.class).system();
+            }
+        }
+        body.add(new Label("hostname", SYSTEM_INFO.getHostname()));
+        body.add(new Label("processors", SYSTEM_INFO.getAvailableProcessors()));
+        body.add(new Label("os", SYSTEM_INFO.getOs()));
+        body.add(new Label("jvm", SYSTEM_INFO.getJvm()));
 
         Link<Void> dbExportLink = new Link<Void>("dbExportLink") {
 
@@ -380,7 +378,7 @@ public class BasePage extends WebPage implements IAjaxIndicatorAware {
     @Override
     public void renderHead(final IHeaderResponse response) {
         super.renderHead(response);
-        response.render(new PriorityHeaderItem(meta));
+        response.render(new PriorityHeaderItem(META_IE_EDGE));
     }
 
     private String getLIContainerId(final String linkId) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/rest/AbstractAnyRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/AbstractAnyRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/AbstractAnyRestClient.java
index 5759af5..231a909 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/AbstractAnyRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/AbstractAnyRestClient.java
@@ -47,12 +47,12 @@ public abstract class AbstractAnyRestClient<TO extends AnyTO, P extends AnyPatch
 
     public abstract int count(String realm, String type);
 
-    public abstract List<TO> list(String realm, int page, int size, final SortParam<String> sort, final String type);
+    public abstract List<TO> list(String realm, int page, int size, SortParam<String> sort, String type);
 
-    public abstract int searchCount(String realm, String fiql, final String type);
+    public abstract int searchCount(String realm, String fiql, String type);
 
     public abstract List<TO> search(
-            String realm, String fiql, int page, int size, final SortParam<String> sort, final String type);
+            String realm, String fiql, int page, int size, SortParam<String> sort, String type);
 
     public TO read(final String key) {
         return getService(getAnyServiceClass()).read(key);

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
index c70c235..f8ed1b3 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
@@ -19,8 +19,11 @@
 package org.apache.syncope.client.console.rest;
 
 import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.List;
 import javax.ws.rs.core.Response;
+import org.apache.commons.collections4.ComparatorUtils;
 import org.apache.commons.lang3.tuple.Pair;
 import org.apache.syncope.common.lib.patch.ResourceDeassociationPatch;
 import org.apache.syncope.common.lib.to.BulkAction;
@@ -93,7 +96,15 @@ public class ResourceRestClient extends BaseRestClient {
     }
 
     public List<ResourceTO> list() {
-        return getService(ResourceService.class).list();
+        List<ResourceTO> resources = getService(ResourceService.class).list();
+        Collections.sort(resources, new Comparator<ResourceTO>() {
+
+            @Override
+            public int compare(final ResourceTO o1, final ResourceTO o2) {
+                return ComparatorUtils.<String>naturalComparator().compare(o1.getKey(), o2.getKey());
+            }
+        });
+        return resources;
     }
 
     public ResourceTO create(final ResourceTO resourceTO) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/AuxClasses.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/AuxClasses.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/AuxClasses.java
index 744c159..5aa59aa 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/AuxClasses.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/AuxClasses.java
@@ -19,6 +19,7 @@
 package org.apache.syncope.client.console.wizards.any;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import org.apache.syncope.client.console.rest.AnyTypeClassRestClient;
 import org.apache.syncope.client.console.wicket.markup.html.form.AjaxPalettePanel;
@@ -44,6 +45,7 @@ public class AuxClasses extends WizardStep {
                 choices.add(aux.getKey());
             }
         }
+        Collections.sort(choices);
         add(new AjaxPalettePanel.Builder<String>().setAllowOrder(true).build("auxClasses",
                 new PropertyModel<List<String>>(anyTO, "auxClasses"),
                 new ListModel<>(choices)).hideLabel().setOutputMarkupId(true));

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Groups.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Groups.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Groups.java
index 5766db7..8c84cda 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Groups.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Groups.java
@@ -19,8 +19,12 @@
 package org.apache.syncope.client.console.wizards.any;
 
 import java.util.ArrayList;
+import java.util.LinkedHashMap;
 import java.util.List;
+import java.util.Map;
 import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.IterableUtils;
+import org.apache.commons.collections4.Predicate;
 import org.apache.commons.collections4.Transformer;
 import org.apache.syncope.client.console.rest.GroupRestClient;
 import org.apache.syncope.client.console.wicket.markup.html.form.AjaxPalettePanel;
@@ -68,12 +72,14 @@ public class Groups extends WizardStep {
                     @Override
                     public MembershipTO getObject(
                             final String id, final IModel<? extends List<? extends MembershipTO>> choices) {
-                        for (MembershipTO membershipTO : choices.getObject()) {
-                            if (id.equalsIgnoreCase(membershipTO.getGroupName())) {
-                                return membershipTO;
+
+                        return IterableUtils.find(choices.getObject(), new Predicate<MembershipTO>() {
+
+                            @Override
+                            public boolean evaluate(final MembershipTO object) {
+                                return id.equalsIgnoreCase(object.getGroupName());
                             }
-                        }
-                        return null;
+                        });
                     }
                 });
 
@@ -97,31 +103,37 @@ public class Groups extends WizardStep {
 
                     @Override
                     public MembershipTO transform(final GroupTO input) {
-                        final MembershipTO membershipTO = new MembershipTO();
-                        membershipTO.setGroupName(input.getName());
-                        membershipTO.setRightKey(input.getKey() == null ? null : input.getKey());
-                        membershipTO.setRightType(input.getType());
-                        membershipTO.setLeftKey(anyTO.getKey() == null ? null : anyTO.getKey());
-                        membershipTO.setLeftType(anyTO.getType());
-                        return membershipTO;
+                        return new MembershipTO.Builder().
+                                group(input.getKey(), input.getName()).
+                                left(anyTO.getKey(), anyTO.getType()).
+                                build();
                     }
                 }, new ArrayList<MembershipTO>());
             }
         }).hideLabel().setOutputMarkupId(true));
 
-        List<String> dynamics = CollectionUtils.collect(GroupableTO.class.cast(anyTO).getDynGroups(),
-                new Transformer<String, String>() {
-
-            @Override
-            public String transform(final String input) {
-                final GroupTO groupTO = groupRestClient.read(input);
-                return String.format("[%s] %s", groupTO.getKey(), groupTO.getName());
-            }
-        }, new ArrayList<String>());
-
+        List<GroupTO> allGroups = groupRestClient.list(anyTO.getRealm(), -1, -1, new SortParam<>("name", true), null);
+        final Map<String, GroupTO> allGroupsByKey = new LinkedHashMap<>(allGroups.size());
+        for (GroupTO group : allGroups) {
+            allGroupsByKey.put(group.getKey(), group);
+        }
         add(new AjaxPalettePanel.Builder<String>().setAllowOrder(true).build(
                 "dyngroups",
-                new ListModel<>(dynamics),
-                new ListModel<>(dynamics)).hideLabel().setEnabled(false).setOutputMarkupId(true));
+                new ListModel<>(CollectionUtils.collect(GroupableTO.class.cast(anyTO).getDynGroups(),
+                        new Transformer<String, String>() {
+
+                    @Override
+                    public String transform(final String input) {
+                        return allGroupsByKey.get(input).getName();
+                    }
+                }, new ArrayList<String>())),
+                new ListModel<>(CollectionUtils.collect(allGroups, new Transformer<GroupTO, String>() {
+
+                    @Override
+                    public String transform(final GroupTO input) {
+                        return input.getName();
+                    }
+                }, new ArrayList<String>()))).
+                hideLabel().setEnabled(false).setOutputMarkupId(true));
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Resources.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Resources.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Resources.java
index e014c7b..c22b094 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Resources.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Resources.java
@@ -40,7 +40,7 @@ public class Resources extends WizardStep {
         add(new AjaxPalettePanel.Builder<String>().build("resources",
                 new PropertyModel<List<String>>(entityTO, "resources") {
 
-            private static final long serialVersionUID = 1L;
+            private static final long serialVersionUID = 3799387950428254072L;
 
             @Override
             public List<String> getObject() {

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/ResultPage.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/ResultPage.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/ResultPage.java
index 0057c82..26ac475 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/ResultPage.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/ResultPage.java
@@ -26,10 +26,6 @@ import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.syncope.client.console.panels.WizardModalPanel;
 
-/**
- *
- * @param <T> item input type
- */
 public abstract class ResultPage<T extends Serializable> extends Panel implements WizardModalPanel<T> {
 
     private static final long serialVersionUID = -1619945285130369086L;

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
index c80247e..7133b16 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/any/Roles.java
@@ -19,6 +19,7 @@
 package org.apache.syncope.client.console.wizards.any;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.syncope.client.console.rest.RoleRestClient;
@@ -38,8 +39,9 @@ public class Roles extends WizardStep {
     public <T extends AnyTO> Roles(final UserTO entityTO) {
         this.setOutputMarkupId(true);
 
-        final ArrayList<String> allRoles = CollectionUtils.collect(new RoleRestClient().list(),
+        List<String> allRoles = CollectionUtils.collect(new RoleRestClient().list(),
                 EntityTOUtils.<RoleTO>keyTransformer(), new ArrayList<String>());
+        Collections.sort(allRoles);
 
         add(new AjaxPalettePanel.Builder<String>().build("roles",
                 new PropertyModel<List<String>>(entityTO, "roles"),

http://git-wip-us.apache.org/repos/asf/syncope/blob/f8ffa6c2/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/MappingManagerImpl.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/MappingManagerImpl.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/MappingManagerImpl.java
index a5cd9d6..b890f50 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/MappingManagerImpl.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/MappingManagerImpl.java
@@ -621,7 +621,7 @@ public class MappingManagerImpl implements MappingManager {
                 for (Any<?> any : anys) {
                     AnyUtils anyUtils = anyUtilsFactory.getInstance(any);
                     PlainAttrValue attrValue = anyUtils.newPlainAttrValue();
-                    attrValue.setStringValue(any.getKey().toString());
+                    attrValue.setStringValue(any.getKey());
                     values.add(attrValue);
                 }
                 break;