ofri masad has uploaded a new change for review. Change subject: webadmin: Add list of Profiles using a QoS to remove Qos Popup ......................................................................
webadmin: Add list of Profiles using a QoS to remove Qos Popup Added a list of all Vnic Profiles using a QoS to the Remove QoS popup Change-Id: I3679df78c7deab032a739abbc0e076740dee89b8 Signed-off-by: Ofri Masad <oma...@redhat.com> --- M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/RemoveNetworkQoSModel.java M frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java 2 files changed, 43 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/33/17933/1 diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/RemoveNetworkQoSModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/RemoveNetworkQoSModel.java index 86bc1bd..178e8c6 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/RemoveNetworkQoSModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/RemoveNetworkQoSModel.java @@ -5,7 +5,13 @@ import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.businessentities.network.NetworkQoS; +import org.ovirt.engine.core.common.businessentities.network.VnicProfileView; +import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; +import org.ovirt.engine.core.common.queries.VdcQueryType; +import org.ovirt.engine.ui.frontend.AsyncQuery; import org.ovirt.engine.ui.frontend.Frontend; +import org.ovirt.engine.ui.frontend.INewAsyncCallback; import org.ovirt.engine.ui.uicommonweb.UICommand; import org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel; import org.ovirt.engine.ui.uicommonweb.models.ListModel; @@ -21,9 +27,9 @@ this.sourceListModel = sourceListModel; setTitle(ConstantsManager.getInstance().getConstants().removeNetworkQoSTitle()); - setHashName("remove_network_qos"); //$NON-NLS-1$ - setMessage(ConstantsManager.getInstance().getConstants().removeNetworkQoSMessage()); - + // name start with underscore to prevent default message + setHashName("_remove_network_qos"); //$NON-NLS-1$ + setMessage(); UICommand tempVar = new UICommand("onRemove", this); //$NON-NLS-1$ tempVar.setTitle(ConstantsManager.getInstance().getConstants().ok()); tempVar.setIsDefault(true); @@ -34,6 +40,38 @@ getCommands().add(tempVar2); } + private void setMessage() { + + AsyncQuery _asyncQuery = new AsyncQuery(); + _asyncQuery.setModel(this); + _asyncQuery.asyncCallback = new INewAsyncCallback() { + @Override + public void onSuccess(Object model, Object ReturnValue) { + ArrayList<VnicProfileView> vnicProfiles = + (ArrayList<VnicProfileView>) ((VdcQueryReturnValue) ReturnValue).getReturnValue(); + if (vnicProfiles == null || vnicProfiles.isEmpty()) { + setMessage(ConstantsManager.getInstance().getConstants().removeNetworkQoSMessage()); + } else { + StringBuilder stringBuilder = new StringBuilder( + ConstantsManager.getInstance().getMessages().removeNetworkQoSMessage(vnicProfiles.size())); + for (int i = 0; i < vnicProfiles.size(); i++) { + stringBuilder.append(" - ").append(vnicProfiles.get(i).getName()) //$NON-NLS-1$ + .append(" (").append(vnicProfiles.get(i).getNetworkName()).append(")\n"); //$NON-NLS-1$ //$NON-NLS-2$ + if (i >= 10) { + stringBuilder.append(" ..."); //$NON-NLS-1$ + break; + } + } + setMessage(stringBuilder.toString()); + } + } + }; + + IdQueryParameters queryParams = new IdQueryParameters(((NetworkQoS)sourceListModel.getSelectedItem()).getId()); + Frontend.RunQuery(VdcQueryType.GetAllProfilesByNetworkQoSId, queryParams, _asyncQuery); + + } + public void onRemove() { ArrayList<VdcActionParametersBase> parameters = new ArrayList<VdcActionParametersBase>(); diff --git a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java index 757d534..42854c5 100644 --- a/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java +++ b/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java @@ -291,4 +291,6 @@ @DefaultMessage("{0} ({1})") String commonMessageWithBrackets(String subject, String inBrackets); + @DefaultMessage("This Network QoS is used by {0} Vnic Profiles.\nAre you sure you want to remove this Network QoS?\n\n Profiles using this QoS:\n") + String removeNetworkQoSMessage(int numOfProfiles); } -- To view, visit http://gerrit.ovirt.org/17933 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I3679df78c7deab032a739abbc0e076740dee89b8 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: ofri masad <oma...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches