@Override public Response sparsify(Action action) { Disk disk = get(); if (disk == null) { throw new WebApplicationException(Response.status(Response.Status.NOT_FOUND).build()); } Guid imageId = getDiskImageId(disk.getImageId()); StorageJobCommandParameters params = new StorageJobCommandParameters(imageId); return doAction(ActionType.SparsifyImage, params, action); }
@Override public Response reduce(Action action) { Disk disk = get(); Guid imageId = getDiskImageId(disk.getImageId()); ImagesActionsParametersBase params = new ImagesActionsParametersBase(imageId); return doAction(ActionType.ReduceImage, params, action); }
@Override public Response reduce(Action action) { Disk disk = get(); Guid imageId = getDiskImageId(disk.getImageId()); ImagesActionsParametersBase params = new ImagesActionsParametersBase(imageId); return doAction(ActionType.ReduceImage, params, action); }
private void prepareImagesForCloneFromSnapshotParams(DiskAttachments disksAttachments, Map<Guid, DiskImage> imagesFromConfiguration) { if (disksAttachments.getDiskAttachments() != null) { for (DiskAttachment diskAttachment : disksAttachments.getDiskAttachments()) { Disk disk = diskAttachment.getDisk(); if (disk != null && disk.isSetImageId()) { DiskImage diskImageFromConfig = imagesFromConfiguration.get(asGuid(disk.getImageId())); DiskImage diskImage = (DiskImage) getMapper(Disk.class, org.ovirt.engine.core.common.businessentities.storage.Disk.class).map(disk, diskImageFromConfig); imagesFromConfiguration.put(diskImage.getId(), diskImage); } } } }
@Override public Response move(Action action) { validateParameters(action, "storageDomain.id|name"); Guid storageDomainId = getStorageDomainId(action); Disk disk = getDisk(); Guid sourceStorageDomainId = getSourceStorageDomainId(disk); Guid imageId = getDiskImageId(disk.getImageId()); MoveDiskParameters innerParams = new MoveDiskParameters( imageId, sourceStorageDomainId, storageDomainId); innerParams.setImageGroupID(asGuid(disk.getId())); MoveDisksParameters params = new MoveDisksParameters(Collections.singletonList(innerParams)); return doAction(ActionType.MoveDisk, params, action); }
@Override public Response copy(Action action) { validateParameters(action, "storageDomain.id|name"); Guid storageDomainId = getStorageDomainId(action); Disk disk = getDisk(); Guid imageId = asGuid(disk.getImageId()); MoveOrCopyImageGroupParameters params = new MoveOrCopyImageGroupParameters(imageId, Guid.Empty, storageDomainId, ImageOperation.Copy); params.setImageGroupID(asGuid(disk.getId())); return doAction(ActionType.MoveOrCopyDisk, params, action); }
@Override public Response copy(Action action) { validateParameters(action, "storageDomain.id|name"); Guid storageDomainId = getStorageDomainId(action); Disk disk = get(); Guid imageId = getDiskImageId(disk.getImageId()); Guid sourceStorageDomainId = getSourceStorageDomainId(disk); MoveOrCopyImageGroupParameters params = new MoveOrCopyImageGroupParameters(imageId, sourceStorageDomainId, storageDomainId, ImageOperation.Copy); params.setImageGroupID(asGuid(disk.getId())); params.setQuotaId(action.isSetQuota() ? asGuid(action.getQuota().getId()) : null); params.setDiskProfileId(action.isSetDiskProfile() ? asGuid(action.getDiskProfile().getId()) : null); Disk actionDisk = action.getDisk(); if (actionDisk != null) { String name = actionDisk.getName(); String alias = actionDisk.getAlias(); if (name != null && !StringUtils.isEmpty(name)) { params.setNewAlias(name); } else if (alias != null && !StringUtils.isEmpty(alias)) { params.setNewAlias(alias); } } return doAction(ActionType.MoveOrCopyDisk, params, action); }
@Override public Response move(Action action) { validateParameters(action, "storageDomain.id|name"); Guid storageDomainId = getStorageDomainId(action); Disk disk = get(); Guid imageId = getDiskImageId(disk.getImageId()); Guid sourceStorageDomainId = getSourceStorageDomainId(disk); MoveDiskParameters params = new MoveDiskParameters( imageId, sourceStorageDomainId, storageDomainId); params.setImageGroupID(asGuid(disk.getId())); params.setQuotaId(action.isSetQuota() ? asGuid(action.getQuota().getId()) : null); params.setDiskProfileId(action.isSetDiskProfile() ? asGuid(action.getDiskProfile().getId()) : null); return doAction(ActionType.MoveDisk, params, action); }
private static void mapDiskToDiskImageProperties(Disk disk, DiskImage diskImage) { if (disk.isSetImageId()) { diskImage.setImageId(GuidUtils.asGuid(disk.getImageId()));
@Override protected void verify(Disk model, Disk transform) { assertNotNull(transform); assertEquals(model.getId(), transform.getId()); assertEquals(model.getImageId(), transform.getImageId()); assertEquals(model.getFormat(), transform.getFormat()); assertEquals(model.getDescription(), transform.getDescription()); assertEquals(model.getLogicalName(), transform.getLogicalName()); assertEquals(model.getOpenstackVolumeType().getName(), transform.getOpenstackVolumeType().getName()); assertNotNull(model.getSnapshot()); assertEquals(model.getSnapshot().getId(), transform.getSnapshot().getId()); assertEquals(model.getStatus(), transform.getStatus(), "unexpected status"); assertEquals(model.isSparse(), transform.isSparse(), "unexpected sparse"); assertEquals(model.isPropagateErrors(), transform.isPropagateErrors(), "unexpected propagate errors"); assertEquals(model.isWipeAfterDelete(), transform.isWipeAfterDelete(), "unexpected wipe after delete"); assertEquals(model.isShareable(), transform.isShareable(), "unexpected shareable"); }
to.setImageId(from.getImageId());