Search in sources :

Example 1 with UploadImageVDSCommandParameters

use of org.ovirt.engine.core.common.vdscommands.UploadImageVDSCommandParameters in project ovirt-engine by oVirt.

the class ExportRepoImageCommand method executeCommand.

@Override
protected void executeCommand() {
    DiskImage diskImage = getDiskImage();
    OpenStackImageProviderProxy proxy = getProviderProxy();
    acquireImageDbLock();
    String newImageId = proxy.createImageFromDiskImage(diskImage);
    getParameters().setParentCommand(ActionType.ExportRepoImage);
    Guid taskId = persistAsyncTaskPlaceHolder(getParameters().getParentCommand());
    getParameters().setEntityInfo(new EntityInfo(VdcObjectType.Disk, getParameters().getImageGroupID()));
    VDSReturnValue vdsReturnValue = runVdsCommand(VDSCommandType.UploadImage, new UploadImageVDSCommandParameters(getStorageDomain().getStoragePoolId(), getStorageDomain().getId(), diskImage.getId(), diskImage.getImageId(), new HttpLocationInfo(getProviderProxy().getImageUrl(newImageId), getProviderProxy().getUploadHeaders())));
    if (vdsReturnValue.getSucceeded()) {
        getReturnValue().getVdsmTaskIdList().add(createTask(taskId, vdsReturnValue.getCreationInfo(), getParameters().getParentCommand(), VdcObjectType.Disk, getParameters().getImageGroupID(), getParameters().getDestinationDomainId()));
    }
    getReturnValue().setActionReturnValue(newImageId);
    setSucceeded(true);
}
Also used : UploadImageVDSCommandParameters(org.ovirt.engine.core.common.vdscommands.UploadImageVDSCommandParameters) EntityInfo(org.ovirt.engine.core.common.asynctasks.EntityInfo) HttpLocationInfo(org.ovirt.engine.core.common.businessentities.HttpLocationInfo) Guid(org.ovirt.engine.core.compat.Guid) DiskImage(org.ovirt.engine.core.common.businessentities.storage.DiskImage) OpenStackImageProviderProxy(org.ovirt.engine.core.bll.provider.storage.OpenStackImageProviderProxy) VDSReturnValue(org.ovirt.engine.core.common.vdscommands.VDSReturnValue)

Aggregations

OpenStackImageProviderProxy (org.ovirt.engine.core.bll.provider.storage.OpenStackImageProviderProxy)1 EntityInfo (org.ovirt.engine.core.common.asynctasks.EntityInfo)1 HttpLocationInfo (org.ovirt.engine.core.common.businessentities.HttpLocationInfo)1 DiskImage (org.ovirt.engine.core.common.businessentities.storage.DiskImage)1 UploadImageVDSCommandParameters (org.ovirt.engine.core.common.vdscommands.UploadImageVDSCommandParameters)1 VDSReturnValue (org.ovirt.engine.core.common.vdscommands.VDSReturnValue)1 Guid (org.ovirt.engine.core.compat.Guid)1