Gilad Chaplik has uploaded a new change for review. Change subject: engine: Remove QoS command to allow id as parameter ......................................................................
engine: Remove QoS command to allow id as parameter No need to wire the entire QoS object. Fixing a bug on the way (in NetworkQoSCommandBase.java) Change-Id: I1a9af59277b5055453159f002f19046c0051eedd Signed-off-by: Gilad Chaplik <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/NetworkQoSCommandBase.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/RemoveNetworkQoSCommand.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/RemoveNetworkQoSModel.java 3 files changed, 18 insertions(+), 8 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/95/27095/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/NetworkQoSCommandBase.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/NetworkQoSCommandBase.java index 6b3f3f1..1bc9b9c 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/NetworkQoSCommandBase.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/NetworkQoSCommandBase.java @@ -9,6 +9,7 @@ import org.ovirt.engine.core.common.action.NetworkQoSParametersBase; import org.ovirt.engine.core.common.businessentities.qos.NetworkQoS; import org.ovirt.engine.core.common.errors.VdcBllMessages; +import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.qos.NetworkQosDao; @@ -29,7 +30,7 @@ if (networkQoS == null) { if (getParameters().getNetworkQoS() == null) { if (getParameters().getNetworkQoSGuid() != null) { - getNetworkQoSDao().get(getParameters().getNetworkQoSGuid()); + networkQoS = getNetworkQoSDao().get(getParameters().getNetworkQoSGuid()); } } else { networkQoS = getParameters().getNetworkQoS(); @@ -46,6 +47,14 @@ } @Override + public Guid getStoragePoolId() { + if (super.getStoragePoolId() == null) { + setStoragePoolId(getNetworkQoS().getStoragePoolId()); + } + return super.getStoragePoolId(); + } + + @Override public List<PermissionSubject> getPermissionCheckSubjects() { return Collections.singletonList(new PermissionSubject(getStoragePoolId(), VdcObjectType.StoragePool, getActionType().getActionGroup())); diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/RemoveNetworkQoSCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/RemoveNetworkQoSCommand.java index 70aef42..85bbb7c 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/RemoveNetworkQoSCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/qos/RemoveNetworkQoSCommand.java @@ -13,11 +13,11 @@ @Override protected boolean canDoAction() { - if (validateParameters()) { - NetworkQosValidator validator = new NetworkQosValidator(getNetworkQoS()); - return validate(validator.qosExists()) && validate(validator.consistentDataCenter()); + if (getParameters().getNetworkQoSGuid() == null) { + return failCanDoAction(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_QOS_NOT_FOUND); } - return true; + NetworkQosValidator validator = new NetworkQosValidator(getNetworkQoS()); + return validate(validator.qosExists()) && validate(validator.consistentDataCenter()); } @Override 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 c84d353..5c91d58 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 @@ -1,6 +1,8 @@ package org.ovirt.engine.ui.uicommonweb.models.datacenters; +import java.util.ArrayList; + import org.ovirt.engine.core.common.action.NetworkQoSParametersBase; import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.action.VdcActionType; @@ -18,8 +20,6 @@ import org.ovirt.engine.ui.uicompat.ConstantsManager; import org.ovirt.engine.ui.uicompat.FrontendMultipleQueryAsyncResult; import org.ovirt.engine.ui.uicompat.IFrontendMultipleQueryAsyncCallback; - -import java.util.ArrayList; public class RemoveNetworkQoSModel extends ConfirmationModel { @@ -86,7 +86,8 @@ for (Object networkQoS : sourceListModel.getSelectedItems()) { NetworkQoSParametersBase parameter = new NetworkQoSParametersBase(); - parameter.setNetworkQoS((NetworkQoS) networkQoS); + parameter.setNetworkQoSGuid(((NetworkQoS) networkQoS).getId()); + parameter.setNetworkQoS(((NetworkQoS) networkQoS)); parameters.add(parameter); } Frontend.getInstance().runMultipleAction(VdcActionType.RemoveNetworkQoS, parameters); -- To view, visit http://gerrit.ovirt.org/27095 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I1a9af59277b5055453159f002f19046c0051eedd Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Gilad Chaplik <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
