Ravi Nori has uploaded a new change for review.

Change subject: engine : Refactoring Async tasks code
......................................................................

engine : Refactoring Async tasks code

Change-Id: Ie3839ed09825f1e0db914f55f5ee358b6b3c0449
Signed-off-by: Ravi Nori <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateCloneOfTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateImageTemplateCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetTasksStatusesByTasksIDsQuery.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyImageGroupCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveImageCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveTemplateSnapshotCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmFromImportExportCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RestoreFromSnapshotCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmCommand.java
R 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskFactory.java
R 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java
R 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskState.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskUtils.java
R 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityAsyncTask.java
R 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityMultiAsyncTasks.java
R 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/SPMAsyncTask.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java
24 files changed, 50 insertions(+), 111 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/61/12561/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
index 4e59b72..f92c743 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
@@ -1,5 +1,7 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
+import org.ovirt.engine.core.bll.tasks.SPMAsyncTask;
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -30,8 +32,8 @@
 import org.ovirt.engine.core.bll.quota.QuotaStorageDependent;
 import org.ovirt.engine.core.bll.quota.QuotaVdsDependent;
 import org.ovirt.engine.core.bll.session.SessionDataContainer;
-import org.ovirt.engine.core.bll.tasks.AsyncTaskUtils;
 import org.ovirt.engine.core.bll.tasks.SPMAsyncTaskHandler;
+import org.ovirt.engine.core.bll.tasks.TasksUtil;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.VdcObjectType;
@@ -40,14 +42,10 @@
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
 import org.ovirt.engine.core.common.asynctasks.AsyncTaskCreationInfo;
-import org.ovirt.engine.core.common.asynctasks.AsyncTaskParameters;
 import org.ovirt.engine.core.common.asynctasks.AsyncTaskType;
 import org.ovirt.engine.core.common.businessentities.ActionGroup;
 import org.ovirt.engine.core.common.businessentities.ActionVersionMap;
-import org.ovirt.engine.core.common.businessentities.AsyncTaskResultEnum;
 import org.ovirt.engine.core.common.businessentities.AsyncTaskStatus;
-import org.ovirt.engine.core.common.businessentities.AsyncTaskStatusEnum;
-import org.ovirt.engine.core.common.businessentities.AsyncTasks;
 import org.ovirt.engine.core.common.businessentities.BusinessEntity;
 import org.ovirt.engine.core.common.businessentities.BusinessEntitySnapshot;
 import 
org.ovirt.engine.core.common.businessentities.BusinessEntitySnapshot.EntityStatusSnapshot;
@@ -59,7 +57,6 @@
 import org.ovirt.engine.core.common.errors.VdcBllErrors;
 import org.ovirt.engine.core.common.errors.VdcFault;
 import org.ovirt.engine.core.common.interfaces.IVdcUser;
-import org.ovirt.engine.core.common.job.ExternalSystemType;
 import org.ovirt.engine.core.common.job.Step;
 import org.ovirt.engine.core.common.job.StepEnum;
 import org.ovirt.engine.core.common.utils.Pair;
@@ -92,7 +89,6 @@
 import org.ovirt.engine.core.utils.lock.LockManagerFactory;
 import org.ovirt.engine.core.utils.log.Log;
 import org.ovirt.engine.core.utils.log.LogFactory;
-import org.ovirt.engine.core.utils.threadpool.ThreadPoolUtil;
 import org.ovirt.engine.core.utils.transaction.RollbackHandler;
 import org.ovirt.engine.core.utils.transaction.TransactionMethod;
 import org.ovirt.engine.core.utils.transaction.TransactionSupport;
@@ -202,7 +198,7 @@
         return new VdcReturnValueBase();
     }
 
-    protected BackendInternal getBackend() {
+    public BackendInternal getBackend() {
         return Backend.getInstance();
     }
 
@@ -1030,7 +1026,7 @@
      * @param parameters parameter of the creating command
      * @return
      */
-    protected VdcActionParametersBase getParametersForTask(VdcActionType 
parentCommandType,
+    public VdcActionParametersBase getParametersForTask(VdcActionType 
parentCommandType,
             VdcActionParametersBase parameters) {
         // If there is no parent command, the command that its type
         // will be stored in the DB for thr task is the one creating the 
command
@@ -1186,7 +1182,7 @@
         }
     }
 
-    private boolean hasTasks() {
+    public boolean hasTasks() {
         return !getReturnValue().getTaskIdList().isEmpty();
     }
 
@@ -1210,7 +1206,7 @@
         return annotation == null;
     }
 
-    protected T getParameters() {
+    public T getParameters() {
         return _parameters;
     }
 
@@ -1308,75 +1304,17 @@
     protected Guid createTask(AsyncTaskCreationInfo asyncTaskCreationInfo,
             VdcActionType parentCommand,
             String description, VdcObjectType entityType, Guid... entityIds) {
-        Guid retValue = Guid.Empty;
-
-        Transaction transaction = TransactionSupport.suspend();
-
-        try {
-            Step taskStep =
-                    ExecutionHandler.addTaskStep(getExecutionContext(),
-                            
StepEnum.getStepNameByTaskType(asyncTaskCreationInfo.getTaskType()),
-                            description);
-            if (taskStep != null) {
-                asyncTaskCreationInfo.setStepId(taskStep.getId());
-            }
-            SPMAsyncTask task = concreteCreateTask(asyncTaskCreationInfo, 
parentCommand);
-            retValue = task.getTaskID();
-            task.setEntityType(entityType);
-            task.setAssociatedEntities(entityIds);
-            AsyncTaskUtils.addOrUpdateTaskInDB(task);
-            getAsyncTaskManager().lockAndAddTaskToManager(task);
-            retValue = task.getTaskID();
-            ExecutionHandler.updateStepExternalId(taskStep, retValue, 
ExternalSystemType.VDSM);
-        } catch (RuntimeException ex) {
-            log.errorFormat("Error during CreateTask for command: {0}. 
Exception {1}", getClass().getName(), ex);
-        } finally {
-            TransactionSupport.resume(transaction);
-        }
-
-        return retValue;
+        return TasksUtil.createTask(this, asyncTaskCreationInfo, 
parentCommand, description, entityType, entityIds);
     }
 
-    /**
-     * Create the {@link SPMAsyncTask} object to be run
-     * @param asyncTaskCreationInfo Info on how to create the task
-     * @param parentCommand The type of command issuing the task
-     * @return An {@link SPMAsyncTask} object representing the task to be run
-     */
-    protected SPMAsyncTask concreteCreateTask
-            (AsyncTaskCreationInfo asyncTaskCreationInfo, VdcActionType 
parentCommand) {
-
-        VdcActionParametersBase parentParameters = 
getParametersForTask(parentCommand, getParameters());
-        if (parentParameters.getParametersCurrentUser() == null && 
getCurrentUser() != null) {
-            parentParameters.setParametersCurrentUser(getCurrentUser());
-        }
-        AsyncTaskParameters p =
-                new AsyncTaskParameters(asyncTaskCreationInfo, new 
AsyncTasks(parentCommand,
-                        AsyncTaskResultEnum.success,
-                        AsyncTaskStatusEnum.running,
-                        asyncTaskCreationInfo.getTaskID(),
-                        parentParameters,
-                        getParameters(),
-                        asyncTaskCreationInfo.getStepId(),
-                        
getCommandId(),asyncTaskCreationInfo.getStoragePoolID(),
-                        asyncTaskCreationInfo.getTaskType()));
-        p.setEntityId(getParameters().getEntityId());
-        return 
AsyncTaskManager.getInstance().CreateTask(internalGetTaskType(), p);
+    public SPMAsyncTask concreteCreateTask(
+            AsyncTaskCreationInfo asyncTaskCreationInfo,
+            VdcActionType parentCommand) {
+        return TasksUtil.concreteCreateTask(this, asyncTaskCreationInfo, 
parentCommand);
     }
 
     /** @return The type of task that should be created for this command. 
Commands that do not create async tasks should throw a {@link 
UnsupportedOperationException} */
-    private AsyncTaskType internalGetTaskType() {
-        if (hasTaskHandlers()) {
-            if (getParameters().getExecutionReason() == 
CommandExecutionReason.REGULAR_FLOW) {
-                return getCurrentTaskHandler().getTaskType();
-            }
-            return getCurrentTaskHandler().getRevertTaskType();
-        }
-        return getTaskType();
-    }
-
-    /** @return The type of task that should be created for this command. 
Commands that do not create async tasks should throw a {@link 
UnsupportedOperationException} */
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         throw new UnsupportedOperationException();
     }
 
@@ -1409,23 +1347,11 @@
     }
 
     private void cancelTasks() {
-        if (hasTasks()) {
-            ThreadPoolUtil.execute(new Runnable() {
-                @Override
-                public void run() {
-                    log.infoFormat("Rollback for command: {0}.", 
CommandBase.this.getClass().getName());
-                    try {
-                        
getAsyncTaskManager().CancelTasks(getReturnValue().getTaskIdList());
-                    } catch (Exception e) {
-                        log.errorFormat("Failed to cancel tasks for command: 
{0}.",
-                                CommandBase.this.getClass().getName());
-                    }
-                }
-            });
-        }
+        TasksUtil.cancelTasks(this);
     }
 
     protected void revertTasks() {
+        TasksUtil.revertTasks(this);
         if (getParameters().getTaskIds() != null) {
             // list to send to the PollTasks method
             ArrayList<Guid> taskIdAsList = new ArrayList<Guid>();
@@ -1796,11 +1722,11 @@
         return taskHandlers;
     }
 
-    protected boolean hasTaskHandlers() {
+    public boolean hasTaskHandlers() {
         return getTaskHandlers() != null;
     }
 
-    protected SPMAsyncTaskHandler getCurrentTaskHandler() {
+    public SPMAsyncTaskHandler getCurrentTaskHandler() {
         return getTaskHandlers().get(getExecutionIndex());
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateCloneOfTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateCloneOfTemplateCommand.java
index 8713df9..a8fc05f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateCloneOfTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateCloneOfTemplateCommand.java
@@ -88,7 +88,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.copyImage;
     }
 }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateImageTemplateCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateImageTemplateCommand.java
index 10c9837..33958e0 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateImageTemplateCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateImageTemplateCommand.java
@@ -108,7 +108,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.copyImage;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
index c205b42..8e408b8 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateSnapshotCommand.java
@@ -126,7 +126,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.createVolume;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetTasksStatusesByTasksIDsQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetTasksStatusesByTasksIDsQuery.java
index a872672..f0a217b 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetTasksStatusesByTasksIDsQuery.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetTasksStatusesByTasksIDsQuery.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import org.ovirt.engine.core.common.queries.*;
 
 public class GetTasksStatusesByTasksIDsQuery<P extends 
GetTasksStatusesByTasksIDsParameters>
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
index 47ad678..3688a5d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
@@ -186,7 +187,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.createVolume;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
index 789cf38..e8e8236 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
@@ -1,6 +1,7 @@
 package org.ovirt.engine.core.bll;
 
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import javax.annotation.PostConstruct;
 import javax.ejb.DependsOn;
 import javax.ejb.Singleton;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyImageGroupCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyImageGroupCommand.java
index 91a9170..89c239c 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyImageGroupCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MoveOrCopyImageGroupCommand.java
@@ -145,7 +145,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.moveImage;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveImageCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveImageCommand.java
index 34a7132..981f91d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveImageCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveImageCommand.java
@@ -92,7 +92,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.deleteImage;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskCommand.java
index 0324a48..089f906 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveSnapshotSingleDiskCommand.java
@@ -61,7 +61,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.mergeSnapshots;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveTemplateSnapshotCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveTemplateSnapshotCommand.java
index 2dd3caa..7651dcb 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveTemplateSnapshotCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveTemplateSnapshotCommand.java
@@ -40,7 +40,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.deleteImage;
     }
 }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
index 48f3d0d..d2e2a43 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmCommand.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmFromImportExportCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmFromImportExportCommand.java
index 1520949..0681574 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmFromImportExportCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmFromImportExportCommand.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RestoreFromSnapshotCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RestoreFromSnapshotCommand.java
index 798a32a..dc00016 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RestoreFromSnapshotCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RestoreFromSnapshotCommand.java
@@ -62,7 +62,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.deleteVolume;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
index 843112e..f4011ad 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmCommand.java
index dea3cdb..9308b3b 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmCommand.java
@@ -1,5 +1,6 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskManager;
 import java.util.ArrayList;
 import java.util.LinkedList;
 import java.util.List;
@@ -293,7 +294,7 @@
     }
 
     @Override
-    protected AsyncTaskType getTaskType() {
+    public AsyncTaskType getTaskType() {
         return AsyncTaskType.deleteImage;
     }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskFactory.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskFactory.java
similarity index 98%
rename from 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskFactory.java
rename to 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskFactory.java
index 0be5349..b65e160 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskFactory.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskFactory.java
@@ -1,4 +1,4 @@
-package org.ovirt.engine.core.bll;
+package org.ovirt.engine.core.bll.tasks;
 
 import org.ovirt.engine.core.common.action.VdcActionParametersBase;
 import org.ovirt.engine.core.common.action.VdcActionType;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskManager.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java
similarity index 99%
rename from 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskManager.java
rename to 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java
index 155f676..2fb54f1 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskManager.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskManager.java
@@ -1,4 +1,4 @@
-package org.ovirt.engine.core.bll;
+package org.ovirt.engine.core.bll.tasks;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -11,7 +11,7 @@
 import java.util.concurrent.TimeUnit;
 
 import org.apache.commons.lang.exception.ExceptionUtils;
-import org.ovirt.engine.core.bll.tasks.AsyncTaskUtils;
+import org.ovirt.engine.core.bll.Backend;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.asynctasks.AsyncTaskCreationInfo;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskState.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskState.java
similarity index 88%
rename from 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskState.java
rename to 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskState.java
index 40e1f3c..b1f8e26 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AsyncTaskState.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskState.java
@@ -1,4 +1,4 @@
-package org.ovirt.engine.core.bll;
+package org.ovirt.engine.core.bll.tasks;
 
 public enum AsyncTaskState {
     Initializing,
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskUtils.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskUtils.java
index 57697ca..e9990ac 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskUtils.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/AsyncTaskUtils.java
@@ -1,6 +1,5 @@
 package org.ovirt.engine.core.bll.tasks;
 
-import org.ovirt.engine.core.bll.SPMAsyncTask;
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
 import org.ovirt.engine.core.utils.log.Log;
 import org.ovirt.engine.core.utils.log.LogFactory;
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EntityAsyncTask.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityAsyncTask.java
similarity index 97%
rename from 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EntityAsyncTask.java
rename to 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityAsyncTask.java
index 0dd8a08..4ec7ae6 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EntityAsyncTask.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityAsyncTask.java
@@ -1,9 +1,12 @@
-package org.ovirt.engine.core.bll;
+package org.ovirt.engine.core.bll.tasks;
 
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicInteger;
+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.job.ExecutionContext;
@@ -75,7 +78,7 @@
     }
 
     @Override
-    protected void ConcreteStartPollingTask() {
+    public void ConcreteStartPollingTask() {
         EntityMultiAsyncTasks entityInfo = GetEntityMultiAsyncTasks();
         entityInfo.StartPollingTask(getTaskID());
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EntityMultiAsyncTasks.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityMultiAsyncTasks.java
similarity index 99%
rename from 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EntityMultiAsyncTasks.java
rename to 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityMultiAsyncTasks.java
index 7706695..aeeb655 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EntityMultiAsyncTasks.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/EntityMultiAsyncTasks.java
@@ -1,4 +1,4 @@
-package org.ovirt.engine.core.bll;
+package org.ovirt.engine.core.bll.tasks;
 
 import java.util.List;
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SPMAsyncTask.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/SPMAsyncTask.java
similarity index 99%
rename from 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SPMAsyncTask.java
rename to 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/SPMAsyncTask.java
index 75ee506..a6ec0f2 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SPMAsyncTask.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/tasks/SPMAsyncTask.java
@@ -1,5 +1,6 @@
-package org.ovirt.engine.core.bll;
+package org.ovirt.engine.core.bll.tasks;
 
+import org.ovirt.engine.core.bll.Backend;
 import static 
org.ovirt.engine.core.common.config.ConfigValues.UknownTaskPrePollingLapse;
 
 import org.ovirt.engine.core.bll.job.ExecutionHandler;
@@ -152,7 +153,7 @@
         return idlePeriodPassed;
     }
 
-    protected void ConcreteStartPollingTask() {
+    public void ConcreteStartPollingTask() {
         setState(AsyncTaskState.Polling);
     }
 
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java
index 6a059b0..f09157d 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/BackwardCompatibilityTaskCreationTest.java
@@ -1,5 +1,8 @@
 package org.ovirt.engine.core.bll;
 
+import org.ovirt.engine.core.bll.tasks.AsyncTaskState;
+import org.ovirt.engine.core.bll.tasks.EntityAsyncTask;
+import org.ovirt.engine.core.bll.tasks.SPMAsyncTask;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Mockito.mock;


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie3839ed09825f1e0db914f55f5ee358b6b3c0449
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Ravi Nori <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to