Alona Kaplan has uploaded a new change for review. Change subject: webadmin: Edit host interfaces menu doesn't change by dc version(#838491) ......................................................................
webadmin: Edit host interfaces menu doesn't change by dc version(#838491) https://bugzilla.redhat.com/838491 When fixing 838491 overriden setEntity (that return if entity id wasn't changed) was removed from HostInterfaceListModel. Removing it caused the HostInterfaceListModel to be refreshed every search cycle. Change-Id: I7c7a60178feab0d18e0fb51ab556bca50ba04353 Signed-off-by: Alona Kaplan <[email protected]> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java 1 file changed, 109 insertions(+), 79 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/73/7473/1 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 8faf0fc..89bcc48 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 @@ -164,6 +164,27 @@ return (VDS) super.getEntity(); } + public void setEntity(VDS value) + { + if (super.getEntity() != null) + { + VDS currentItem = ((VDS) super.getEntity()); + VDS newItem = value; + + Guid currentItemId = currentItem.getId().getValue(); + Guid newItemId = newItem.getId().getValue(); + + if (currentItemId.equals(newItemId)) + { + setEntity(value, false); + UpdateActionAvailability(); + return; + } + } + + super.setEntity(value); + } + private ArrayList<VdsNetworkInterface> GetSelectedItems(boolean withVlans) { ArrayList<VdsNetworkInterface> list = new ArrayList<VdsNetworkInterface>(); @@ -813,7 +834,7 @@ { Network network = networkDictionary.get(selectedNetworkName); - if (!StringHelper.isNullOrEmpty(item.getNetworkName())){ + if (!StringHelper.isNullOrEmpty(item.getNetworkName())) { networksToAdd.add(network); attachedNetworks.remove(network); @@ -990,83 +1011,89 @@ final StringBuilder tmpDefaultInterfaceName = new StringBuilder(); - AsyncDataProvider.GetInterfaceOptionsForEditNetwork(new AsyncQuery(this, new INewAsyncCallback() { + AsyncDataProvider.GetInterfaceOptionsForEditNetwork(new AsyncQuery(this, new INewAsyncCallback() { - @Override - public void OnSuccess(Object model, Object returnValue) { - ArrayList<VdsNetworkInterface> interfaces = (ArrayList<VdsNetworkInterface>) returnValue; + @Override + public void OnSuccess(Object model, Object returnValue) { + ArrayList<VdsNetworkInterface> interfaces = (ArrayList<VdsNetworkInterface>) returnValue; - String defaultInterfaceName = tmpDefaultInterfaceName.toString(); - managementModel.getInterface().setItems(interfaces); - managementModel.getInterface() - .setSelectedItem(Linq.FindInterfaceByName(Linq.VdsNetworkInterfaceListToBase(interfaces), - defaultInterfaceName)); - if (item.getBonded() != null && item.getBonded().equals(true)) + String defaultInterfaceName = tmpDefaultInterfaceName.toString(); + managementModel.getInterface().setItems(interfaces); + managementModel.getInterface() + .setSelectedItem(Linq.FindInterfaceByName(Linq.VdsNetworkInterfaceListToBase(interfaces), + defaultInterfaceName)); + if (item.getBonded() != null && item.getBonded().equals(true)) + { + managementModel.getInterface().setTitle(ConstantsManager.getInstance() + .getConstants() + .interfaceListTitle()); + managementModel.getInterface() + .getSelectedItemChangedEvent() + .addListener(hostInterfaceListModel); + } + managementModel.getCheckConnectivity().setIsAvailable(true); + managementModel.getCheckConnectivity().setIsChangable(true); + managementModel.getCheckConnectivity().setEntity(item.getIsManagement()); // currently, always + // should be + // true + + managementModel.getBondingOptions().setIsAvailable(false); + if (item.getBonded() != null && item.getBonded().equals(true)) + { + managementModel.getBondingOptions().setIsAvailable(true); + Map.Entry<String, EntityModel> defaultItem = null; + RefObject<Map.Entry<String, EntityModel>> tempRef_defaultItem = + new RefObject<Map.Entry<String, EntityModel>>(defaultItem); + ArrayList<Map.Entry<String, EntityModel>> list = + DataProvider.GetBondingOptionList(tempRef_defaultItem); + defaultItem = tempRef_defaultItem.argvalue; + Map.Entry<String, EntityModel> selectBondingOpt = + new KeyValuePairCompat<String, EntityModel>(); + boolean containsSelectBondingOpt = false; + managementModel.getBondingOptions().setItems(list); + for (int i = 0; i < list.size(); i++) + { + if (StringHelper.stringsEqual(list.get(i).getKey(), item.getBondOptions())) { - managementModel.getInterface().setTitle(ConstantsManager.getInstance() - .getConstants() - .interfaceListTitle()); - managementModel.getInterface().getSelectedItemChangedEvent().addListener(hostInterfaceListModel); + selectBondingOpt = list.get(i); + containsSelectBondingOpt = true; + break; } - managementModel.getCheckConnectivity().setIsAvailable(true); - managementModel.getCheckConnectivity().setIsChangable(true); - managementModel.getCheckConnectivity().setEntity(item.getIsManagement()); // currently, always should be - // true - - managementModel.getBondingOptions().setIsAvailable(false); - if (item.getBonded() != null && item.getBonded().equals(true)) - { - managementModel.getBondingOptions().setIsAvailable(true); - Map.Entry<String, EntityModel> defaultItem = null; - RefObject<Map.Entry<String, EntityModel>> tempRef_defaultItem = - new RefObject<Map.Entry<String, EntityModel>>(defaultItem); - ArrayList<Map.Entry<String, EntityModel>> list = - DataProvider.GetBondingOptionList(tempRef_defaultItem); - defaultItem = tempRef_defaultItem.argvalue; - Map.Entry<String, EntityModel> selectBondingOpt = - new KeyValuePairCompat<String, EntityModel>(); - boolean containsSelectBondingOpt = false; - managementModel.getBondingOptions().setItems(list); - for (int i = 0; i < list.size(); i++) - { - if (StringHelper.stringsEqual(list.get(i).getKey(), item.getBondOptions())) - { - selectBondingOpt = list.get(i); - containsSelectBondingOpt = true; - break; - } - } - if (containsSelectBondingOpt == false) - { - if (StringHelper.stringsEqual(item.getBondOptions(), DataProvider.GetDefaultBondingOption())) - { - selectBondingOpt = defaultItem; - } - else - { - selectBondingOpt = list.get(list.size() - 1); - EntityModel entityModel = selectBondingOpt.getValue(); - entityModel.setEntity(item.getBondOptions()); - } - } - managementModel.getBondingOptions().setSelectedItem(selectBondingOpt); - } - - UICommand tempVar = new UICommand("OnEditManagementNetworkConfirmation", hostInterfaceListModel); //$NON-NLS-1$ - tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok()); - tempVar.setIsDefault(true); - managementModel.getCommands().add(tempVar); - UICommand tempVar2 = new UICommand("Cancel", hostInterfaceListModel); //$NON-NLS-1$ - tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel()); - tempVar2.setIsCancel(true); - managementModel.getCommands().add(tempVar2); - } - }) ,getOriginalItems(), - item, - networkToEdit, - getEntity().getId(), - tmpDefaultInterfaceName); + if (containsSelectBondingOpt == false) + { + if (StringHelper.stringsEqual(item.getBondOptions(), + DataProvider.GetDefaultBondingOption())) + { + selectBondingOpt = defaultItem; + } + else + { + selectBondingOpt = list.get(list.size() - 1); + EntityModel entityModel = selectBondingOpt.getValue(); + entityModel.setEntity(item.getBondOptions()); + } + } + managementModel.getBondingOptions().setSelectedItem(selectBondingOpt); + } + + UICommand tempVar = + new UICommand("OnEditManagementNetworkConfirmation", hostInterfaceListModel); //$NON-NLS-1$ + tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok()); + tempVar.setIsDefault(true); + managementModel.getCommands().add(tempVar); + UICommand tempVar2 = new UICommand("Cancel", hostInterfaceListModel); //$NON-NLS-1$ + tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel()); + tempVar2.setIsCancel(true); + managementModel.getCommands().add(tempVar2); + + } + }), + getOriginalItems(), + item, + networkToEdit, + getEntity().getId(), + tmpDefaultInterfaceName); } }; @@ -1158,7 +1185,7 @@ UpdateNetworkToVdsParameters parameters = new UpdateNetworkToVdsParameters(getEntity().getId(), network, - new ArrayList<VdsNetworkInterface>(Arrays.asList(new VdsNetworkInterface[] {nic}))); + new ArrayList<VdsNetworkInterface>(Arrays.asList(new VdsNetworkInterface[] { nic }))); Map.Entry<String, EntityModel> bondingOption; if (model.getBondingOptions().getSelectedItem() != null) @@ -1736,7 +1763,8 @@ @Override public void Executed(FrontendActionAsyncResult result) { - HostInterfaceListModel hostInterfaceListModel = (HostInterfaceListModel) result.getState(); + HostInterfaceListModel hostInterfaceListModel = + (HostInterfaceListModel) result.getState(); VdcReturnValueBase returnValueBase = result.getReturnValue(); if (returnValueBase != null && returnValueBase.getSucceeded()) { @@ -2063,7 +2091,8 @@ @Override public void Executed(FrontendActionAsyncResult result) { - HostInterfaceListModel hostInterfaceListModel = (HostInterfaceListModel) result.getState(); + HostInterfaceListModel hostInterfaceListModel = + (HostInterfaceListModel) result.getState(); VdcReturnValueBase returnValueBase = result.getReturnValue(); if (returnValueBase != null && returnValueBase.getSucceeded()) { @@ -2160,7 +2189,7 @@ VdcReturnValueBase returnValueBase = result.getReturnValue(); if (returnValueBase != null && returnValueBase.getSucceeded()) { - EntityModel commitChanges =model.getCommitChanges(); + EntityModel commitChanges = model.getCommitChanges(); if ((Boolean) commitChanges.getEntity()) { SaveNetworkConfig(getEntity().getId(), @@ -2242,7 +2271,8 @@ && host.getstatus() != VDSStatus.NonResponsive && selectedItems.size() == 1 && selectedItem != null && selectedItem.getIsManagement()); - // Setup Networks is only available on 3.1 Clusters, all the other commands (except save network configuration) available only on less than 3.1 Clusters + // Setup Networks is only available on 3.1 Clusters, all the other commands (except save network configuration) + // available only on less than 3.1 Clusters if (host != null) { Version v31 = new Version(3, 1); boolean isLessThan31 = host.getvds_group_compatibility_version().compareTo(v31) < 0; @@ -2254,7 +2284,7 @@ getEditCommand().setIsAvailable(isLessThan31); getBondCommand().setIsAvailable(isLessThan31); getDetachCommand().setIsAvailable(isLessThan31); - getEditManagementNetworkCommand().setIsAvailable(isLessThan31) ; + getEditManagementNetworkCommand().setIsAvailable(isLessThan31); } } -- To view, visit http://gerrit.ovirt.org/7473 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7c7a60178feab0d18e0fb51ab556bca50ba04353 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alona Kaplan <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
