Lior Vernia has uploaded a new change for review. Change subject: webadmin: Changed bond list models to hold String ......................................................................
webadmin: Changed bond list models to hold String The models all used to hold VdsNetworkInterface entities, but only ever used the NICs' names, so they really should have held String entities all along. This will facilitate adding new bonds in following patches. Change-Id: I4ede413e9c6fdc4b117eb10d6e7ff580f65324d1 Signed-off-by: Lior Vernia <lver...@redhat.com> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostBondInterfaceModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksAddBondModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksEditBondModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java 6 files changed, 22 insertions(+), 25 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/79/13679/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostBondInterfaceModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostBondInterfaceModel.java index 85e225e..bf5f322 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostBondInterfaceModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostBondInterfaceModel.java @@ -5,9 +5,9 @@ import org.ovirt.engine.core.common.businessentities.network.Network; import org.ovirt.engine.core.common.businessentities.network.NetworkBootProtocol; +import org.ovirt.engine.core.common.utils.LexoNumericComparator; import org.ovirt.engine.core.compat.NGuid; import org.ovirt.engine.core.compat.RefObject; -import org.ovirt.engine.ui.uicommonweb.Linq; import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider; import org.ovirt.engine.ui.uicommonweb.models.EntityModel; import org.ovirt.engine.ui.uicommonweb.models.ListModel; @@ -178,7 +178,7 @@ setAddress(new EntityModel()); setSubnet(new EntityModel()); setGateway(new EntityModel()); - setBond(new SortedListModel(new Linq.InterfaceComparator())); + setBond(new SortedListModel(new LexoNumericComparator())); setNetwork(new ListModel()); setBootProtocolAvailable(true); setBondingOptions(new ListModel()); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java index e26d541..0541c34 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java @@ -1410,8 +1410,8 @@ // allocate a new bond name, edit the existing one: { innerBondModel.getBond() - .setItems(new ArrayList<VdsNetworkInterface>(Arrays.asList(new VdsNetworkInterface[] { bond }))); - innerBondModel.getBond().setSelectedItem(bond); + .setItems(new ArrayList<String>(Arrays.asList(new String[] { bond.getName() }))); + innerBondModel.getBond().setSelectedItem(bond.getName()); innerBondModel.getBond().setIsChangable(false); hostInterfaceListModel.PostBond(hostInterfaceListModel, innerBondModel, @@ -1432,9 +1432,13 @@ List<VdsNetworkInterface> bonds = (List<VdsNetworkInterface>) ((VdcQueryReturnValue) ReturnValue1).getReturnValue(); - bModel.getBond().setItems(bonds); + List<String> bondNames = new ArrayList<String>(); + for (VdsNetworkInterface bond : bonds) { + bondNames.add(bond.getName()); + } + bModel.getBond().setItems(bondNames); // ((List<Interface>)model.Bond.Options).Sort(a => a.name); - bModel.getBond().setSelectedItem(Linq.FirstOrDefault(bonds)); + bModel.getBond().setSelectedItem(Linq.FirstOrDefault(bondNames)); boolean hasManagement = false; for (VdsNetworkInterface innerItem : innerHostInterfaceListModel.getSelectedItemsWithVlans()) { @@ -1608,7 +1612,7 @@ } parameters.setBootProtocol(model.getBootProtocol()); - parameters.setBondName(((VdsNetworkInterface) model.getBond().getSelectedItem()).getName()); + parameters.setBondName((String) model.getBond().getSelectedItem()); if (model.getIsStaticAddress()) { @@ -1673,7 +1677,7 @@ // }; AddBondParameters parameters = new AddBondParameters(host.getId(), - ((VdsNetworkInterface) model.getBond().getSelectedItem()).getName(), + (String) model.getBond().getSelectedItem(), net, nics); Map.Entry<String, EntityModel> bondingOption; diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java index a647e4f..d673780 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostSetupNetworksModel.java @@ -10,6 +10,7 @@ import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VdcReturnValueBase; import org.ovirt.engine.core.common.businessentities.VDS; +import org.ovirt.engine.core.common.businessentities.network.Bond; import org.ovirt.engine.core.common.businessentities.network.Network; import org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface; import org.ovirt.engine.core.common.queries.IdQueryParameters; @@ -380,7 +381,7 @@ if (operation.isNullOperation()) { return; } else if (operation == NetworkOperation.BOND_WITH) { - List<VdsNetworkInterface> freeBonds = getFreeBonds(); + List<String> freeBonds = getFreeBonds(); if (freeBonds.isEmpty()) { popupWindow = new ConfirmationModel(); popupWindow.setTitle(ConstantsManager.getInstance().getConstants().errorTitle()); @@ -395,7 +396,7 @@ @Override public void ExecuteCommand(UICommand command) { sourceListModel.setConfirmWindow(null); - VdsNetworkInterface bond = (VdsNetworkInterface) bondPopup.getBond().getSelectedItem(); + VdsNetworkInterface bond = new Bond((String) bondPopup.getBond().getSelectedItem()); setBondOptions(bond, bondPopup); NetworkInterfaceModel nic1 = (NetworkInterfaceModel) networkCommand.getOp1(); NetworkInterfaceModel nic2 = (NetworkInterfaceModel) networkCommand.getOp2(); @@ -468,11 +469,11 @@ } - private List<VdsNetworkInterface> getFreeBonds() { - List<VdsNetworkInterface> freeBonds = new ArrayList<VdsNetworkInterface>(); + private List<String> getFreeBonds() { + List<String> freeBonds = new ArrayList<String>(); for (VdsNetworkInterface bond : allBonds) { if (!nicMap.containsKey(bond.getName())) { - freeBonds.add(bond); + freeBonds.add(bond.getName()); } } return freeBonds; diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksAddBondModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksAddBondModel.java index 567e67a..1dcba84 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksAddBondModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksAddBondModel.java @@ -3,12 +3,11 @@ import java.util.List; import org.ovirt.engine.core.common.businessentities.network.NetworkBootProtocol; -import org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface; import org.ovirt.engine.ui.uicompat.ConstantsManager; public class SetupNetworksAddBondModel extends SetupNetworksBondModel { - public SetupNetworksAddBondModel(List<VdsNetworkInterface> freeBonds) { + public SetupNetworksAddBondModel(List<String> freeBonds) { setTitle(ConstantsManager.getInstance().getConstants().createNewBondTitle()); setBootProtocol(NetworkBootProtocol.NONE); getBond().setItems(freeBonds); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksEditBondModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksEditBondModel.java index 5cfe975..b492e8c 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksEditBondModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/SetupNetworksEditBondModel.java @@ -17,9 +17,9 @@ // bond name getBond().setIsChangable(false); - List<VdsNetworkInterface> bondName = Arrays.asList(bond); + List<String> bondName = Arrays.asList(bond.getName()); getBond().setItems(bondName); - getBond().setSelectedItem(bond); + getBond().setSelectedItem(bond.getName()); // bond options String bondOptions = bond.getBondOptions(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java index 5d6ba7d..5d5fb30 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/host/HostBondPopupView.java @@ -2,7 +2,6 @@ import org.ovirt.engine.core.common.businessentities.network.Network; import org.ovirt.engine.core.common.businessentities.network.NetworkBootProtocol; -import org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface; import org.ovirt.engine.core.compat.KeyValuePairCompat; import org.ovirt.engine.ui.common.view.popup.AbstractModelBoundPopupView; import org.ovirt.engine.ui.common.widget.Align; @@ -119,13 +118,7 @@ public HostBondPopupView(EventBus eventBus, ApplicationResources resources, final ApplicationConstants constants) { super(eventBus, resources); - bondEditor = new ListModelListBoxEditor<Object>(new NullSafeRenderer<Object>() { - @Override - protected String renderNullSafe(Object object) { - return ((VdsNetworkInterface) object).getName(); - } - - }); + bondEditor = new ListModelListBoxEditor<Object>(); networkEditor = new ListModelListBoxEditor<Object>(new NullSafeRenderer<Object>() { @Override protected String renderNullSafe(Object object) { -- To view, visit http://gerrit.ovirt.org/13679 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I4ede413e9c6fdc4b117eb10d6e7ff580f65324d1 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