@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; }
public DiskVmElement getDiskAttachment(Guid id) { return parent.getDiskMap().get(id).getDiskVmElementForVm(parent.vm.getId()); } }
public double getDiskSize() { if (diskSize == 0) { for (Disk disk : getDiskMap().values()) { if (DiskStorageType.IMAGE == disk.getDiskStorageType()) { diskSize += disk.getSize() / Double.valueOf(1024 * 1024 * 1024); } } } return diskSize; }
private EntityModel<DiskModel> selectedOrNull(List<EntityModel<DiskModel>> list) { if (prevSelectedDisk == null) { return null; } if (prevSelectedDisk.getDiskStorageType() != diskStorageType) { return null; } for (EntityModel<DiskModel> item : list) { if (item.getEntity().getDisk().getId().equals(prevSelectedDisk.getId())) { return item; } } return null; }
private ArrayList<String> getDisksAliasesByImageStatus(List<DiskModel> disks, ImageStatus status) { ArrayList<String> disksAliases = new ArrayList<>(); if (disks == null) { return disksAliases; } for (DiskModel diskModel : disks) { Disk disk = diskModel.getDisk(); if (disk.getDiskStorageType() == DiskStorageType.IMAGE && ((DiskImage) disk).getImageStatus() == status) { disksAliases.add(disk.getDiskAlias()); } } return disksAliases; }
@Override public void initialize() { commonInitialize(); getSizeExtend().setIsAvailable(false); getAlias().setEntity(getDisk().getDiskAlias()); getDescription().setEntity(getDisk().getDiskDescription()); getIsShareable().setEntity(getDisk().isShareable()); getIsWipeAfterDelete().setEntity(getDisk().isWipeAfterDelete()); getIsScsiPassthrough().setEntity(getDisk().isScsiPassthrough()); getIsSgIoUnfiltered().setEntity(getDisk().getSgio() == ScsiGenericIO.UNFILTERED); getIsReadOnly().setEntity(getVm() != null && getDiskVmElement().isReadOnly()); switch (getDisk().getDiskStorageType()) { case IMAGE: DiskImage diskImage = (DiskImage) getDisk(); getDiskStorageType().setEntity(DiskStorageType.IMAGE); getSize().setEntity((int) diskImage.getSizeInGigabytes()); getVolumeType().setSelectedItem(diskImage.getVolumeType()); break; } }
private List<Guid> asIds(List<Disk> attachedNotSubmittedDisks) { List<Guid> res = new ArrayList<>(); for (Disk disk : attachedNotSubmittedDisks) { res.add(disk.getId()); } return res; } }
private void updateProperties() { Disk disk = getEntity(); setImage(disk.getDiskStorageType().isInternal()); setLun(disk.getDiskStorageType() == DiskStorageType.LUN); setAlias(disk.getDiskAlias()); setDescription(disk.getDiskDescription()); setDiskId(disk.getId().toString()); setVirtualSize(disk.getSize()); setWipeAfterDelete(disk.isWipeAfterDelete()); if (isImage()) { DiskImage diskImage = (DiskImage) disk; setVirtualSize(diskImage.getSizeInGigabytes()); setActualSize(diskImage.getActualSize()); setDiskProfileName(StringHelper.nullSafeJoin(",", diskImage.getDiskProfileNames())); //$NON-NLS-1$ setQuotaName(StringHelper.nullSafeJoin(",", diskImage.getQuotaNames())); //$NON-NLS-1$ setQuotaAvailable(!diskImage.getQuotaEnforcementType().equals(QuotaEnforcementTypeEnum.DISABLED)); } else if (isLun()) { LunDisk lunDisk = (LunDisk) disk; setLunId(lunDisk.getLun().getLUNId()); } } }
@Override protected DiskStorageType getRawValue(Disk object) { return object.getDiskStorageType(); } };
engineDisk.setDiskAlias(disk.getName()); engineDisk.setDiskAlias(disk.getAlias()); engineDisk.setId(GuidUtils.asGuid(disk.getId())); engineDisk.setPropagateErrors(disk.isPropagateErrors() ? PropagateErrors.On : PropagateErrors.Off); engineDisk.setWipeAfterDelete(disk.isWipeAfterDelete()); engineDisk.setLogicalName(disk.getLogicalName()); engineDisk.setDiskDescription(disk.getDescription()); engineDisk.setShareable(disk.isShareable()); if (!engineDisk.getDiskStorageType().isInternal()) { if (disk.isSetLunStorage()) { ((LunDisk) engineDisk).setLun(StorageLogicalUnitMapper.map(disk.getLunStorage(), null)); engineDisk.setSgio(map(disk.getSgio(), null)); engineDisk.setContentType(mapDiskContentType(disk.getContentType()));
@Override protected void addItemText(Object item) { DiskModel diskModel = (DiskModel) item; Disk disk = diskModel.getDisk(); boolean isInVm = diskModel.getVm() != null; notes.clear(); addItemLabel(getItemTextFormatted(disk.getDiskAlias())); if (disk.isShareable()) { notes.add(constants.shareable()); } if (isInVm && disk.getDiskVmElementForVm(diskModel.getVm().getId()) != null && disk.getDiskVmElementForVm(diskModel.getVm().getId()).isBoot()) { notes.add(constants.bootable()); } if (isInVm && disk.getNumberOfVms() > 1) { notes.add(messages.diskAttachedToOtherVMs(disk.getNumberOfVms() - 1, disk.getVmNames().get(0))); } else if (!isInVm && disk.getNumberOfVms() > 0) { notes.add(messages.diskAttachedToVMs(disk.getNumberOfVms())); } if (disk.getContentType() == DiskContentType.MEMORY_METADATA_VOLUME || disk.getContentType() == DiskContentType.MEMORY_DUMP_VOLUME) { notes.add(constants.memoryDisk()); notes.add(constants.otherMemoryDiskWillbeRemoved()); } if (!notes.isEmpty()) { String notes = constants.htmlTab() + messages.diskNote() + getFormattedNote(); addItemLabel(SafeHtmlUtils.fromSafeConstant("<b>" + notes + "</b>")); //$NON-NLS-1$ //$NON-NLS-2$ } addItemLabel(SafeHtmlUtils.fromSafeConstant(constants.lineBreak())); }
@Override public int compare(Disk o1, Disk o2) { return o1.getDiskAlias().compareTo(o2.getDiskAlias()); }
private void updateName(DiskModel diskModel) { Disk disk = diskModel.getDisk(); if (disk == null) { return; } String diskName = disk.getDiskAlias(); String size = Long.toString(disk.getSize()); if (disk.getDiskStorageType() == DiskStorageType.IMAGE || disk.getDiskStorageType() == DiskStorageType.CINDER) { size = Long.toString(((DiskImage) disk).getSizeInGigabytes()); } String type; if (diskExists) { type = constants.existingDisk(); } else if (getDiskModel().getEntity() instanceof InstanceImagesAttachDiskModel) { type = constants.attachingDisk(); } else { type = constants.creatingDisk(); } name.setEntity(messages.vmDialogDisk(diskName, size, type, diskModel.getIsBootable().getEntity() ? constants.bootDisk() : "")); }
private void initDisksAndStorageDomains(List<Disk> disks) { ArrayList<Disk> imageDisks = new ArrayList<>(); for (Disk disk : disks) { if (disk.isShareable() || disk.isDiskSnapshot()) { continue; } if (disk.getDiskStorageType() == DiskStorageType.IMAGE || disk.getDiskStorageType() == DiskStorageType.CINDER || disk.getDiskStorageType() == DiskStorageType.MANAGED_BLOCK_STORAGE) { imageDisks.add(disk); } } initStorageDomains(); initDisks(imageDisks); VmModelHelper.sendWarningForNonExportableDisks(getModel(), disks, VmModelHelper.WarningType.VM_TEMPLATE); }
getDisk().setDiskAlias(getAlias().getEntity()); getDisk().setDiskDescription(getDescription().getEntity()); getDisk().setWipeAfterDelete(getIsWipeAfterDelete().getEntity()); getDisk().setShareable(getIsShareable().getEntity()); getDisk().setPlugged(getIsPlugged().getEntity());
public boolean isPlugAvailableByDisks(boolean plug) { List<Disk> disks = getSelectedItems() != null ? getSelectedItems() : new ArrayList<Disk>(); for (Disk disk : disks) { boolean isLocked = disk.getDiskStorageType() == DiskStorageType.IMAGE && ((DiskImage) disk).getImageStatus() == ImageStatus.LOCKED; boolean isDiskHotpluggableInterface = false; if (getEntity() != null && disk.getDiskVmElementForVm(getEntity().getId()) != null) { isDiskHotpluggableInterface = AsyncDataProvider.getInstance().getDiskHotpluggableInterfaces( getEntity().getOs(), getEntity().getCompatibilityVersion()).contains(disk.getDiskVmElementForVm(getEntity().getId()).getDiskInterface()); } if (disk.getPlugged() == plug || isLocked || (!isDiskHotpluggableInterface && !isVmDown())) { return false; } } return true; }
private InstanceImageLineModel findBecomeNonBoot(Disk bootDisk) { for (InstanceImageLineModel model : getItems()) { if (model.isGhost()) { // this is not an actual item continue; } Disk disk = model.getDiskModel().getEntity().getDisk(); if (disk.getId() == null) { // does not yet exist on the server so no need to edit it continue; } if (disk.getId().equals(bootDisk.getId())) { if (disk.getDiskVmElementForVm(getVm().getId()).isBoot()) { return null; } else { // removed boot flag, this command has to be executed first so if other disk is marked as boot, // it will not fail with the message that you can have only one boot return model; } } } return null; }
@Test public void testGetVmPartialData() { List<Disk> disks = dao.getAllForVm(FixturesTool.VM_RHEL5_POOL_57, PRIVILEGED_USER_ID, true); assertFullGetAllForVMResult(disks); assertEquals("New Description", disks.get(0).getDiskDescription()); assertNotNull(disks.get(0).getDiskAlias()); }
disk.setDiskAlias(String.valueOf(node.attributes.get("ovf:disk-alias") .getValue())); disk.setDiskDescription(String.valueOf(node.attributes.get("ovf:disk-description") .getValue())); disk.setShareable(Boolean.parseBoolean(node.attributes.get("ovf:shareable").getValue()));
@Override public ImageResource getValue(Disk object) { return object.isShareable() ? getDefaultImage() : null; }