Arik Hadas has uploaded a new change for review. Change subject: core: import vm as vm command ......................................................................
core: import vm as vm command ImportVmCommand used to be 'storage domain command' which is wrong. Import VM is about Virtual Machine, like AddVm/AddVmFromTemplate/AddVmFromSnapshot etc are, when the source is configuration + disks on the export domain. This patch makes the ImportVm command a child of VmCommand (through VmManagementCommandBase) and introduce ImportVmCommandBase which will later contain the common things for the different kinds of import operations of virtual machines that will be added Change-Id: I4f182417f9b64f23bb5f412a8e6e20e1c4e2ab6a Signed-off-by: Arik Hadas <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/ImportVmParameters.java 2 files changed, 35 insertions(+), 36 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/88/34788/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java index 8f75af0..6a1ff68 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java @@ -102,7 +102,7 @@ @DisableInPrepareMode @NonTransactiveCommandAttribute(forceCompensation = true) -public class ImportVmCommand<T extends ImportVmParameters> extends MoveOrCopyTemplateCommand<T> +public class ImportVmCommand<T extends ImportVmParameters> extends ImportVmCommandBase<T> implements QuotaStorageDependent, TaskHandlerCommand<T> { private static final Logger log = LoggerFactory.getLogger(ImportVmCommand.class); @@ -113,19 +113,16 @@ private final List<String> macsAdded = new ArrayList<String>(); private final SnapshotsManager snapshotsManager = new SnapshotsManager(); + protected ImportVmCommand(Guid commandId) { + super(commandId); + } + public ImportVmCommand(T parameters) { this(parameters, null); } - @Override - protected LockProperties applyLockProperties(LockProperties lockProperties) { - return lockProperties.withScope(Scope.Command); - } - - @Override - protected void init(T parameters) { - super.init(parameters); - setVmId(parameters.getContainerId()); + public ImportVmCommand(T parameters, CommandContext commandContext) { + super(parameters, commandContext); setVm(parameters.getVm()); setVdsGroupId(parameters.getVdsGroupId()); if (parameters.getVm() != null && getVm().getDiskMap() != null) { @@ -137,6 +134,11 @@ } } ensureDomainMap(imageList, parameters.getDestDomainId()); + } + + @Override + protected LockProperties applyLockProperties(LockProperties lockProperties) { + return lockProperties.withScope(Scope.Command); } @Override @@ -163,14 +165,6 @@ builder.append(String.format("$VmName %1$s", getVmName())); } return builder.toString(); - } - - protected ImportVmCommand(Guid commandId) { - super(commandId); - } - - public ImportVmCommand(T parameters, CommandContext commandContext) { - super(parameters, commandContext); } @Override diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/ImportVmParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/ImportVmParameters.java index eb3c843..de18d84 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/ImportVmParameters.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/ImportVmParameters.java @@ -3,44 +3,33 @@ import java.io.Serializable; import java.util.Map; -import javax.validation.Valid; - import org.ovirt.engine.core.common.businessentities.Disk; -import org.ovirt.engine.core.common.businessentities.VM; +import org.ovirt.engine.core.common.businessentities.VmStatic; import org.ovirt.engine.core.compat.Guid; -public class ImportVmParameters extends MoveVmParameters implements Serializable { +public class ImportVmParameters extends VmManagementParametersBase implements Serializable { private static final long serialVersionUID = -6514416097090370831L; - @Valid - private VM vm; private Guid sourceDomainId; private Guid destDomainId; private Guid vdsGroupId; + private Guid storagePoolId; private Map<Guid, Disk> diskMap; + private boolean importAsNewEntity; public ImportVmParameters() { sourceDomainId = Guid.Empty; destDomainId = Guid.Empty; } - public ImportVmParameters(VM vm, Guid sourceStorageDomainId, Guid destStorageDomainId, Guid storagePoolId, - Guid vdsGroupId) { - super(vm.getId(), destStorageDomainId); + public ImportVmParameters(VmStatic vmStatic, Guid sourceStorageDomainId, + Guid destStorageDomainId, Guid storagePoolId, Guid vdsGroupId) { + super(vmStatic); sourceDomainId = sourceStorageDomainId; destDomainId = destStorageDomainId; - setVm(vm); setStorageDomainId(destStorageDomainId); setStoragePoolId(storagePoolId); setVdsGroupId(vdsGroupId); - } - - public VM getVm() { - return vm; - } - - public void setVm(VM vm) { - this.vm = vm; } public Guid getSourceDomainId() { @@ -75,4 +64,20 @@ this.diskMap = diskMap; } + public Guid getStoragePoolId() { + return storagePoolId; + } + + public void setStoragePoolId(Guid storagePoolId) { + this.storagePoolId = storagePoolId; + } + + public boolean isImportAsNewEntity() { + return importAsNewEntity; + } + + public void setImportAsNewEntity(boolean importAsNewEntity) { + this.importAsNewEntity = importAsNewEntity; + } + } -- To view, visit http://gerrit.ovirt.org/34788 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I4f182417f9b64f23bb5f412a8e6e20e1c4e2ab6a Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Arik Hadas <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
