Lior Vernia has uploaded a new change for review. Change subject: webadmin: Fixed sorting in Cluster/Networks subtab ......................................................................
webadmin: Fixed sorting in Cluster/Networks subtab Sorting now treats numeric subsequences in network names as such. Change-Id: I8432b61ae79195a454eec50e5322182103f02527 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=920209 Signed-off-by: Lior Vernia <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java 1 file changed, 21 insertions(+), 5 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/49/13049/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java index b5ee95c..a392899 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterNetworkListModel.java @@ -17,6 +17,7 @@ import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; import org.ovirt.engine.core.common.queries.VdcQueryType; +import org.ovirt.engine.core.common.utils.LexoNumericComparator; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.compat.NGuid; import org.ovirt.engine.core.compat.StringHelper; @@ -78,10 +79,18 @@ private final Comparator<ClusterNetworkModel> networkComparator = new Comparator<ClusterNetworkModel>() { + LexoNumericComparator lexoNumeric = new LexoNumericComparator(); + @Override - public int compare(ClusterNetworkModel o1, ClusterNetworkModel o2) { + public int compare(ClusterNetworkModel model1, ClusterNetworkModel model2) { // management first - return o1.isManagement() ? -1 : o1.getNetworkName().compareTo(o2.getNetworkName()); + if (model1.isManagement()) { + return -1; + } else if (model2.isManagement()) { + return 1; + } + + return lexoNumeric.compare(model1.getNetworkName(), model2.getNetworkName()); } }; @@ -143,11 +152,18 @@ SearchableListModel searchableListModel = (SearchableListModel) model; ArrayList<Network> newItems = (ArrayList<Network>) ((VdcQueryReturnValue) ReturnValue).getReturnValue(); Collections.sort(newItems, new Comparator<Network>() { + private LexoNumericComparator lexoNumeric = new LexoNumericComparator(); + @Override - public int compare(Network o1, Network o2) { + public int compare(Network net1, Network net2) { // management first - return HostInterfaceListModel.ENGINE_NETWORK_NAME.equals(o1.getName()) ? -1 - : o1.getName().compareTo(o2.getName()); + if (net1.getName().equals(HostInterfaceListModel.ENGINE_NETWORK_NAME)) { + return -1; + } else if (net2.getName().equals(HostInterfaceListModel.ENGINE_NETWORK_NAME)) { + return 1; + } + + return lexoNumeric.compare(net1.getName(), net2.getName()); } }); searchableListModel.setItems(newItems); -- To view, visit http://gerrit.ovirt.org/13049 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8432b61ae79195a454eec50e5322182103f02527 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Lior Vernia <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
