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 2017/07/13 08:11:16 UTC

[1/2] syncope git commit: Keep resource provision list order after editing for SYNCOPE-1154

Repository: syncope
Updated Branches:
  refs/heads/2_0_X a8c813a2b -> b683a7683
  refs/heads/master bd6f46e9d -> 13f9e9b9b


Keep resource provision list order after editing for SYNCOPE-1154


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

Branch: refs/heads/2_0_X
Commit: b683a76836c1fa19170bfbf85c6330c644f7c506
Parents: a8c813a
Author: Matteo Alessandroni <ma...@tirasa.net>
Authored: Wed Jul 12 09:20:42 2017 +0200
Committer: Matteo Alessandroni <ma...@tirasa.net>
Committed: Thu Jul 13 10:08:47 2017 +0200

----------------------------------------------------------------------
 .../client/console/rest/AnyTypeRestClient.java  |  4 ++--
 .../resources/ResourceProvisionPanel.java       | 25 +++++++++++++++++---
 2 files changed, 24 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/b683a768/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
index f422c2b..86d27c1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
@@ -75,7 +75,7 @@ public class AnyTypeRestClient extends BaseRestClient {
         getService(AnyTypeService.class).delete(key);
     }
 
-    private static class AnyTypeComparator implements Comparator<AnyTypeTO>, Serializable {
+    public static class AnyTypeComparator implements Comparator<AnyTypeTO>, Serializable {
 
         private static final long serialVersionUID = -8227715253094467138L;
 
@@ -97,7 +97,7 @@ public class AnyTypeRestClient extends BaseRestClient {
         }
     }
 
-    private static class AnyTypeKeyComparator implements Comparator<String>, Serializable {
+    public static class AnyTypeKeyComparator implements Comparator<String>, Serializable {
 
         private static final long serialVersionUID = -7778622183107320760L;
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/b683a768/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
index 28b4605..33e254a 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
@@ -21,6 +21,8 @@ package org.apache.syncope.client.console.wizards.resources;
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.List;
 import org.apache.commons.collections4.IterableUtils;
 import org.apache.commons.collections4.IteratorUtils;
@@ -33,6 +35,7 @@ import org.apache.syncope.client.console.pages.BasePage;
 import org.apache.syncope.client.console.panels.AbstractModalPanel;
 import org.apache.syncope.client.console.panels.ListViewPanel;
 import org.apache.syncope.client.console.panels.ListViewPanel.ListViewReload;
+import org.apache.syncope.client.console.rest.AnyTypeRestClient;
 import org.apache.syncope.client.console.rest.ConnectorRestClient;
 import org.apache.syncope.client.console.rest.ResourceRestClient;
 import org.apache.syncope.client.console.wicket.ajax.form.IndicatorAjaxFormComponentUpdatingBehavior;
@@ -193,7 +196,7 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
 
             @Override
             protected void customActionCallback(final AjaxRequestTarget target) {
-                // change modal foter visibility
+                // change modal footer visibility
                 send(ResourceProvisionPanel.this, Broadcast.BUBBLE, new BaseModal.ChangeFooterVisibilityEvent(target));
             }
 
@@ -202,7 +205,7 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
                 ResourceProvisionPanel.this.aboutRealmProvison.setVisible(true);
                 target.add(ResourceProvisionPanel.this.aboutRealmProvison);
 
-                // change modal foter visibility
+                // change modal footer visibility
                 send(ResourceProvisionPanel.this, Broadcast.BUBBLE, new BaseModal.ChangeFooterVisibilityEvent(target));
             }
 
@@ -211,11 +214,17 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
                 ResourceProvisionPanel.this.aboutRealmProvison.setVisible(true);
                 target.add(ResourceProvisionPanel.this.aboutRealmProvison);
 
-                // change modal foter visibility
+                // keep list ordered - SYNCOPE-1154
+                sortProvisionList();
+
+                // change modal footer visibility
                 send(ResourceProvisionPanel.this, Broadcast.BUBBLE, new BaseModal.ChangeFooterVisibilityEvent(target));
             }
         };
 
+        // keep list ordered - SYNCOPE-1154
+        sortProvisionList();
+
         builder.setItems(resourceTO.getProvisions());
         builder.includes("anyType", "objectClass", "auxClasses");
         builder.setReuseItem(false);
@@ -349,6 +358,16 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
         ((BasePage) pageRef.getPage()).getNotificationPanel().refresh(target);
     }
 
+    private void sortProvisionList() {
+        Collections.sort(resourceTO.getProvisions(), new Comparator<ProvisionTO>() {
+
+            @Override
+            public int compare(final ProvisionTO o1, final ProvisionTO o2) {
+                return new AnyTypeRestClient.AnyTypeKeyComparator().compare(o1.getAnyType(), o2.getAnyType());
+            }
+        });
+    }
+
     @Override
     public void onEvent(final IEvent<?> event) {
         if (event.getPayload() instanceof AjaxWizard.NewItemActionEvent) {


[2/2] syncope git commit: Keep resource provision list order after editing for SYNCOPE-1154 - This closes #53

Posted by il...@apache.org.
Keep resource provision list order after editing for SYNCOPE-1154 - This closes #53


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

Branch: refs/heads/master
Commit: 13f9e9b9b34659ef36ce3631b7e26073e72125e1
Parents: bd6f46e
Author: Matteo Alessandroni <ma...@tirasa.net>
Authored: Wed Jul 12 09:20:42 2017 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Thu Jul 13 10:10:41 2017 +0200

----------------------------------------------------------------------
 .../client/console/rest/AnyTypeRestClient.java  |  4 ++--
 .../resources/ResourceProvisionPanel.java       | 25 +++++++++++++++++---
 2 files changed, 24 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/13f9e9b9/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
index f422c2b..86d27c1 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/AnyTypeRestClient.java
@@ -75,7 +75,7 @@ public class AnyTypeRestClient extends BaseRestClient {
         getService(AnyTypeService.class).delete(key);
     }
 
-    private static class AnyTypeComparator implements Comparator<AnyTypeTO>, Serializable {
+    public static class AnyTypeComparator implements Comparator<AnyTypeTO>, Serializable {
 
         private static final long serialVersionUID = -8227715253094467138L;
 
@@ -97,7 +97,7 @@ public class AnyTypeRestClient extends BaseRestClient {
         }
     }
 
-    private static class AnyTypeKeyComparator implements Comparator<String>, Serializable {
+    public static class AnyTypeKeyComparator implements Comparator<String>, Serializable {
 
         private static final long serialVersionUID = -7778622183107320760L;
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/13f9e9b9/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java b/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
index 28b4605..33e254a 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/wizards/resources/ResourceProvisionPanel.java
@@ -21,6 +21,8 @@ package org.apache.syncope.client.console.wizards.resources;
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.List;
 import org.apache.commons.collections4.IterableUtils;
 import org.apache.commons.collections4.IteratorUtils;
@@ -33,6 +35,7 @@ import org.apache.syncope.client.console.pages.BasePage;
 import org.apache.syncope.client.console.panels.AbstractModalPanel;
 import org.apache.syncope.client.console.panels.ListViewPanel;
 import org.apache.syncope.client.console.panels.ListViewPanel.ListViewReload;
+import org.apache.syncope.client.console.rest.AnyTypeRestClient;
 import org.apache.syncope.client.console.rest.ConnectorRestClient;
 import org.apache.syncope.client.console.rest.ResourceRestClient;
 import org.apache.syncope.client.console.wicket.ajax.form.IndicatorAjaxFormComponentUpdatingBehavior;
@@ -193,7 +196,7 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
 
             @Override
             protected void customActionCallback(final AjaxRequestTarget target) {
-                // change modal foter visibility
+                // change modal footer visibility
                 send(ResourceProvisionPanel.this, Broadcast.BUBBLE, new BaseModal.ChangeFooterVisibilityEvent(target));
             }
 
@@ -202,7 +205,7 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
                 ResourceProvisionPanel.this.aboutRealmProvison.setVisible(true);
                 target.add(ResourceProvisionPanel.this.aboutRealmProvison);
 
-                // change modal foter visibility
+                // change modal footer visibility
                 send(ResourceProvisionPanel.this, Broadcast.BUBBLE, new BaseModal.ChangeFooterVisibilityEvent(target));
             }
 
@@ -211,11 +214,17 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
                 ResourceProvisionPanel.this.aboutRealmProvison.setVisible(true);
                 target.add(ResourceProvisionPanel.this.aboutRealmProvison);
 
-                // change modal foter visibility
+                // keep list ordered - SYNCOPE-1154
+                sortProvisionList();
+
+                // change modal footer visibility
                 send(ResourceProvisionPanel.this, Broadcast.BUBBLE, new BaseModal.ChangeFooterVisibilityEvent(target));
             }
         };
 
+        // keep list ordered - SYNCOPE-1154
+        sortProvisionList();
+
         builder.setItems(resourceTO.getProvisions());
         builder.includes("anyType", "objectClass", "auxClasses");
         builder.setReuseItem(false);
@@ -349,6 +358,16 @@ public class ResourceProvisionPanel extends AbstractModalPanel<Serializable> {
         ((BasePage) pageRef.getPage()).getNotificationPanel().refresh(target);
     }
 
+    private void sortProvisionList() {
+        Collections.sort(resourceTO.getProvisions(), new Comparator<ProvisionTO>() {
+
+            @Override
+            public int compare(final ProvisionTO o1, final ProvisionTO o2) {
+                return new AnyTypeRestClient.AnyTypeKeyComparator().compare(o1.getAnyType(), o2.getAnyType());
+            }
+        });
+    }
+
     @Override
     public void onEvent(final IEvent<?> event) {
         if (event.getPayload() instanceof AjaxWizard.NewItemActionEvent) {