Ravi Nori has uploaded a new change for review. Change subject: core : Change AddVmTemplateCommand to not use placeholders mechanism ......................................................................
core : Change AddVmTemplateCommand to not use placeholders mechanism AddVmTemplateCommand has been changed not to insert placeholders for all child commands before execution by vdsm Change-Id: I07a9dad13443776f88b9bcbdb108eb302d01c555 Signed-off-by: Ravi Nori <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CreateImageTemplateCommand.java 2 files changed, 6 insertions(+), 15 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/47/37147/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java index 824b134..ac093a5 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmTemplateCommand.java @@ -201,14 +201,6 @@ } } - @Override - protected void buildChildCommandInfos() { - Guid vmSnapshotId = Guid.newGuid(); - for (DiskImage diskImage : mImages) { - addChildCommandInfo(diskImage.getImageId(), VdcActionType.CreateImageTemplate, buildChildCommandParameters(diskImage, vmSnapshotId)); - } - } - private CreateImageTemplateParameters buildChildCommandParameters(DiskImage diskImage, Guid vmSnapshotId) { CreateImageTemplateParameters createParams = new CreateImageTemplateParameters(diskImage.getImageId(), getVmTemplateId(), getVmTemplateName(), getVmId()); @@ -666,9 +658,13 @@ } protected void addVmTemplateImages(Map<Guid, Guid> srcDeviceIdToTargetDeviceIdMapping) { + Guid vmSnapshotId = Guid.newGuid(); for (DiskImage diskImage : mImages) { // The return value of this action is the 'copyImage' task GUID: - VdcReturnValueBase retValue = executeChildCommand(diskImage.getImageId()); + VdcReturnValueBase retValue = Backend.getInstance().runInternalAction( + VdcActionType.CreateImageTemplate, + buildChildCommandParameters(diskImage, vmSnapshotId), + cloneContextAndDetachFromParent()); if (!retValue.getSucceeded()) { throw new VdcBLLException(retValue.getFault().getError(), retValue.getFault().getMessage()); 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 90a0d0f..d338ad0 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 @@ -37,11 +37,6 @@ } @Override - protected void insertAsyncTaskPlaceHolders() { - persistAsyncTaskPlaceHolder(VdcActionType.AddVmTemplate); - } - - @Override protected void executeCommand() { Guid storagePoolId = getDiskImage().getStoragePoolId() != null ? getDiskImage().getStoragePoolId() : Guid.Empty; @@ -54,7 +49,7 @@ DiskImage newImage = cloneDiskImage(getDestinationImageId()); fillVolumeInformation(newImage); - Guid taskId = getAsyncTaskId(); + Guid taskId = persistAsyncTaskPlaceHolder(VdcActionType.AddVmTemplate); VolumeFormat targetFormat = getTargetVolumeFormat(newImage.getVolumeFormat(), newImage.getVolumeType(), getParameters().getDestinationStorageDomainId()); -- To view, visit http://gerrit.ovirt.org/37147 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I07a9dad13443776f88b9bcbdb108eb302d01c555 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
