Lior Vernia has uploaded a new change for review. Change subject: webadmin: Created model for Remove Provider Networks popup ......................................................................
webadmin: Created model for Remove Provider Networks popup Moved all the provider network removal logic into said class. Change-Id: Ifd86ef4149fe4886fba10c74bc15d243e90bdc15 Signed-off-by: Lior Vernia <lver...@redhat.com> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java A frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderRemoveNetworkModel.java M frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java 3 files changed, 107 insertions(+), 62 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/31/15031/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java index 6cdeadf..ea60154 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderNetworkListModel.java @@ -3,22 +3,12 @@ import java.util.ArrayList; import java.util.List; -import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters; -import org.ovirt.engine.core.common.action.VdcActionParametersBase; -import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.businessentities.Provider; -import org.ovirt.engine.core.common.businessentities.network.Network; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryType; -import org.ovirt.engine.core.compat.StringHelper; -import org.ovirt.engine.ui.frontend.Frontend; -import org.ovirt.engine.ui.uicommonweb.Linq; import org.ovirt.engine.ui.uicommonweb.UICommand; -import org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel; import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel; import org.ovirt.engine.ui.uicompat.ConstantsManager; -import org.ovirt.engine.ui.uicompat.FrontendMultipleActionAsyncResult; -import org.ovirt.engine.ui.uicompat.IFrontendMultipleActionAsyncCallback; public class ProviderNetworkListModel extends SearchableListModel { @@ -97,56 +87,12 @@ setWindow(new ProviderNewNetworkModel(this)); } - public void remove() { - if (getWindow() != null) { + public void remove() + { + if (getConfirmWindow() != null) { return; } - - ConfirmationModel model = new ConfirmationModel(); - setWindow(model); - model.setTitle(ConstantsManager.getInstance().getConstants().removeProviderTitle()); - model.setHashName("remove_provider"); //$NON-NLS-1$ - model.setMessage(ConstantsManager.getInstance().getConstants().providersMsg()); - - ArrayList<String> list = new ArrayList<String>(); - for (Network a : Linq.<Network> cast(getSelectedItems())) { - list.add(a.getName()); - } - model.setItems(list); - - UICommand tempVar = new UICommand("OnRemove", this); //$NON-NLS-1$ - tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok()); - tempVar.setIsDefault(true); - model.getCommands().add(tempVar); - UICommand tempVar2 = new UICommand("Cancel", this); //$NON-NLS-1$ - tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel()); - tempVar2.setIsCancel(true); - model.getCommands().add(tempVar2); - } - - public void onRemove() { - ConfirmationModel model = (ConfirmationModel) getWindow(); - - if (model.getProgress() != null) { - return; - } - - ArrayList<VdcActionParametersBase> parameters = new ArrayList<VdcActionParametersBase>(); - for (Network network : Linq.<Network> cast(getSelectedItems())) { - parameters.add(new AddNetworkStoragePoolParameters(network.getDataCenterId().getValue(), network)); - } - - model.startProgress(null); - - Frontend.RunMultipleAction(VdcActionType.RemoveNetwork, parameters, - new IFrontendMultipleActionAsyncCallback() { - @Override - public void executed(FrontendMultipleActionAsyncResult result) { - stopProgress(); - cancel(); - - } - }, model); + setConfirmWindow(new ProviderRemoveNetworkModel(this)); } @Override @@ -173,10 +119,6 @@ add(); } else if (command == getRemoveCommand()) { remove(); - } else if (StringHelper.stringsEqual(command.getName(), "Cancel")) { //$NON-NLS-1$ - cancel(); - } else if (StringHelper.stringsEqual(command.getName(), "OnRemove")) { //$NON-NLS-1$ - onRemove(); } } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderRemoveNetworkModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderRemoveNetworkModel.java new file mode 100644 index 0000000..52b299f --- /dev/null +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/providers/ProviderRemoveNetworkModel.java @@ -0,0 +1,94 @@ +package org.ovirt.engine.ui.uicommonweb.models.providers; + +import java.util.ArrayList; +import java.util.List; + +import org.ovirt.engine.core.common.action.AddNetworkStoragePoolParameters; +import org.ovirt.engine.core.common.action.VdcActionParametersBase; +import org.ovirt.engine.core.common.action.VdcActionType; +import org.ovirt.engine.core.common.action.VdcReturnValueBase; +import org.ovirt.engine.core.common.businessentities.network.Network; +import org.ovirt.engine.core.compat.StringHelper; +import org.ovirt.engine.ui.frontend.Frontend; +import org.ovirt.engine.ui.uicommonweb.UICommand; +import org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel; +import org.ovirt.engine.ui.uicommonweb.models.SearchableListModel; +import org.ovirt.engine.ui.uicompat.ConstantsManager; +import org.ovirt.engine.ui.uicompat.FrontendMultipleActionAsyncResult; +import org.ovirt.engine.ui.uicompat.IFrontendMultipleActionAsyncCallback; + +@SuppressWarnings("deprecation") +public class ProviderRemoveNetworkModel extends ConfirmationModel { + + private static final String CMD_REMOVE = "OnRemove"; //$NON-NLS-1$ + private static final String CMD_CANCEL = "Cancel"; //$NON-NLS-1$ + + private final SearchableListModel sourceListModel; + private final List<Network> networks; + + @SuppressWarnings("unchecked") + public ProviderRemoveNetworkModel(SearchableListModel sourceListModel) { + this.sourceListModel = sourceListModel; + networks = (List<Network>) sourceListModel.getSelectedItems(); + + setTitle(ConstantsManager.getInstance().getConstants().providerRemoveNetworksTitle()); + setHashName("remove_provider_network"); //$NON-NLS-1$ + setMessage(ConstantsManager.getInstance().getConstants().providerNetworksMsg()); + setNote(ConstantsManager.getInstance().getConstants().providerRemoveNote()); + + List<String> networkNames = new ArrayList<String>(); + for (Network network : networks) { + networkNames.add(network.getName()); + } + setItems(networkNames); + + UICommand tempVar = new UICommand(CMD_REMOVE, this); + tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok()); + tempVar.setIsDefault(true); + getCommands().add(tempVar); + UICommand tempVar2 = new UICommand(CMD_CANCEL, this); + tempVar2.setTitle(ConstantsManager.getInstance().getConstants().cancel()); + tempVar2.setIsCancel(true); + getCommands().add(tempVar2); + } + + private void cancel() { + sourceListModel.setConfirmWindow(null); + } + + public void onRemove() { + ArrayList<VdcActionParametersBase> parameters = new ArrayList<VdcActionParametersBase>(); + for (Network network : networks) { + parameters.add(new AddNetworkStoragePoolParameters(network.getDataCenterId().getValue(), network)); + } + + startProgress(null); + Frontend.RunMultipleAction(VdcActionType.RemoveNetwork, parameters, new IFrontendMultipleActionAsyncCallback() { + + @Override + public void executed(FrontendMultipleActionAsyncResult result) { + stopProgress(); + List<VdcReturnValueBase> resList = result.getReturnValue(); + for (VdcReturnValueBase res : resList) { + if (res == null || !res.getSucceeded()) { + return; + } + } + cancel(); + sourceListModel.getSearchCommand().execute(); + } + }); + } + + @Override + public void executeCommand(UICommand command) { + super.executeCommand(command); + + if (StringHelper.stringsEqual(command.getName(), CMD_REMOVE)) { + onRemove(); + } else if (StringHelper.stringsEqual(command.getName(), CMD_CANCEL)) { + cancel(); + } + } + +} diff --git a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java index 0af28cc..a79dcec 100644 --- a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java +++ b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/Constants.java @@ -1870,9 +1870,18 @@ @DefaultStringValue("Provider(s)") String providersMsg(); + @DefaultStringValue("Provider Network(s)") + String providerNetworksMsg(); + @DefaultStringValue("Discover Networks") String discoverNetworksTitle(); + @DefaultStringValue("Remove Provider Network(s)") + String providerRemoveNetworksTitle(); + + @DefaultStringValue("This will NOT damage the data on the actual provider, just remove its representation in the system.") + String providerRemoveNote(); + @DefaultStringValue("Import") String importNetworksTitle(); } -- To view, visit http://gerrit.ovirt.org/15031 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ifd86ef4149fe4886fba10c74bc15d243e90bdc15 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