Allon Mureinik has uploaded a new change for review. Change subject: core: VmMigrateDiskStart VDS command ......................................................................
core: VmMigrateDiskStart VDS command The VDS command to send vmMigrateDisk to VDSM. This patch includes the command and the parameters classes. Actual use-cases will be introduced in subsequent patches. Change-Id: I11d7ec467938be47f6a05eb7fa6df141815b000b Signed-off-by: Allon Mureinik <amure...@redhat.com> --- M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VmMigrationDiskStartParameters.java A backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmMigrationDiskStartVDSCommand.java 3 files changed, 102 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/39/8139/1 diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java index be10b51..d29325f 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java @@ -96,6 +96,7 @@ DeleteImageGroup("org.ovirt.engine.core.vdsbroker.irsbroker"), MoveImageGroup("org.ovirt.engine.core.vdsbroker.irsbroker"), SyncImageGroup("org.ovirt.engine.core.vdsbroker.irsbroker"), + VmMigrationDiskStart("org.ovirt.engine.core.vdsbroker.vdsbroker"), GetImageDomainsList("org.ovirt.engine.core.vdsbroker.irsbroker"), CreateVG("org.ovirt.engine.core.vdsbroker.vdsbroker"), RemoveVG("org.ovirt.engine.core.vdsbroker.vdsbroker"), diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VmMigrationDiskStartParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VmMigrationDiskStartParameters.java new file mode 100644 index 0000000..4e26a73 --- /dev/null +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VmMigrationDiskStartParameters.java @@ -0,0 +1,71 @@ +package org.ovirt.engine.core.common.vdscommands; + +import org.ovirt.engine.core.compat.Guid; + +public class VmMigrationDiskStartParameters extends VdsAndVmIDVDSParametersBase { + + public VmMigrationDiskStartParameters(Guid vdsId, + Guid vmId, + Guid storagePoolId, + Guid srcStorageDomainId, + Guid targetStorageDomainId, + Guid imageGroupId, + Guid imageId) { + super(vdsId, vmId); + this.storagePoolId = storagePoolId; + this.srcStorageDomainId = srcStorageDomainId; + this.targetStorageDomainId = targetStorageDomainId; + this.imageGroupId = imageGroupId; + this.imageId = imageId; + } + + public VmMigrationDiskStartParameters() { + } + + public Guid getStoragePoolId() { + return storagePoolId; + } + + public void setStoragePoolId(Guid storagePoolId) { + this.storagePoolId = storagePoolId; + } + + public Guid getSrcStorageDomainId() { + return srcStorageDomainId; + } + + public void setSrcStorageDomainId(Guid srcStorageDomainId) { + this.srcStorageDomainId = srcStorageDomainId; + } + + public Guid getTargetStorageDomainId() { + return targetStorageDomainId; + } + + public void setTargetStorageDomainId(Guid targetStorageDomainId) { + this.targetStorageDomainId = targetStorageDomainId; + } + + public Guid getImageGroupId() { + return imageGroupId; + } + + public void setImageGroupId(Guid imageGroupId) { + this.imageGroupId = imageGroupId; + } + + public Guid getImageId() { + return imageId; + } + + public void setImageId(Guid imageId) { + this.imageId = imageId; + } + + private Guid storagePoolId; + private Guid srcStorageDomainId; + private Guid targetStorageDomainId; + private Guid imageGroupId; + private Guid imageId; + +} diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmMigrationDiskStartVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmMigrationDiskStartVDSCommand.java new file mode 100644 index 0000000..39c18f8 --- /dev/null +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmMigrationDiskStartVDSCommand.java @@ -0,0 +1,30 @@ +package org.ovirt.engine.core.vdsbroker.vdsbroker; + +import org.ovirt.engine.core.common.vdscommands.VmMigrationDiskStartParameters; +import org.ovirt.engine.core.vdsbroker.xmlrpc.XmlRpcStruct; + +public class VmMigrationDiskStartVDSCommand<P extends VmMigrationDiskStartParameters> extends VdsBrokerCommand<P> { + + public VmMigrationDiskStartVDSCommand(P parameters) { + super(parameters); + } + + @Override + protected void ExecuteVdsBrokerCommand() { + XmlRpcStruct srcDisk = new XmlRpcStruct(); + srcDisk.add(VdsProperties.Device, "disk"); + srcDisk.add(VdsProperties.PoolId, getParameters().getStoragePoolId().toString()); + srcDisk.add(VdsProperties.DomainId, getParameters().getSrcStorageDomainId().toString()); + srcDisk.add(VdsProperties.ImageId, getParameters().getImageGroupId().toString()); + srcDisk.add(VdsProperties.VolumeId, getParameters().getImageId().toString()); + + XmlRpcStruct dstDisk = new XmlRpcStruct(); + dstDisk.add(VdsProperties.Device, "disk"); + dstDisk.add(VdsProperties.PoolId, getParameters().getStoragePoolId().toString()); + dstDisk.add(VdsProperties.DomainId, getParameters().getTargetStorageDomainId().toString()); + dstDisk.add(VdsProperties.ImageId, getParameters().getImageGroupId().toString()); + dstDisk.add(VdsProperties.VolumeId, getParameters().getImageId().toString()); + + getBroker().vmDiskMigrateStart(getParameters().getVmId().toString(), srcDisk, dstDisk); + } +} -- To view, visit http://gerrit.ovirt.org/8139 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I11d7ec467938be47f6a05eb7fa6df141815b000b Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Allon Mureinik <amure...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches