Lior Vernia has uploaded a new change for review. Change subject: webadmin: Remove unsafe List casts from Networks subtabs ......................................................................
webadmin: Remove unsafe List casts from Networks subtabs Many of these unsafe casts existed, which would cause trouble now that columns are being sorted (and items are stored as SortedSet). Change-Id: Ifd4c8583ae872cee936eb9de689c1a8639ed73d5 Signed-off-by: Lior Vernia <lver...@redhat.com> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkClusterListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkHostListModel.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/networks/NetworkTemplateListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkVmListModel.java 5 files changed, 75 insertions(+), 111 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/69/28669/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkClusterListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkClusterListModel.java index 4b24f87..26617cf 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkClusterListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkClusterListModel.java @@ -43,6 +43,15 @@ setHelpTag(HelpTag.clusters); setHashName("clusters"); //$NON-NLS-1$ + setComparator(new Comparator<PairQueryable<VDSGroup, NetworkCluster>>() { + + @Override + public int compare(PairQueryable<VDSGroup, NetworkCluster> arg0, + PairQueryable<VDSGroup, NetworkCluster> arg1) { + return arg0.getFirst().getName().compareTo(arg1.getFirst().getName()); + } + }); + setManageCommand(new UICommand("Manage", this)); //$NON-NLS-1$ } @@ -60,8 +69,8 @@ private ClusterNetworkManageModel createManageList() { List<ClusterNetworkModel> networkManageModelList = new ArrayList<ClusterNetworkModel>(); - List<PairQueryable<VDSGroup, NetworkCluster>> items = - (List<PairQueryable<VDSGroup, NetworkCluster>>) getItems(); + Iterable<PairQueryable<VDSGroup, NetworkCluster>> items = + (Iterable<PairQueryable<VDSGroup, NetworkCluster>>) getItems(); for (PairQueryable<VDSGroup, NetworkCluster> item : items) { Network network = (Network) Cloner.clone(getEntity()); @@ -128,27 +137,13 @@ @Override public void onSuccess(Object model, Object ReturnValue) { - NetworkClusterListModel.this.setItems((List<PairQueryable<VDSGroup, NetworkCluster>>) ((VdcQueryReturnValue) ReturnValue).getReturnValue()); + setItems((Collection<PairQueryable<VDSGroup, NetworkCluster>>) ((VdcQueryReturnValue) ReturnValue).getReturnValue()); } }; IdQueryParameters params = new IdQueryParameters(getEntity().getId()); params.setRefresh(getIsQueryFirstTime()); Frontend.getInstance().runQuery(VdcQueryType.GetVdsGroupsAndNetworksByNetworkId, params, asyncQuery); - } - - @Override - public void setItems(Collection value) { - Collections.sort((List<PairQueryable<VDSGroup, NetworkCluster>>) value, - new Comparator<PairQueryable<VDSGroup, NetworkCluster>>() { - - @Override - public int compare(PairQueryable<VDSGroup, NetworkCluster> arg0, - PairQueryable<VDSGroup, NetworkCluster> arg1) { - return arg0.getFirst().getName().compareTo(arg1.getFirst().getName()); - } - }); - super.setItems(value); } @Override diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkHostListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkHostListModel.java index 060cab3..76cfcac 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkHostListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkHostListModel.java @@ -2,7 +2,6 @@ import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.Comparator; import java.util.List; @@ -25,7 +24,6 @@ import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; import org.ovirt.engine.ui.uicompat.external.StringUtils; -@SuppressWarnings("unused") public class NetworkHostListModel extends SearchableListModel { private UICommand setupNetworksCommand; @@ -37,6 +35,22 @@ setTitle(ConstantsManager.getInstance().getConstants().hostsTitle()); setHelpTag(HelpTag.hosts); setHashName("hosts"); //$NON-NLS-1$ + + setComparator(new Comparator<PairQueryable<VdsNetworkInterface, VDS>>() { + + @Override + public int compare(PairQueryable<VdsNetworkInterface, VDS> arg0, + PairQueryable<VdsNetworkInterface, VDS> arg1) { + int compareValue = + arg0.getSecond().getVdsGroupName().compareTo(arg1.getSecond().getVdsGroupName()); + + if (compareValue != 0) { + return compareValue; + } + + return arg0.getSecond().getName().compareTo(arg1.getSecond().getName()); + } + }); setSetupNetworksCommand(new UICommand("SetupNetworks", this)); //$NON-NLS-1$ @@ -79,7 +93,7 @@ } setItems(items); } else if (NetworkHostFilter.attached.equals(getViewFilterType())) { - initAttachedInterfaces((List<PairQueryable<VdsNetworkInterface, VDS>>) returnList); + initAttachedInterfaces((Collection<PairQueryable<VdsNetworkInterface, VDS>>) returnList); } } } @@ -97,7 +111,7 @@ setIsQueryFirstTime(false); } - private void initAttachedInterfaces(final List<PairQueryable<VdsNetworkInterface, VDS>> items) { + private void initAttachedInterfaces(final Collection<PairQueryable<VdsNetworkInterface, VDS>> items) { if (StringUtils.isEmpty(getEntity().getLabel()) || items.isEmpty()) { setItems(items); return; @@ -127,27 +141,6 @@ public Boolean isInterfaceAttachedByLabel(VdsNetworkInterface iface) { return attachedByLabelInterfaces != null && attachedByLabelInterfaces.contains(iface); - } - - @Override - public void setItems(Collection value) { - Collections.sort((List<PairQueryable<VdsNetworkInterface, VDS>>) value, - new Comparator<PairQueryable<VdsNetworkInterface, VDS>>() { - - @Override - public int compare(PairQueryable<VdsNetworkInterface, VDS> arg0, - PairQueryable<VdsNetworkInterface, VDS> arg1) { - int compareValue = - arg0.getSecond().getVdsGroupName().compareTo(arg1.getSecond().getVdsGroupName()); - - if (compareValue != 0) { - return compareValue; - } - - return arg0.getSecond().getName().compareTo(arg1.getSecond().getName()); - } - }); - super.setItems(value); } public void setupNetworks() { @@ -185,11 +178,15 @@ } private void updateActionAvailability() { - List<PairQueryable<VdsNetworkInterface, VDS>> selectedItems = + Collection<PairQueryable<VdsNetworkInterface, VDS>> selectedItems = getSelectedItems() != null ? getSelectedItems() : new ArrayList(); getSetupNetworksCommand().setIsExecutionAllowed(selectedItems.size() == 1 - && selectedItems.get(0).getSecond().getVdsGroupCompatibilityVersion().compareTo(Version.v3_1) >= 0); + && selectedItems.iterator() + .next() + .getSecond() + .getVdsGroupCompatibilityVersion() + .compareTo(Version.v3_1) >= 0); } @Override 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 44691f5..9cf8fd4 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 @@ -2,8 +2,6 @@ import java.util.Arrays; import java.util.Collection; -import java.util.Collections; -import java.util.List; import org.ovirt.engine.core.common.businessentities.network.Network; import org.ovirt.engine.core.common.businessentities.network.NetworkView; @@ -22,7 +20,6 @@ import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; -@SuppressWarnings("unused") public class NetworkProfileListModel extends SearchableListModel { private UICommand newCommand; @@ -33,6 +30,8 @@ setTitle(ConstantsManager.getInstance().getConstants().vnicProfilesTitle()); setHelpTag(HelpTag.profiles); setHashName("profiles"); //$NON-NLS-1$ + + setComparator(new Linq.VnicProfileViewComparator()); setNewCommand(new UICommand("New", this)); //$NON-NLS-1$ setEditCommand(new UICommand("Edit", this)); //$NON-NLS-1$ @@ -149,7 +148,7 @@ asyncQuery.asyncCallback = new INewAsyncCallback() { @Override public void onSuccess(Object model, Object returnValue) { - NetworkProfileListModel.this.setItems((List<VnicProfileView>) returnValue); + setItems((Collection<VnicProfileView>) returnValue); } }; AsyncDataProvider.getVnicProfilesByNetworkId(asyncQuery, getEntity().getId()); @@ -182,14 +181,6 @@ protected void selectedItemsChanged() { super.selectedItemsChanged(); updateActionAvailability(); - } - - @Override - public void setItems(Collection value) { - if (value != null) { - Collections.sort((List<VnicProfileView>) value, new Linq.VnicProfileViewComparator()); - } - super.setItems(value); } @Override diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkTemplateListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkTemplateListModel.java index d6a595e..adb5886 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkTemplateListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkTemplateListModel.java @@ -2,7 +2,6 @@ import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.Comparator; import java.util.List; @@ -22,7 +21,6 @@ import org.ovirt.engine.ui.uicommonweb.models.vms.RemoveVmTemplateInterfaceModel; import org.ovirt.engine.ui.uicompat.ConstantsManager; -@SuppressWarnings("unused") public class NetworkTemplateListModel extends SearchableListModel { private UICommand removeCommand; @@ -42,6 +40,22 @@ setTitle(ConstantsManager.getInstance().getConstants().templatesTitle()); setHelpTag(HelpTag.templates); setHashName("templates"); //$NON-NLS-1$ + + setComparator(new Comparator<PairQueryable<VmNetworkInterface, VmTemplate>>() { + + @Override + public int compare(PairQueryable<VmNetworkInterface, VmTemplate> paramT1, + PairQueryable<VmNetworkInterface, VmTemplate> paramT2) { + int compareValue = + paramT1.getSecond().getVdsGroupName().compareTo(paramT2.getSecond().getVdsGroupName()); + + if (compareValue != 0) { + return compareValue; + } + + return paramT1.getSecond().getName().compareTo(paramT2.getSecond().getName()); + } + }); setRemoveCommand(new UICommand("Remove", this)); //$NON-NLS-1$ updateActionAvailability(); @@ -75,30 +89,6 @@ } @Override - public void setItems(Collection value) { - if (value != null) { - List<PairQueryable<VmNetworkInterface, VmTemplate>> itemList = - (List<PairQueryable<VmNetworkInterface, VmTemplate>>) value; - Collections.sort(itemList, new Comparator<PairQueryable<VmNetworkInterface, VmTemplate>>() { - - @Override - public int compare(PairQueryable<VmNetworkInterface, VmTemplate> paramT1, - PairQueryable<VmNetworkInterface, VmTemplate> paramT2) { - int compareValue = - paramT1.getSecond().getVdsGroupName().compareTo(paramT2.getSecond().getVdsGroupName()); - - if (compareValue != 0) { - return compareValue; - } - - return paramT1.getSecond().getName().compareTo(paramT2.getSecond().getName()); - } - }); - } - super.setItems(value); - } - - @Override public void search() { if (getEntity() != null) @@ -121,7 +111,7 @@ @Override public void onSuccess(Object model, Object ReturnValue) { - NetworkTemplateListModel.this.setItems((List<PairQueryable<VmNetworkInterface, VmTemplate>>) ((VdcQueryReturnValue) ReturnValue).getReturnValue()); + setItems((Collection<PairQueryable<VmNetworkInterface, VmTemplate>>) ((VdcQueryReturnValue) ReturnValue).getReturnValue()); } }; diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkVmListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkVmListModel.java index 09cd0ed..7b929e0 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkVmListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/networks/NetworkVmListModel.java @@ -2,7 +2,6 @@ import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.Comparator; import java.util.List; @@ -26,7 +25,6 @@ import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs; -@SuppressWarnings("unused") public class NetworkVmListModel extends SearchableListModel { private UICommand removeCommand; @@ -36,6 +34,22 @@ setTitle(ConstantsManager.getInstance().getConstants().virtualMachinesTitle()); setHelpTag(HelpTag.virtual_machines); setHashName("virtual_machines"); //$NON-NLS-1$ + + setComparator(new Comparator<PairQueryable<VmNetworkInterface, VM>>() { + + @Override + public int compare(PairQueryable<VmNetworkInterface, VM> paramT1, + PairQueryable<VmNetworkInterface, VM> paramT2) { + int compareValue = + paramT1.getSecond().getVdsGroupName().compareTo(paramT2.getSecond().getVdsGroupName()); + + if (compareValue != 0) { + return compareValue; + } + + return paramT1.getSecond().getName().compareTo(paramT2.getSecond().getName()); + } + }); setRemoveCommand(new UICommand("Remove", this)); //$NON-NLS-1$ @@ -67,29 +81,6 @@ } @Override - public void setItems(Collection value) { - if (value != null) { - List<PairQueryable<VmNetworkInterface, VM>> itemList = (List<PairQueryable<VmNetworkInterface, VM>>) value; - Collections.sort(itemList, new Comparator<PairQueryable<VmNetworkInterface, VM>>() { - - @Override - public int compare(PairQueryable<VmNetworkInterface, VM> paramT1, - PairQueryable<VmNetworkInterface, VM> paramT2) { - int compareValue = - paramT1.getSecond().getVdsGroupName().compareTo(paramT2.getSecond().getVdsGroupName()); - - if (compareValue != 0) { - return compareValue; - } - - return paramT1.getSecond().getName().compareTo(paramT2.getSecond().getName()); - } - }); - } - super.setItems(value); - } - - @Override public void search() { if (getEntity() != null) { @@ -111,7 +102,7 @@ public void onSuccess(Object model, Object ReturnValue) { if (model.equals(getViewFilterType())) { - NetworkVmListModel.this.setItems((List<PairQueryable<VmNetworkInterface, VM>>) ((VdcQueryReturnValue) ReturnValue).getReturnValue()); + setItems((Collection<PairQueryable<VmNetworkInterface, VM>>) ((VdcQueryReturnValue) ReturnValue).getReturnValue()); } } }; @@ -137,7 +128,7 @@ private void updateActionAvailability() { ArrayList<VM> vms = new ArrayList<VM>(); - List<PairQueryable<VmNetworkInterface, VM>> selectedItems = + Iterable<PairQueryable<VmNetworkInterface, VM>> selectedItems = getSelectedItems() != null ? getSelectedItems() : new ArrayList(); for (PairQueryable<VmNetworkInterface, VM> item : selectedItems) { @@ -151,7 +142,7 @@ } private boolean canRemoveVnics() { - List<PairQueryable<VmNetworkInterface, VM>> selectedItems = + Iterable<PairQueryable<VmNetworkInterface, VM>> selectedItems = getSelectedItems() != null ? getSelectedItems() : new ArrayList(); for (PairQueryable<VmNetworkInterface, VM> pair : selectedItems) -- To view, visit http://gerrit.ovirt.org/28669 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ifd4c8583ae872cee936eb9de689c1a8639ed73d5 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Lior Vernia <lver...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches