Oved Ourfali has uploaded a new change for review.

Change subject: engine : Update CoCo to use CommandContext
......................................................................

engine : Update CoCo to use CommandContext

CommandCoordinator has been updated to find
Commands with CommandContext constructor.

RemoveSnapshotCommand and RemoveSnapshotSingleDiskLiveCommand
have been updated to call CoCo with context when
running child commands

Change-Id: Id914da3ed1a29e651ad2491fc88a2705b7af6e8f
Bug-Url: https://bugzilla.redhat.com/1115127
Signed-off-by: Ravi Nori <rn...@redhat.com>
(cherry picked from commit 4ccb77f05177bf16e038dd59f0bce7da1fc2d43c)
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskLiveCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandCoordinatorImpl.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandExecutor.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/TaskManagerUtil.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/interfaces/CommandScheduler.java
6 files changed, 17 insertions(+), 9 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/29829/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
index f2c4939..0baafee 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotCommand.java
@@ -176,7 +176,8 @@
             } else {
                 TaskManagerUtil.executeAsyncCommand(
                         getSnapshotActionType(),
-                        buildRemoveSnapshotSingleDiskParameters(source, dest));
+                        buildRemoveSnapshotSingleDiskParameters(source, dest),
+                        cloneContextAndDetachFromParent());
             }
 
             List<Guid> quotasToRemoveFromCache = new ArrayList<Guid>();
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskLiveCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskLiveCommand.java
index 7224604..64110ef 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskLiveCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskLiveCommand.java
@@ -142,7 +142,7 @@
 
         persistCommand(getParameters().getParentCommand(), true);
         if (nextCommand != null) {
-            TaskManagerUtil.executeAsyncCommand(nextCommand.getFirst(), 
nextCommand.getSecond());
+            TaskManagerUtil.executeAsyncCommand(nextCommand.getFirst(), 
nextCommand.getSecond(), cloneContextAndDetachFromParent());
         }
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandCoordinatorImpl.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandCoordinatorImpl.java
index 558815e..a71e5fc 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandCoordinatorImpl.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandCoordinatorImpl.java
@@ -10,6 +10,7 @@
 import org.ovirt.engine.core.bll.Backend;
 import org.ovirt.engine.core.bll.CommandBase;
 import org.ovirt.engine.core.bll.CommandsFactory;
+import org.ovirt.engine.core.bll.context.CommandContext;
 import org.ovirt.engine.core.bll.interfaces.BackendInternal;
 import org.ovirt.engine.core.bll.job.ExecutionContext;
 import org.ovirt.engine.core.bll.tasks.interfaces.CommandCoordinator;
@@ -72,8 +73,9 @@
      */
     @Override
     public Future<VdcReturnValueBase> executeAsyncCommand(VdcActionType 
actionType,
-                                                          
VdcActionParametersBase parameters) {
-        return cmdExecutor.executeAsyncCommand(actionType, parameters);
+                                                          
VdcActionParametersBase parameters,
+                                                          CommandContext 
cmdContext) {
+        return cmdExecutor.executeAsyncCommand(actionType, parameters, 
cmdContext);
     }
 
     @Override
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandExecutor.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandExecutor.java
index 6ceac55..ed08b5e 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandExecutor.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/CommandExecutor.java
@@ -12,6 +12,7 @@
 
 import org.ovirt.engine.core.bll.CommandBase;
 import org.ovirt.engine.core.bll.CommandsFactory;
+import org.ovirt.engine.core.bll.context.CommandContext;
 import org.ovirt.engine.core.bll.tasks.interfaces.CommandCallBack;
 import org.ovirt.engine.core.bll.tasks.interfaces.CommandCoordinator;
 import org.ovirt.engine.core.bll.utils.BackendUtils;
@@ -100,8 +101,9 @@
     }
 
     public Future<VdcReturnValueBase> executeAsyncCommand(final VdcActionType 
actionType,
-                                                          final 
VdcActionParametersBase parameters) {
-        final CommandBase<?> command = 
CommandsFactory.createCommand(actionType, parameters);
+                                                          final 
VdcActionParametersBase parameters,
+                                                          final CommandContext 
cmdContext) {
+        final CommandBase<?> command = 
CommandsFactory.createCommand(actionType, parameters, cmdContext);
         return executor.submit(new Callable<VdcReturnValueBase>() {
 
             @Override
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/TaskManagerUtil.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/TaskManagerUtil.java
index 0e73f41..e3ef9d3 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/TaskManagerUtil.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/TaskManagerUtil.java
@@ -6,6 +6,7 @@
 import java.util.concurrent.Future;
 
 import org.ovirt.engine.core.bll.CommandBase;
+import org.ovirt.engine.core.bll.context.CommandContext;
 import org.ovirt.engine.core.bll.tasks.interfaces.CommandCoordinator;
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
@@ -163,8 +164,9 @@
     }
 
     public static Future<VdcReturnValueBase> executeAsyncCommand(VdcActionType 
actionType,
-                                    VdcActionParametersBase parameters) {
-        return coco.executeAsyncCommand(actionType, parameters);
+                                    VdcActionParametersBase parameters,
+                                    CommandContext cmdContext) {
+        return coco.executeAsyncCommand(actionType, parameters, cmdContext);
     }
 
     public static VdcReturnValueBase getCommandReturnValue(Guid cmdId) {
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/interfaces/CommandScheduler.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/interfaces/CommandScheduler.java
index 105e10d..f5f5766 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/interfaces/CommandScheduler.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/interfaces/CommandScheduler.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll.tasks.interfaces;
 
+import org.ovirt.engine.core.bll.context.CommandContext;
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
@@ -7,5 +8,5 @@
 import java.util.concurrent.Future;
 
 public interface CommandScheduler {
-    public abstract Future<VdcReturnValueBase> 
executeAsyncCommand(VdcActionType actionType, VdcActionParametersBase 
parameters);
+    public abstract Future<VdcReturnValueBase> 
executeAsyncCommand(VdcActionType actionType, VdcActionParametersBase 
parameters, CommandContext cmdContext);
 }


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id914da3ed1a29e651ad2491fc88a2705b7af6e8f
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.5
Gerrit-Owner: Oved Ourfali <oourf...@redhat.com>
Gerrit-Reviewer: Ravi Nori <rn...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to