Alissa Bonas has uploaded a new change for review. Change subject: webadmin: fix tree view items sorting ......................................................................
webadmin: fix tree view items sorting Fixed items in the left tree being not sorted under each DC. The fix applies to: storage domains, networks and clusters. Change-Id: Icea17fd037ea4c97cc9a9976eda869b73e489f21 Bug-Url: https://bugzilla.redhat.com/1045380 Signed-off-by: Alissa Bonas <abo...@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/SystemTreeModel.java 2 files changed, 29 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/77/23077/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 b746471..4e034c7 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 @@ -1153,6 +1153,26 @@ } + public final static class StorageDomainComparator implements Comparator<StorageDomain>, Serializable { + private static final long serialVersionUID = 990203400356561587L; + private LexoNumericComparator lexoNumeric = new LexoNumericComparator(); + + @Override + public int compare(StorageDomain domain1, StorageDomain domain2) { + return lexoNumeric.compare(domain1.getName(), domain2.getName()); + } + } + + public final static class VDSGroupComparator implements Comparator<VDSGroup>, Serializable { + private static final long serialVersionUID = 990203400356561587L; + private LexoNumericComparator lexoNumeric = new LexoNumericComparator(); + + @Override + public int compare(VDSGroup cluster1, VDSGroup cluster2) { + return lexoNumeric.compare(cluster1.getName(), cluster2.getName()); + } + } + public final static class NetworkComparator implements Comparator<Network>, Serializable { private static final long serialVersionUID = 990203400356561587L; diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java index 6b56bca..e43c134 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/SystemTreeModel.java @@ -2,6 +2,7 @@ import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -22,6 +23,7 @@ import org.ovirt.engine.ui.frontend.AsyncQuery; import org.ovirt.engine.ui.frontend.Frontend; 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.uicompat.ConstantsManager; @@ -448,6 +450,8 @@ if (storages != null && storages.size() > 0) { + //sort by name first + Collections.sort(storages, new Linq.StorageDomainComparator()); for (StorageDomain storage : storages) { SystemTreeItemModel storageItem = new SystemTreeItemModel(); @@ -469,6 +473,8 @@ List<Network> dcNetworks = getNetworkMap().get(getDataCenters().get(count).getId()); if (dcNetworks != null) { + //sort by name first + Collections.sort(dcNetworks, new Linq.NetworkComparator()); for (Network network : dcNetworks) { SystemTreeItemModel networkItem = new SystemTreeItemModel(); @@ -496,9 +502,10 @@ if (getClusterMap().containsKey(getDataCenters().get(count).getId())) { - for (VDSGroup cluster : getClusterMap().get(getDataCenters().get(count).getId())) + List<VDSGroup> clusters = getClusterMap().get(getDataCenters().get(count).getId()); + Collections.sort(clusters, new Linq.VDSGroupComparator()); + for (VDSGroup cluster : clusters) { - SystemTreeItemModel clusterItem = new SystemTreeItemModel(); clusterItem.setType(cluster.supportsGlusterService() ? SystemTreeItemType.Cluster_Gluster : SystemTreeItemType.Cluster); -- To view, visit http://gerrit.ovirt.org/23077 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Icea17fd037ea4c97cc9a9976eda869b73e489f21 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alissa Bonas <abo...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches