Eli Mesika has uploaded a new change for review. Change subject: core: Do not allow non monitored commands to send JobId or StepId parameters ......................................................................
core: Do not allow non monitored commands to send JobId or StepId parameters Change-Id: I769ac4c624c4a5fa850b51600c49aaed06a7443b Signed-off-by: Eli Mesika <[email protected]> Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=872719 --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/Backend.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionParametersBase.java 2 files changed, 15 insertions(+), 4 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/05/16705/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/Backend.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/Backend.java index d78d397..d9c08d6 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/Backend.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/Backend.java @@ -374,8 +374,19 @@ VdcActionParametersBase parameters, boolean runAsInternal, CommandContext context) { - CommandBase<?> command = CommandsFactory.CreateCommand(actionType, parameters); - return runAction(command, runAsInternal, context); + VdcReturnValueBase result; + // If non-monitored command is invoked with JobId or ActionId as parameters, reject this command on can do action. + if (!actionType.isActionMonitored() && (parameters.getJobId() != null || parameters.getStepId() != null)) { + result = new VdcReturnValueBase(); + result.getCanDoActionMessages().add(VdcBllMessages.ACTION_TYPE_NON_MONITORED.toString()); + result.setCanDoAction(false); + result.setSucceeded(false); + } + else { + CommandBase<?> command = CommandsFactory.CreateCommand(actionType, parameters); + result = runAction(command, runAsInternal, context); + } + return result; } protected VdcReturnValueBase runAction(CommandBase<?> command, diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionParametersBase.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionParametersBase.java index fa09829..ea7f3d0 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionParametersBase.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionParametersBase.java @@ -58,8 +58,8 @@ @Size(min = 1, max = BusinessEntitiesDefinitions.CORRELATION_ID_SIZE, groups = PreRun.class) private String correlationId; - private Guid jobId; - private Guid stepId; + private Guid jobId = null; + private Guid stepId = null; public VdcActionParametersBase() { shouldbelogged = true; -- To view, visit http://gerrit.ovirt.org/16705 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I769ac4c624c4a5fa850b51600c49aaed06a7443b Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Eli Mesika <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
