private Map<Guid, Guid> mapDisks(DiskAttachments diskAttachments) { Map<Guid, Guid> diskToImageIds = null; if (diskAttachments.isSetDiskAttachments()) { diskToImageIds = diskAttachments.getDiskAttachments().stream() .map(DiskAttachment::getDisk) .filter(Objects::nonNull) .map(disk -> (DiskImage) DiskMapper.map(disk, null)) .collect(Collectors.toMap(BaseDisk::getId, DiskImage::getImageId)); } return diskToImageIds; }
@Mapping(from = org.ovirt.engine.core.common.businessentities.storage.Disk.class, to = Disk.class) public static Disk map(org.ovirt.engine.core.common.businessentities.storage.Disk entity, Disk template) { Disk model = template != null ? template : new Disk(); // name is depreciated, use alias instead. model.setName(entity.getDiskAlias()); model.setAlias(entity.getDiskAlias()); if (entity.getId() != null) { model.setId(entity.getId().toString()); } model.setPropagateErrors(PropagateErrors.On == entity.getPropagateErrors()); model.setWipeAfterDelete(entity.isWipeAfterDelete()); model.setShareable(entity.isShareable()); model.setDescription(entity.getDiskDescription()); model.setLogicalName(entity.getLogicalName()); model.setStorageType(map(entity.getDiskStorageType())); if (entity.getDiskStorageType() == org.ovirt.engine.core.common.businessentities.storage.DiskStorageType.IMAGE || entity.getDiskStorageType() == org.ovirt.engine.core.common.businessentities.storage.DiskStorageType.CINDER || entity.getDiskStorageType() == org.ovirt.engine.core.common.businessentities.storage.DiskStorageType.MANAGED_BLOCK_STORAGE) { mapDiskImageToDiskFields((DiskImage) entity, model); } else { model.setLunStorage(StorageLogicalUnitMapper.map(((LunDisk) entity).getLun(), new HostStorage())); if (entity.getSgio() != null) { model.setSgio(map(entity.getSgio(), null)); } } model.setContentType(mapDiskContentType(entity.getContentType())); return model; }
diskImage.setVolumeFormat(map(disk.getFormat(), null));
model.setFormat(map(entity.getVolumeFormat(), null));
engineDisk.setSgio(map(disk.getSgio(), null));
List<DiskImage> mapDisks(Disks disks) { List<DiskImage> diskImages = null; if (disks != null && disks.isSetDisks()) { diskImages = disks.getDisks().stream() .filter(Objects::nonNull) .map(disk -> (DiskImage) DiskMapper.map(disk, null)) .collect(Collectors.toList()); } return diskImages; }
public List<DiskImage> mapDisks(Disks disks) { if (disks!=null && disks.isSetDisks()) { return disks.getDisks().stream().map(d -> (DiskImage)DiskMapper.map(d, null)).collect(Collectors.toList()); } return null; }
private static Map<String, Object> mapExternalLunMapping(RegistrationLunMappings model) { return model.getRegistrationLunMappings() .stream() .collect(Collectors.toMap( registrationMap -> registrationMap.isSetFrom() ? getLogicalUnitId(registrationMap.getFrom()) : null, registrationMap -> registrationMap.isSetTo() ? DiskMapper.map(registrationMap.getTo(), null) : null)); }
private void updateStorageTypeForDisk(Disk disk, Guid storageDomainId) { org.ovirt.engine.core.common.businessentities.StorageDomain storageDomain = getStorageDomainById(storageDomainId); if (storageDomain != null) { disk.setStorageType(DiskMapper.map(storageDomain.getStorageDomainType())); } }
@Override public Response remove() { DiskImage diskImage = (DiskImage) DiskMapper.map(get(), null); return performAction(ActionType.RemoveDiskSnapshots, new RemoveDiskSnapshotsParameters(diskImage.getImageId())); } }
protected void updateStorageTypeForDisk(Disk disk) { Guid storageDomainId = getStorageDomainId(disk); if (storageDomainId != null) { org.ovirt.engine.core.common.businessentities.StorageDomain storageDomain = getStorageDomainById(storageDomainId); if (storageDomain != null) { disk.setStorageType(DiskMapper.map(storageDomain.getStorageDomainType())); } } }
protected Response createDisk(AbstractBackendCollectionResource resource, DiskAttachment attachment, IResolver entityResolver) { Disk disk = attachment.getDisk(); validateDiskForCreation(disk); updateStorageTypeForDisk(disk); return resource.performCreate(ActionType.AddDisk, getAddParameters(attachment, DiskMapper.map(disk, null), disk), entityResolver); }
@Override public Disks list() { Disks disks = new Disks(); if (parent.getSnapshot().isVmConfigurationAvailable()) { VM vm = parent.collection.getVmPreview(parent.get()); for (DiskImage disk : vm.getDiskList()) { Disk d = DiskMapper.map(disk, null); map(d, parent.id); disks.getDisks().add(d); } } return disks; }
continue; DiskImage destinationDisk = (DiskImage) DiskMapper.map(disk, sourceDisk); if (isTemplateGeneralStorageDomainSet) { destinationDisk.setStorageIds(new ArrayList<>(Arrays.asList(storageDomainId)));
@Test public void testInitialSize() { Long initalSize = 54321L; Disk model = new Disk(); model.setStorageType(DiskStorageType.IMAGE); model.setInitialSize(initalSize); DiskImage entity = (DiskImage) DiskMapper.map(model, null); assertEquals(initalSize.longValue(), entity.getActualSizeInBytes(), "ActualSizeInBytes doesn't match the initial size as expected"); model = DiskMapper.map(entity, null); assertNull(model.getInitialSize(), "initial size shouldn't be mapped back to the model"); } }
@Mapping(from = DiskSnapshot.class, to = org.ovirt.engine.core.common.businessentities.storage.Disk.class) public static org.ovirt.engine.core.common.businessentities.storage.Disk map(DiskSnapshot diskSnapshot, org.ovirt.engine.core.common.businessentities.storage.Disk template) { DiskImage engineDisk = (DiskImage) DiskMapper.map(diskSnapshot, template); engineDisk.setImageId(GuidUtils.asGuid(diskSnapshot.getId())); if (diskSnapshot.isSetDisk()) { engineDisk.setId(GuidUtils.asGuid(diskSnapshot.getDisk().getId())); } return engineDisk; }
@Mapping(from = org.ovirt.engine.core.common.businessentities.storage.Disk.class, to = DiskSnapshot.class) public static DiskSnapshot map(org.ovirt.engine.core.common.businessentities.storage.Disk entity, DiskSnapshot template) { if (template == null) { template = new DiskSnapshot(); } DiskSnapshot model = (DiskSnapshot) DiskMapper.map(entity, template); Disk disk = new Disk(); disk.setId(entity.getId().toString()); model.setDisk(disk); DiskImage diskImage = (DiskImage) entity; model.setId(diskImage.getImageId().toString()); model.setImageId(null); return model; }
private void setVolumesTypeFormat(Action action) { if (action.isSetVm()) { Vm modelVm = action.getVm(); if (!modelVm.isSetDiskAttachments()) { return; } Map<Guid, org.ovirt.engine.core.common.businessentities.storage.Disk> entityDisks = getDiskMap(); for (DiskAttachment modelDiskAttachment : modelVm.getDiskAttachments().getDiskAttachments()) { Disk modelDisk = modelDiskAttachment.getDisk(); if (modelDisk != null) { validateParameters(modelDisk, "id"); Guid modelDiskId = Guid.createGuidFromString(modelDisk.getId()); DiskImage entityDisk = (DiskImage) entityDisks.get(modelDiskId); if (entityDisk == null) { continue; } if (modelDisk.isSetFormat()) { VolumeFormat entityDiskFormat = DiskMapper.map(modelDisk.getFormat(), null); entityDisk.setVolumeFormat(entityDiskFormat); } if (modelDisk.isSetSparse()) { entityDisk.setVolumeType(modelDisk.isSparse() ? VolumeType.Sparse : VolumeType.Preallocated); } } } } }
@Override public ActionParametersBase getParameters(DiskAttachment incoming, org.ovirt.engine.core.common.businessentities.storage.DiskVmElement entity) { DiskVmElement dve = map(incoming, entity); dve.getId().setVmId(vmId); // Disk has to be sent along with the attachment data to the update command Disk disk = runQuery(QueryType.GetDiskByDiskId, new IdQueryParameters(Guid.createGuidFromString(diskId))).getReturnValue(); // If a <disk> was specified inside the attachment data we can update its properties too if (incoming.isSetDisk()) { disk = DiskMapper.map(incoming.getDisk(), disk); // TODO: Remove this in version 5 of the API as the setting of the read only attribute should be from DiskAttachment if (incoming.getDisk().isSetReadOnly()) { dve.setReadOnly(incoming.getDisk().isReadOnly()); } } return new VmDiskOperationParameterBase(dve, disk); } }
getEntity(0)); Disk model = getModel(); org.ovirt.engine.core.common.businessentities.storage.Disk imageToRegister = new DiskMapper().map(model, getEntity(0));