Eliraz Levi has uploaded a new change for review. Change subject: webadmin: adding sync all networks button ......................................................................
webadmin: adding sync all networks button Adding new button to SubTabHostInterface. The button will allow to sync all host's networks at once by calling SyncAllHostNetworks Vdc command Change-Id: Ic8ade04016cfe0cec9cb8190637dac7983ec262a Bug-Url: https://bugzilla.redhat.com/1194297 Signed-off-by: Eliraz Levi <el...@redhat.com> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostInterfaceListModel.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/host/SubTabHostInterfaceView.java 3 files changed, 112 insertions(+), 69 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/24/42024/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 3d7c122..f687c33 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 @@ -14,6 +14,7 @@ import org.ovirt.engine.core.common.action.UpdateNetworkToVdsParameters; import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.action.VdcReturnValueBase; +import org.ovirt.engine.core.common.action.VdsActionParameters; import org.ovirt.engine.core.common.businessentities.VDS; import org.ovirt.engine.core.common.businessentities.VDSStatus; import org.ovirt.engine.core.common.businessentities.comparators.NameableComparator; @@ -152,6 +153,16 @@ onPropertyChanged(new PropertyChangedEventArgs("isSelectionAvailable")); //$NON-NLS-1$ } } + + public UICommand getSyncAllHostNetworksCommand() { + return privateSyncAllHostNetworksCommand; + } + + public void setSyncAllHostNetworksCommand(UICommand privateSyncAllHostNetworkCommand) { + this.privateSyncAllHostNetworksCommand = privateSyncAllHostNetworkCommand; + } + + private UICommand privateSyncAllHostNetworksCommand; @Override public Collection getItems() @@ -334,6 +345,7 @@ setDetachCommand(new UICommand("Detach", this)); //$NON-NLS-1$ setSaveNetworkConfigCommand(new UICommand("SaveNetworkConfig", this)); //$NON-NLS-1$ setSetupNetworksCommand(new UICommand("SetupNetworks", this)); //$NON-NLS-1$ + setSyncAllHostNetworksCommand(new UICommand("SyncAllHostNetworks", this)); //$NON-NLS-1$ updateActionAvailability(); } @@ -914,7 +926,8 @@ } if (containsSelectBondingOpt == false) { - if (ObjectUtils.objectsEqual(item.getBondOptions(), AsyncDataProvider.getInstance().getDefaultBondingOption())) + if (ObjectUtils.objectsEqual(item.getBondOptions(), AsyncDataProvider.getInstance() + .getDefaultBondingOption())) { selectBondingOpt = defaultItem; } @@ -1003,79 +1016,82 @@ final StringBuilder tmpDefaultInterfaceName = new StringBuilder(); - AsyncDataProvider.getInstance().getInterfaceOptionsForEditNetwork(new AsyncQuery(this, new INewAsyncCallback() { + AsyncDataProvider.getInstance().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.findInterfaceByNetworkName(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().setIsChangeable(true); + String defaultInterfaceName = tmpDefaultInterfaceName.toString(); + managementModel.getInterface().setItems(interfaces); + managementModel.getInterface() + .setSelectedItem(Linq.findInterfaceByNetworkName(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().setIsChangeable(true); managementModel.getCheckConnectivity().setEntity(item.getIsManagement()); // currently, always - // should be - // true + // should be + // true - managementModel.getBondingOptions().setIsAvailable(false); - if (item.getBonded() != null && item.getBonded().equals(true)) - { - managementModel.getBondingOptions().setIsAvailable(true); - Map.Entry<String, EntityModel<String>> defaultItem = null; - RefObject<Map.Entry<String, EntityModel<String>>> tempRef_defaultItem = - new RefObject<Map.Entry<String, EntityModel<String>>>(defaultItem); - ArrayList<Map.Entry<String, EntityModel<String>>> list = - AsyncDataProvider.getInstance().getBondingOptionList(tempRef_defaultItem); - defaultItem = tempRef_defaultItem.argvalue; - Map.Entry<String, EntityModel<String>> selectBondingOpt = - new KeyValuePairCompat<String, EntityModel<String>>(); - boolean containsSelectBondingOpt = false; - managementModel.getBondingOptions().setItems(list); - for (int i = 0; i < list.size(); i++) - { - if (ObjectUtils.objectsEqual(list.get(i).getKey(), item.getBondOptions())) + managementModel.getBondingOptions().setIsAvailable(false); + if (item.getBonded() != null && item.getBonded().equals(true)) { - selectBondingOpt = list.get(i); - containsSelectBondingOpt = true; - break; + managementModel.getBondingOptions().setIsAvailable(true); + Map.Entry<String, EntityModel<String>> defaultItem = null; + RefObject<Map.Entry<String, EntityModel<String>>> tempRef_defaultItem = + new RefObject<Map.Entry<String, EntityModel<String>>>(defaultItem); + ArrayList<Map.Entry<String, EntityModel<String>>> list = + AsyncDataProvider.getInstance().getBondingOptionList(tempRef_defaultItem); + defaultItem = tempRef_defaultItem.argvalue; + Map.Entry<String, EntityModel<String>> selectBondingOpt = + new KeyValuePairCompat<String, EntityModel<String>>(); + boolean containsSelectBondingOpt = false; + managementModel.getBondingOptions().setItems(list); + for (int i = 0; i < list.size(); i++) + { + if (ObjectUtils.objectsEqual(list.get(i).getKey(), item.getBondOptions())) + { + selectBondingOpt = list.get(i); + containsSelectBondingOpt = true; + break; + } + } + if (containsSelectBondingOpt == false) + { + if (ObjectUtils.objectsEqual(item.getBondOptions(), + AsyncDataProvider.getInstance().getDefaultBondingOption())) + { + selectBondingOpt = defaultItem; + } + else + { + selectBondingOpt = list.get(list.size() - 1); + EntityModel<String> entityModel = selectBondingOpt.getValue(); + entityModel.setEntity(item.getBondOptions()); + } + } + managementModel.getBondingOptions().setSelectedItem(selectBondingOpt); } + + UICommand tempVar = + UICommand.createDefaultOkUiCommand("OnEditManagementNetworkConfirmation", hostInterfaceListModel); //$NON-NLS-1$ + managementModel.getCommands().add(tempVar); + UICommand tempVar2 = UICommand.createCancelUiCommand("Cancel", hostInterfaceListModel); //$NON-NLS-1$ + managementModel.getCommands().add(tempVar2); + } - if (containsSelectBondingOpt == false) - { - if (ObjectUtils.objectsEqual(item.getBondOptions(), - AsyncDataProvider.getInstance().getDefaultBondingOption())) - { - selectBondingOpt = defaultItem; - } - else - { - selectBondingOpt = list.get(list.size() - 1); - EntityModel<String> entityModel = selectBondingOpt.getValue(); - entityModel.setEntity(item.getBondOptions()); - } - } - managementModel.getBondingOptions().setSelectedItem(selectBondingOpt); - } - - UICommand tempVar = - UICommand.createDefaultOkUiCommand("OnEditManagementNetworkConfirmation", hostInterfaceListModel); //$NON-NLS-1$ - managementModel.getCommands().add(tempVar); - UICommand tempVar2 = UICommand.createCancelUiCommand("Cancel", hostInterfaceListModel); //$NON-NLS-1$ - managementModel.getCommands().add(tempVar2); - - } - }), + }), getOriginalItems(), item, networkToEdit, @@ -1464,7 +1480,8 @@ { if (interfaceWithNetwork != null && interfaceWithNetwork.getIsManagement()) { - UICommand tempVar2 = UICommand.createDefaultOkUiCommand("OnEditManagementNetworkConfirmation_Bond", hostInterfaceListModel); //$NON-NLS-1$ + UICommand tempVar2 = + UICommand.createDefaultOkUiCommand("OnEditManagementNetworkConfirmation_Bond", hostInterfaceListModel); //$NON-NLS-1$ innerBondModel.getCommands().add(tempVar2); UICommand tempVar3 = UICommand.createCancelUiCommand("Cancel", hostInterfaceListModel); //$NON-NLS-1$ innerBondModel.getCommands().add(tempVar3); @@ -1608,7 +1625,7 @@ AddBondParameters parameters = new AddBondParameters(host.getId(), - model.getBond().getSelectedItem(), + model.getBond().getSelectedItem(), net, nics); Map.Entry<String, EntityModel<String>> bondingOption; @@ -2217,6 +2234,19 @@ return false; } + public void syncAllHostNetworks() { + Frontend.getInstance().runAction(VdcActionType.SyncAllHostNetworks, + new VdsActionParameters(getEntity().getId()), + new IFrontendActionAsyncCallback() { + @Override + public void executed(FrontendActionAsyncResult result) { + + } + }, + null); + + } + @Override public void executeCommand(UICommand command) { @@ -2246,6 +2276,9 @@ { saveNetworkConfig(); } + else if (command == getSyncAllHostNetworksCommand()) { + syncAllHostNetworks(); + } else if ("OnSave".equals(command.getName())) //$NON-NLS-1$ { diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java index bce3257..6f0b46b 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java @@ -2383,6 +2383,9 @@ @DefaultStringValue("Setup Host Networks") String setupHostNetworksInterface(); + @DefaultStringValue("Sync All Networks") + String syncAllHostNetworks(); + @DefaultStringValue("Date Created") String dateCreatedInterface(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/host/SubTabHostInterfaceView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/host/SubTabHostInterfaceView.java index ac84584..b73a512 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/host/SubTabHostInterfaceView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/host/SubTabHostInterfaceView.java @@ -143,6 +143,13 @@ } }); + table.addActionButton(new WebAdminButtonDefinition<HostInterfaceLineModel>(constants.syncAllHostNetworks()) { + @Override + protected UICommand resolveCommand() { + return getDetailModel().getSyncAllHostNetworksCommand(); + } + }); + // The table items are in the form, so the table itself will never have items, so don't display the 'empty // message' table.table.setEmptyTableWidget(null); -- To view, visit https://gerrit.ovirt.org/42024 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic8ade04016cfe0cec9cb8190637dac7983ec262a Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Eliraz Levi <el...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches