Gilad Chaplik has uploaded a new change for review.

Change subject: webadmin: sort cluster policy list
......................................................................

webadmin: sort cluster policy list

first order cluster policies by pre-defined then lexicographically.

Change-Id: I46c5de299ea7d4d0cd53dc6538d25b8f7337d0e6
Bug-Url: https://bugzilla.redhat.com/994719
Signed-off-by: Gilad Chaplik <[email protected]>
---
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/Linq.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/scheduling/ClusterPolicyListModel.java
2 files changed, 18 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/71/18571/1

diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/Linq.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/Linq.java
index facd3dc..71b0d70 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/Linq.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/Linq.java
@@ -34,6 +34,7 @@
 import org.ovirt.engine.core.common.businessentities.network.NetworkInterface;
 import 
org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface;
 import 
org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface;
+import org.ovirt.engine.core.common.scheduling.ClusterPolicy;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.compat.StringHelper;
 import org.ovirt.engine.core.compat.Version;
@@ -1156,4 +1157,19 @@
         return filterProvidersByProvidedType(source, VdcObjectType.Network);
     }
 
+    /**
+     * pre-defined cluster policies should be ordered first, then order 
lexicographically
+     * @param list - cluster policy list
+     */
+    public final static class ClusterPolicyComparator implements 
Comparator<ClusterPolicy>, Serializable {
+        final LexoNumericComparator lexoNumeric = new LexoNumericComparator();
+
+        @Override
+        public int compare(ClusterPolicy cp1, ClusterPolicy cp2) {
+            if (cp1.isLocked() != cp2.isLocked()) {
+                return cp1.isLocked() ? -1 : 1;
+            }
+            return lexoNumeric.compare(cp1.getName(), cp2.getName());
+        }
+    }
 }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/scheduling/ClusterPolicyListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/scheduling/ClusterPolicyListModel.java
index 9443461..ec3e287 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/scheduling/ClusterPolicyListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/configure/scheduling/ClusterPolicyListModel.java
@@ -1,6 +1,7 @@
 package org.ovirt.engine.ui.uicommonweb.models.configure.scheduling;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 import org.ovirt.engine.core.common.action.VdcActionType;
@@ -126,6 +127,7 @@
                 ClusterPolicyListModel clusterPolicyListModel = 
(ClusterPolicyListModel) model;
                 ArrayList<ClusterPolicy> list =
                         (ArrayList<ClusterPolicy>) ((VdcQueryReturnValue) 
returnValue).getReturnValue();
+                Collections.sort(list, new Linq.ClusterPolicyComparator());
                 clusterPolicyListModel.setItems(list);
             }
         });


-- 
To view, visit http://gerrit.ovirt.org/18571
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I46c5de299ea7d4d0cd53dc6538d25b8f7337d0e6
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.3
Gerrit-Owner: Gilad Chaplik <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to