Alona Kaplan has uploaded a new change for review.

Change subject: webadmin: sort vnic profiles tabs
......................................................................

webadmin: sort vnic profiles tabs

Vnic profile tabs (Main and Network->VnicProfile) should be sorted
according to- primary- network name, secondary- profile name.

Added a new VnicProfileComparator to Linq.

Change-Id: I13a13c881bca54daeca97f7bd5bae74e5b37bb90
Signed-off-by: Alona Kaplan <alkap...@redhat.com>
---
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/networks/NetworkProfileListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/profiles/VnicProfileListModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ProfileBehavior.java
4 files changed, 41 insertions(+), 20 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/74/17574/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 434c568..c375e8d 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.Network;
 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.VnicProfileView;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.compat.StringHelper;
 import org.ovirt.engine.core.compat.Version;
@@ -1103,6 +1104,25 @@
         }
     }
 
+    public final static class VnicProfileViewComparator implements 
Comparator<VnicProfileView>, Serializable {
+
+        private static final long serialVersionUID = 990203400356561587L;
+        private LexoNumericComparator lexoNumeric = new 
LexoNumericComparator();
+
+        @Override
+        public int compare(VnicProfileView vnicProfile1, VnicProfileView 
vnicProfile2) {
+            if (vnicProfile1 == null) {
+                return vnicProfile2 == null ? 0 : 1;
+            } else if (vnicProfile2 == null) {
+                return -1;
+            }
+
+            int retVal = lexoNumeric.compare(vnicProfile1.getNetworkName(), 
vnicProfile2.getNetworkName());
+
+            return retVal == 0 ? lexoNumeric.compare(vnicProfile1.getName(), 
vnicProfile2.getName()) : retVal;
+        }
+    }
+
     public final static class ClusterNetworkModelComparator implements 
Comparator<ClusterNetworkModel>, Serializable {
 
         private static final long serialVersionUID = -8571840939180248617L;
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkProfileListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkProfileListModel.java
index 934115f..f1d9c99 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkProfileListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkProfileListModel.java
@@ -1,6 +1,7 @@
 package org.ovirt.engine.ui.uicommonweb.models.networks;
 
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 import org.ovirt.engine.core.common.businessentities.network.NetworkView;
@@ -8,6 +9,7 @@
 import org.ovirt.engine.core.compat.StringHelper;
 import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
+import org.ovirt.engine.ui.uicommonweb.Linq;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel;
@@ -198,6 +200,14 @@
     }
 
     @Override
+    public void setItems(Iterable value) {
+        if (value != null) {
+            Collections.sort((List<VnicProfileView>) value, new 
Linq.VnicProfileViewComparator());
+        }
+        super.setItems(value);
+    }
+
+    @Override
     public void executeCommand(UICommand command) {
         super.executeCommand(command);
 
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/profiles/VnicProfileListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/profiles/VnicProfileListModel.java
index 85735fb..ab18c9e 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/profiles/VnicProfileListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/profiles/VnicProfileListModel.java
@@ -2,6 +2,7 @@
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 import org.ovirt.engine.core.common.businessentities.StoragePool;
@@ -305,6 +306,14 @@
     }
 
     @Override
+    public void setItems(Iterable value) {
+        if (value != null) {
+            Collections.sort((List<VnicProfileView>) value, new 
Linq.VnicProfileViewComparator());
+        }
+        super.setItems(value);
+    }
+
+    @Override
     protected String getListName() {
         return "VnicProfileListModel"; //$NON-NLS-1$
     }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ProfileBehavior.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ProfileBehavior.java
index 23c0252..d9e3ea9 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ProfileBehavior.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/ProfileBehavior.java
@@ -2,10 +2,8 @@
 
 import java.util.ArrayList;
 import java.util.Collections;
-import java.util.Comparator;
 import java.util.List;
 
-import 
org.ovirt.engine.core.common.businessentities.comparators.LexoNumericComparator;
 import org.ovirt.engine.core.common.businessentities.network.Network;
 import 
org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface;
 import org.ovirt.engine.core.common.businessentities.network.VnicProfileView;
@@ -13,6 +11,7 @@
 import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.IAsyncConverter;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
+import org.ovirt.engine.ui.uicommonweb.Linq;
 import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.models.ListModel;
 
@@ -51,24 +50,7 @@
                     vnicProfiles.add(null);
                 }
 
-                Collections.sort(vnicProfiles, new 
Comparator<VnicProfileView>() {
-
-                    private LexoNumericComparator lexoNumeric = new 
LexoNumericComparator();
-
-                    @Override
-                    public int compare(VnicProfileView profile1, 
VnicProfileView profile2) {
-                        if (profile1 == null) {
-                            return profile2 == null ? 0 : 1;
-                        } else if (profile2 == null) {
-                            return -1;
-                        }
-
-                        int retVal = 
lexoNumeric.compare(profile1.getNetworkName(), profile2.getNetworkName());
-
-                        return retVal == 0 ? 
lexoNumeric.compare(profile1.getName(), profile2.getName()) : retVal;
-                    }
-
-                });
+                Collections.sort(vnicProfiles, new 
Linq.VnicProfileViewComparator());
 
                 return vnicProfiles;
             }


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I13a13c881bca54daeca97f7bd5bae74e5b37bb90
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alona Kaplan <alkap...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to