Eli Mesika has uploaded a new change for review. Change subject: [WIP] core: Adding EndExternalStepCommand ......................................................................
[WIP] core: Adding EndExternalStepCommand Change-Id: I8ec56890dcfc9dbfc5b53c6ccc9bceb411a98402 Signed-off-by: Eli Mesika <emes...@redhat.com> Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=872719 --- A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalStepCommand.java A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalStepParameters.java 2 files changed, 110 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/15229/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalStepCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalStepCommand.java new file mode 100644 index 0000000..176a9d7 --- /dev/null +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalStepCommand.java @@ -0,0 +1,64 @@ +package org.ovirt.engine.core.bll; + +import java.util.List; + +import org.ovirt.engine.core.bll.job.ExecutionContext; +import org.ovirt.engine.core.bll.job.ExecutionHandler; +import org.ovirt.engine.core.bll.job.ExecutionContext.ExecutionMethod; +import org.ovirt.engine.core.bll.utils.PermissionSubject; +import org.ovirt.engine.core.common.action.EndExternalStepParameters; +import org.ovirt.engine.core.common.job.Job; +import org.ovirt.engine.core.common.job.Step; +import org.ovirt.engine.core.dal.dbbroker.DbFacade; + +public class EndExternalStepCommand <T extends EndExternalStepParameters> extends CommandBase<T> { + private Job job; + private Step step; + + public EndExternalStepCommand(T parameters) { + super(parameters); + } + + @Override + protected boolean canDoAction() { + boolean retValue=true; + step = DbFacade.getInstance().getStepDao().get(getParameters().getId()); + if (step == null) { + retValue=false; + //TODO add message + } + else if (!step.isExternal()) { + retValue=false; + //TODO add message + } + job = DbFacade.getInstance().getJobDao().get(step.getJobId()); + if (job == null) { + retValue=false; + //TODO add message + } + return retValue; + } + + /** + * + */ + private static final long serialVersionUID = 1L; + + @Override + protected void executeCommand() { + ExecutionContext context = new ExecutionContext(); + context.setJob(job); + context.setStep(step); + context.setMonitored(true); + context.setExecutionMethod(ExecutionMethod.AsStep); + ExecutionHandler.endStep(context, step, getParameters().getStatus()); + setSucceeded(true); + } + + @Override + public List<PermissionSubject> getPermissionCheckSubjects() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalStepParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalStepParameters.java new file mode 100644 index 0000000..462f9db --- /dev/null +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalStepParameters.java @@ -0,0 +1,46 @@ +package org.ovirt.engine.core.common.action; + +import org.ovirt.engine.core.compat.Guid; + +public class EndExternalStepParameters extends VdcActionParametersBase { + + /** + * + */ + private static final long serialVersionUID = 1L; + + private Guid id; + private boolean exitStatus; + private boolean force; + + public Guid getId() { + return id; + } + + public void setId(Guid id) { + this.id = id; + } + + public boolean isForce() { + return force; + } + + public void setForce(boolean force) { + this.force = force; + } + + public boolean getStatus() { + return exitStatus; + } + + public void setStatus(boolean status) { + this.exitStatus = status; + } + + public EndExternalStepParameters(Guid id, boolean status, boolean force) { + super(); + this.id = id; + this.exitStatus = status; + this.force = force; + } +} -- To view, visit http://gerrit.ovirt.org/15229 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8ec56890dcfc9dbfc5b53c6ccc9bceb411a98402 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Eli Mesika <emes...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches