package org.ovirt.engine.core.common.action; import org.ovirt.engine.core.common.businessentities.storage.CopyVolumeType; import org.ovirt.engine.core.common.businessentities.storage.ImageDbOperationScope; import org.ovirt.engine.core.common.businessentities.storage.ImageOperation; import org.ovirt.engine.core.common.businessentities.storage.VolumeFormat; import org.ovirt.engine.core.common.businessentities.storage.VolumeType; import org.ovirt.engine.core.compat.Guid; public class MoveOrCopyImageGroupParameters extends ImagesContainterParametersBase { private static final long serialVersionUID = -5874446297123213719L; private ImageOperation operation; private boolean useCopyCollapse; private VolumeFormat volumeFormat; private VolumeType volumeType; private CopyVolumeType copyVolumeType; private boolean addImageDomainMapping; private boolean forceOverride; private Guid sourceDomainId; private Guid destImageGroupId; private ImageDbOperationScope revertDbOperationScope; private boolean shouldLockImageOnRevert; private String newAlias; public MoveOrCopyImageGroupParameters() { operation = ImageOperation.Unassigned; volumeFormat = VolumeFormat.UNUSED0; volumeType = VolumeType.Unassigned; copyVolumeType = CopyVolumeType.SharedVol; } public MoveOrCopyImageGroupParameters(Guid imageId, Guid sourceDomainId, Guid destDomainId, ImageOperation operation) { super(imageId); setSourceDomainId(sourceDomainId); setStorageDomainId(destDomainId); setOperation(operation); volumeFormat = VolumeFormat.UNUSED0; volumeType = VolumeType.Unassigned; copyVolumeType = CopyVolumeType.SharedVol; } public MoveOrCopyImageGroupParameters(Guid containerId, Guid imageGroupId, Guid leafSnapshotID, Guid storageDomainId, ImageOperation operation) { super(leafSnapshotID, containerId); setStorageDomainId(storageDomainId); setImageGroupID(imageGroupId); setOperation(operation); setUseCopyCollapse(false); setVolumeFormat(VolumeFormat.Unassigned); setVolumeType(VolumeType.Unassigned); setForceOverride(false); setDestinationImageId(leafSnapshotID); setDestImageGroupId(imageGroupId); copyVolumeType = CopyVolumeType.SharedVol; setShouldLockImageOnRevert(true); } public MoveOrCopyImageGroupParameters(Guid containerId, Guid imageGroupId, Guid imageId, Guid destImageGroupId, Guid destImageId, Guid storageDomainId, ImageOperation operation) { this(containerId, imageGroupId, imageId, storageDomainId, operation); setDestImageGroupId(destImageGroupId); setDestinationImageId(destImageId); } public MoveOrCopyImageGroupParameters(MoveOrCopyImageGroupParameters other) { super(other); this.operation = other.operation; this.useCopyCollapse = other.useCopyCollapse; this.volumeFormat = other.volumeFormat; this.volumeType = other.volumeType; this.copyVolumeType = other.copyVolumeType; this.addImageDomainMapping = other.addImageDomainMapping; this.forceOverride = other.forceOverride; this.sourceDomainId = other.sourceDomainId; this.destImageGroupId = other.destImageGroupId; this.revertDbOperationScope = other.revertDbOperationScope; this.shouldLockImageOnRevert = other.shouldLockImageOnRevert; this.newAlias = other.newAlias; } public Guid getDestImageGroupId() { return destImageGroupId; } public void setDestImageGroupId(Guid destImageGroupId) { this.destImageGroupId = destImageGroupId; } public ImageOperation getOperation() { return operation; } public void setOperation(ImageOperation value) { operation = value; } public boolean getUseCopyCollapse() { return useCopyCollapse; } public void setUseCopyCollapse(boolean value) { useCopyCollapse = value; } public VolumeFormat getVolumeFormat() { return volumeFormat; } public void setVolumeFormat(VolumeFormat value) { volumeFormat = value; } public VolumeType getVolumeType() { return volumeType; } public void setVolumeType(VolumeType value) { volumeType = value; } public CopyVolumeType getCopyVolumeType() { return copyVolumeType; } public void setCopyVolumeType(CopyVolumeType value) { copyVolumeType = value; } public boolean getAddImageDomainMapping() { return addImageDomainMapping; } public void setAddImageDomainMapping(boolean value) { addImageDomainMapping = value; } public boolean getForceOverride() { return forceOverride; } public void setForceOverride(boolean value) { forceOverride = value; } public Guid getSourceDomainId() { return sourceDomainId; } public void setSourceDomainId(Guid value) { sourceDomainId = value; } public ImageDbOperationScope getRevertDbOperationScope() { return revertDbOperationScope; } public void setRevertDbOperationScope(ImageDbOperationScope revertDbOperationScope) { this.revertDbOperationScope = revertDbOperationScope; } public boolean isShouldLockImageOnRevert() { return shouldLockImageOnRevert; } public void setShouldLockImageOnRevert(boolean shouldLockImageOnRevert) { this.shouldLockImageOnRevert = shouldLockImageOnRevert; } public String getNewAlias() { return newAlias; } public void setNewAlias(String newAlias) { this.newAlias = newAlias; } }