Eli Mesika has uploaded a new change for review.

Change subject: [WIP] core: Adding EndExternalJobCommand
......................................................................

[WIP] core: Adding EndExternalJobCommand

Change-Id: I7d8643e32eaecf79ac769c3b6eacef9e6330c512
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/EndExternalJobCommand.java
A 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalJobParameters.java
2 files changed, 97 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/28/15228/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalJobCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalJobCommand.java
new file mode 100644
index 0000000..2c80937
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EndExternalJobCommand.java
@@ -0,0 +1,50 @@
+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.ExecutionContext.ExecutionMethod;
+import org.ovirt.engine.core.bll.job.ExecutionHandler;
+import org.ovirt.engine.core.bll.utils.PermissionSubject;
+import org.ovirt.engine.core.common.action.EndExternalJobParameters;
+import org.ovirt.engine.core.common.job.Job;
+import org.ovirt.engine.core.common.job.JobExecutionStatus;
+import org.ovirt.engine.core.dal.dbbroker.DbFacade;
+
+public class EndExternalJobCommand <T extends EndExternalJobParameters> 
extends CommandBase<T>{
+
+    private static final long serialVersionUID = 1L;
+    private Job job;
+
+    public EndExternalJobCommand(T parameters) {
+        super(parameters);
+    }
+
+    @Override
+    protected boolean canDoAction() {
+        boolean retValue=true;
+        job = 
DbFacade.getInstance().getJobDao().get(getParameters().getJobId());
+        if (job == null) {
+            retValue = false;
+            //TODO message
+        }
+        return retValue;
+    }
+
+    @Override
+    protected void executeCommand() {
+        ExecutionContext context = new ExecutionContext();
+        context.setMonitored(true);
+        context.setExecutionMethod(ExecutionMethod.AsJob);
+        context.setJob(job);
+        ExecutionHandler.endJob(context, JobExecutionStatus.FINISHED == 
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/EndExternalJobParameters.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalJobParameters.java
new file mode 100644
index 0000000..bbb316e
--- /dev/null
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/EndExternalJobParameters.java
@@ -0,0 +1,47 @@
+package org.ovirt.engine.core.common.action;
+
+import org.ovirt.engine.core.common.job.JobExecutionStatus;
+import org.ovirt.engine.core.compat.Guid;
+
+public class EndExternalJobParameters extends VdcActionParametersBase {
+
+    /**
+     *
+     */
+    private static final long serialVersionUID = 1L;
+    private Guid jobId;
+    private JobExecutionStatus exitStatus;
+    private boolean force;
+
+
+    public Guid getJobId() {
+        return jobId;
+    }
+
+    public void setJobId(Guid jobId) {
+        this.jobId = jobId;
+    }
+
+    public JobExecutionStatus getStatus() {
+        return exitStatus;
+    }
+
+    public void setStatus(JobExecutionStatus status) {
+        this.exitStatus = status;
+    }
+
+    public boolean isForce() {
+        return force;
+    }
+
+    public void setForce(boolean force) {
+        this.force = force;
+    }
+
+    public EndExternalJobParameters(Guid jobId, JobExecutionStatus status, 
boolean force) {
+        super();
+        this.jobId = jobId;
+        this.exitStatus = status;
+        this.force = force;
+    }
+}


--
To view, visit http://gerrit.ovirt.org/15228
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7d8643e32eaecf79ac769c3b6eacef9e6330c512
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

Reply via email to