public VmBase(VmBase vmBase) { this(vmBase.getName(), vmBase.getId(), vmBase.getClusterId(), vmBase.getOsId(), vmBase.getCreationDate(), vmBase.getDescription(), vmBase.getComment(), vmBase.getMemSizeMb(), vmBase.getMaxMemorySizeMb(), vmBase.getNumOfSockets(), vmBase.getCpuPerSocket(), vmBase.getThreadsPerCpu(), vmBase.getNumOfMonitors(), vmBase.getSingleQxlPci(), vmBase.getTimeZone(), vmBase.getVmType(), vmBase.getUsbPolicy(), vmBase.getDefaultBootSequence(), vmBase.getNiceLevel(), vmBase.getCpuShares(), vmBase.getPriority(), vmBase.isAutoStartup(), vmBase.isStateless(), vmBase.getIsoPath(), vmBase.getOrigin(), vmBase.getKernelUrl(), vmBase.getKernelParams(), vmBase.getInitrdUrl(), vmBase.getQuotaId(),
@Override protected void build(VmBase source, VmBase destination) { destination.setDedicatedVmForVdsList(source.getDedicatedVmForVdsList()); } }
@Override protected void build(VmBase source, VmBase destination) { destination.setMigrationSupport(source.getMigrationSupport()); destination.setMigrationDowntime(source.getMigrationDowntime()); destination.setMigrationPolicyId(source.getMigrationPolicyId()); } }
public int getNumOfCpus(boolean countThreadsAsCPU) { return this.getCpuPerSocket() * this.getNumOfSockets() * (countThreadsAsCPU ? this.getThreadsPerCpu() : 1); }
protected void writeGeneralData() { _writer.writeElement(NAME, vmBase.getName()); if (vmBase.getDescription() != null) { _writer.writeElement(DESCRIPTION, vmBase.getDescription()); if (vmBase.getComment() != null) { _writer.writeElement(COMMENT, vmBase.getComment()); _writer.writeElement(CREATION_DATE, OvfParser.localDateToUtcDateString(vmBase.getCreationDate())); _writer.writeElement(EXPORT_DATE, OvfParser.localDateToUtcDateString(new Date())); _writer.writeElement(DELETE_PROTECTED, String.valueOf(vmBase.isDeleteProtected())); if (vmBase.getSsoMethod() != null) { _writer.writeElement(SSO_METHOD, vmBase.getSsoMethod().toString()); _writer.writeElement(IS_SMARTCARD_ENABLED, String.valueOf(vmBase.isSmartcardEnabled())); _writer.writeElement(NUM_OF_IOTHREADS, String.valueOf(vmBase.getNumOfIoThreads())); _writer.writeElement(TIMEZONE, vmBase.getTimeZone()); _writer.writeElement(DEFAULT_BOOT_SEQUENCE, String.valueOf(vmBase.getDefaultBootSequence().getValue())); if (!StringUtils.isBlank(vmBase.getInitrdUrl())) { _writer.writeElement(INITRD_URL, vmBase.getInitrdUrl()); if (!StringUtils.isBlank(vmBase.getKernelUrl())) { _writer.writeElement(KERNEL_URL, vmBase.getKernelUrl()); if (!StringUtils.isBlank(vmBase.getKernelParams())) { _writer.writeElement(KERNEL_PARAMS, vmBase.getKernelParams());
assertTrue(vm.isAllowConsoleReconnect()); assertEquals(VM_TYPE, vm.getVmType()); assertEquals(OS_TYPE, vm.getOsId()); assertEquals(TIMEZONE, vm.getTimeZone()); assertEquals(CLUSTER_ID, vm.getClusterId()); assertEquals(BOOT_SEQUENCE, vm.getDefaultBootSequence()); assertTrue(vm.isBootMenuEnabled()); assertEquals(ISO_NAME, vm.getIsoPath()); assertEquals(MEM_SIZE, vm.getMemSizeMb()); assertEquals(MIN_MEM, vm.getMinAllocatedMem()); assertEquals(NUM_OF_MONITORS, vm.getNumOfMonitors()); assertEquals(SERIAL_NUMBER_POLICY, vm.getSerialNumberPolicy()); assertEquals(CUSTOM_SERIAL_NUMBER, vm.getCustomSerialNumber()); assertTrue(vm.getSingleQxlPci()); assertTrue(vm.isSmartcardEnabled()); assertEquals(SSO_METHOD, vm.getSsoMethod()); assertEquals(NUM_OF_SOCKETS, vm.getNumOfSockets()); assertTrue(vm.getThreadsPerCpu() > 0); assertEquals(TOTAL_CPU / (NUM_OF_SOCKETS * vm.getThreadsPerCpu()), vm.getCpuPerSocket()); assertTrue(vm.isDeleteProtected()); assertEquals(VNC_KEYBOARD_LAYOUT, vm.getVncKeyboardLayout()); assertEquals(DISPLAY_TYPE, vm.getDefaultDisplayType()); assertTrue(vm.isSpiceFileTransferEnabled()); assertTrue(vm.isSpiceCopyPasteEnabled()); assertTrue(vm.getAutoConverge()); assertTrue(vm.getMigrateCompressed()); assertEquals(EMULATED_MACHINE, vm.getCustomEmulatedMachine()); assertEquals(CUSTOM_CPU_NAME, vm.getCustomCpuName()); assertEquals(LARGE_ICON_ID, vm.getLargeIconId());
private static VmStatic doMapVmBaseHwPartToVmStatic(VmBase entity, VmStatic staticVm, Version version) { staticVm.setMemSizeMb(entity.getMemSizeMb()); staticVm.setMaxMemorySizeMb(entity.getMaxMemorySizeMb()); staticVm.setAutoStartup(entity.isAutoStartup()); staticVm.setSmartcardEnabled(entity.isSmartcardEnabled()); staticVm.setDefaultBootSequence(entity.getDefaultBootSequence()); staticVm.setDefaultDisplayType(entity.getDefaultDisplayType()); staticVm.setNumOfSockets(entity.getNumOfSockets()); staticVm.setCpuPerSocket(entity.getCpuPerSocket()); staticVm.setThreadsPerCpu(entity.getThreadsPerCpu()); staticVm.setNumOfMonitors(entity.getNumOfMonitors()); staticVm.setSingleQxlPci(entity.getSingleQxlPci()); staticVm.setPriority(entity.getPriority()); staticVm.setUsbPolicy(entity.getUsbPolicy()); staticVm.setTunnelMigration(entity.getTunnelMigration()); staticVm.setMigrationSupport(entity.getMigrationSupport()); staticVm.setMigrationDowntime(entity.getMigrationDowntime()); staticVm.setDedicatedVmForVdsList(entity.getDedicatedVmForVdsList()); staticVm.setMinAllocatedMem(entity.getMinAllocatedMem()); staticVm.setNumOfIoThreads(entity.getNumOfIoThreads()); return staticVm; }
model.setId(entity.getId().toString()); model.setName(entity.getName()); model.setDescription(entity.getDescription()); model.setMemory((long) entity.getMemSizeMb() * BYTES_PER_MB); io.setThreads(entity.getNumOfIoThreads()); if (entity.getCreationDate() != null) { model.setCreationTime(DateMapper.map(entity.getCreationDate(), null)); if (entity.getUsbPolicy() != null) { Usb usb = new Usb(); usb.setEnabled(UsbMapperUtils.getIsUsbEnabled(entity.getUsbPolicy())); UsbType usbType = UsbMapperUtils.getUsbType(entity.getUsbPolicy()); if (usbType != null) { usb.setType(usbType); topology.setSockets(entity.getNumOfSockets()); topology.setCores(entity.getCpuPerSocket()); topology.setThreads(entity.getThreadsPerCpu()); model.setCpu(new Cpu()); model.getCpu().setTopology(topology); model.getHighAvailability().setEnabled(entity.isAutoStartup()); model.getHighAvailability().setPriority(entity.getPriority()); model.setMigrationDowntime(mapNullToMinusOne(entity.getMigrationDowntime())); model.setMigration(MigrationOptionsMapper.map(entity, null));
model.setComment(entity.getComment()); if (entity.getClusterId() != null) { Cluster cluster = new Cluster(); cluster.setId(entity.getClusterId().toString()); model.setCluster(cluster); if (entity.getVmType() != null) { model.setType(mapVmType(entity.getVmType())); if (entity.getResumeBehavior() != null) { model.setStorageErrorResumeBehaviour(mapResumeBehavior(entity.getResumeBehavior())); if (entity.getOrigin() != null) { model.setOrigin(map(entity.getOrigin(), null)); model.getBios().getBootMenu().setEnabled(entity.isBootMenuEnabled()); if (entity.getBiosType() != null) { model.getBios().setType(map(entity.getBiosType(), null)); if(entity.getTimeZone() != null) { model.setTimeZone(new TimeZone()); model.getTimeZone().setName(entity.getTimeZone()); if (entity.getVmInit() != null && entity.getVmInit().getDomain() != null && StringUtils.isNotBlank(entity.getVmInit().getDomain())) { Domain domain = new Domain(); domain.setName(entity.getVmInit().getDomain()); model.setDomain(domain);
@Override protected void build(VmBase vm, UnitVmModel model) { model.getMemSize().setEntity(vm.getMemSizeMb()); model.getMaxMemorySize().setEntity(vm.getMaxMemorySizeMb() ); model.getIoThreadsEnabled().setEntity(vm.getNumOfIoThreads() != 0); model.getNumOfIoThreads().setEntity(Integer.toString(vm.getNumOfIoThreads())); model.getMinAllocatedMemory().setEntity(vm.getMinAllocatedMem()); model.getUsbPolicy().setSelectedItem(vm.getUsbPolicy()); model.getNumOfMonitors().setSelectedItem(vm.getNumOfMonitors()); model.getIsSingleQxlEnabled().setEntity(vm.getSingleQxlPci()); model.setBootSequence(vm.getDefaultBootSequence()); model.getTotalCPUCores().setEntity(Integer.toString(vm.getNumOfCpus())); model.getNumOfSockets().setSelectedItem(vm.getNumOfSockets()); model.getCoresPerSocket().setSelectedItem(vm.getCpuPerSocket()); model.getThreadsPerCore().setSelectedItem(vm.getThreadsPerCpu()); model.getIsSmartcardEnabled().setEntity(vm.isSmartcardEnabled()); model.setSelectedMigrationDowntime(vm.getMigrationDowntime()); model.selectMigrationPolicy(vm.getMigrationPolicyId()); model.getEmulatedMachine().setSelectedItem(vm.getCustomEmulatedMachine()); model.getCustomCpu().setSelectedItem(vm.getCustomCpuName()); model.getBiosType().setSelectedItem(vm.getBiosType()); } }
maybeSetEntity(model.getMemSize(), vmBase.getMemSizeMb()); maybeSetEntity(model.getMaxMemorySize(), vmBase.getMaxMemorySizeMb()); maybeSetEntity(model.getIoThreadsEnabled(), vmBase.getNumOfIoThreads() != 0); maybeSetEntity(model.getNumOfIoThreads(), Integer.toString(vmBase.getNumOfIoThreads())); maybeSetEntity(model.getTotalCPUCores(), Integer.toString(vmBase.getNumOfCpus())); model.setBootSequence(vmBase.getDefaultBootSequence()); if (supportedModes.contains(vmBase.getMigrationSupport())) { maybeSetSelectedItem(getModel().getMigrationMode(), vmBase.getMigrationSupport()); maybeSetEntity(model.getIsHighlyAvailable(), vmBase.isAutoStartup()); maybeSetSelectedItem(model.getNumOfSockets(), vmBase.getNumOfSockets()); maybeSetSelectedItem(model.getCoresPerSocket(), vmBase.getCpuPerSocket()); maybeSetSelectedItem(model.getThreadsPerCore(), vmBase.getThreadsPerCpu()); maybeSetSelectedItem(model.getEmulatedMachine(), vmBase.getCustomEmulatedMachine()); maybeSetSelectedItem(model.getCustomCpu(), vmBase.getCustomCpuName()); model.setSelectedMigrationDowntime(vmBase.getMigrationDowntime()); model.selectMigrationPolicy(vmBase.getMigrationPolicyId()); priorityUtil.initPriority(vmBase.getPriority(), new PriorityUtil.PriorityUpdatingCallbacks() { @Override public void beforeUpdates() { if (vmBase.getMinAllocatedMem() != 0) { model.getMinAllocatedMemory().setEntity(vmBase.getMinAllocatedMem()); Frontend.getInstance().runQuery(QueryType.GetConsoleDevices, new IdQueryParameters(vmBase.getId()), new AsyncQuery<QueryReturnValue>(r -> {
/** * Verifies {@link org.ovirt.engine.ui.uicommonweb.builders.vm.CommonUnitToVmBaseBuilder} */ protected void verifyBuiltCommonVm(VmBase vm) { verifyBuiltCoreVm(vm); assertTrue(vm.isStateless()); assertTrue(vm.isRunAndPause()); assertTrue(vm.isAutoStartup()); assertEquals(QUOTA_ID, vm.getQuotaId()); assertEquals(CPU_PROFILE_ID, vm.getCpuProfileId()); assertEquals(PRIORITY, vm.getPriority()); assertEquals(DESCRIPTION, vm.getDescription()); assertEquals(COMMENT, vm.getComment()); }
Frontend.getInstance().runQuery(QueryType.GetGraphicsDevices, new IdQueryParameters(vmBase.getId()), new AsyncQuery<QueryReturnValue>(returnValue -> { deactivate(); model.getIsHeadlessModeEnabled().setEntity(vmBase.getDefaultDisplayType() == DisplayType.none); if (displayTypes.contains(vmBase.getDefaultDisplayType())) { displayProtocol = vmBase.getDefaultDisplayType(); // if display types contain DT of a vm, pick this one maybeSetSelectedItem(model.getNumOfMonitors(), vmBase.getNumOfMonitors()); maybeSetSelectedItem(model.getUsbPolicy(), vmBase.getUsbPolicy()); maybeSetEntity(model.getIsSmartcardEnabled(), vmBase.isSmartcardEnabled()); maybeSetSingleQxlPci(vmBase);
private void writeCpu() { _writer.writeStartElement("Item"); _writer.writeElement(RASD_URI, "Caption", String.format("%1$s virtual cpu", vmBase.getNumOfCpus())); _writer.writeElement(RASD_URI, "Description", "Number of virtual CPU"); _writer.writeElement(RASD_URI, "InstanceId", String.valueOf(++_instanceId)); _writer.writeElement(RASD_URI, "ResourceType", OvfHardware.CPU); _writer.writeElement(RASD_URI, "num_of_sockets", String.valueOf(vmBase.getNumOfSockets())); _writer.writeElement(RASD_URI, "cpu_per_socket", String.valueOf(vmBase.getCpuPerSocket())); _writer.writeElement(RASD_URI, "threads_per_cpu", String.valueOf(vmBase.getThreadsPerCpu())); _writer.writeElement(RASD_URI, "max_num_of_vcpus", String.valueOf(maxNumOfVcpus())); // TODO: replace with Limit _writer.writeElement(RASD_URI, "VirtualQuantity", String.valueOf(vmBase.getNumOfCpus())); _writer.writeEndElement(); }
@Override public void buildVirtualSystem() { XmlNode virtualSystem = selectSingleNode(_document, "//*/Content"); consumeReadProperty(virtualSystem, NAME, val -> fullEntityOvfData.getVmBase().setName(val)); fullEntityOvfData.getVmBase().setOvfVersion(getVersion()); if (node != null) { readOsSection(node); if (!osRepository.isLinux(fullEntityOvfData.getVmBase().getOsId()) || fullEntityOvfData.getVmBase().getDefaultDisplayType() != DisplayType.qxl) { fullEntityOvfData.getVmBase().setSingleQxlPci(false);
private void addDefaultGraphicsDevice() { VmDevice device = VmDeviceCommonUtils.findVmDeviceByGeneralType( vmBase.getManagedDeviceMap(), VmDeviceGeneralType.GRAPHICS); if (device != null) { return; osRepository.getGraphicsAndDisplays(vmBase.getOsId(), new Version(getVersion())); GraphicsType graphicsType = vmBase.getDefaultDisplayType() == DisplayType.vga ? GraphicsType.VNC : GraphicsType.SPICE; GraphicsType supportedGraphicsType = null; for (Pair<GraphicsType, DisplayType> pair : graphicsAndDisplays) { if (pair.getSecond() == vmBase.getDefaultDisplayType()) { if (pair.getFirst() == graphicsType) { supportedGraphicsType = graphicsType; device.setId(new VmDeviceId(Guid.newGuid(), vmBase.getId())); addManagedVmDevice(device); } else { log.warn("Cannot find any graphics type for display type {} supported by OS {} in compatibility version {}", vmBase.getDefaultDisplayType().name(), osRepository.getOsName(vmBase.getOsId()), getVersion());
/** * Verifies {@link org.ovirt.engine.ui.uicommonweb.builders.vm.FullUnitToVmBaseBuilder} */ protected void verifyBuiltVmBase(VmBase vm) { verifyBuiltCommonVm(vm); verifyBuiltKernelOptions(vm); verifyBuiltMigrationOptions(vm); assertEquals(HOST_ID, vm.getDedicatedVmForVdsList().get(0)); assertEquals(VM_NAME, vm.getName()); assertEquals(USB_POLICY, vm.getUsbPolicy()); }
@Override protected void build(VmBase vm, UnitVmModel model) { model.getName().setEntity(vm.getName()); model.getDescription().setEntity(vm.getDescription()); model.getVmId().setEntity(vm.getId().toString()); } }
public static void addVideoDevice(VmBase vmBase) { if (vmBase.getDefaultDisplayType().getDefaultVmDeviceType() == null) { return; } VmDevice vmDevice = new VmDevice(); vmDevice.setId(new VmDeviceId(Guid.newGuid(), vmBase.getId())); vmDevice.setType(VmDeviceGeneralType.VIDEO); vmDevice.setDevice(vmBase.getDefaultDisplayType().getDefaultVmDeviceType().getName()); vmDevice.setManaged(true); vmDevice.setPlugged(true); vmDevice.setReadOnly(false); vmDevice.setAddress(""); vmBase.getManagedDeviceMap().put(vmDevice.getDeviceId(), vmDevice); }
/** * Verifies {@link org.ovirt.engine.ui.uicommonweb.builders.vm.MigrationOptionsUnitToVmBaseBuilder} */ protected void verifyBuiltMigrationOptions(VmBase vm) { assertEquals(MIGRATION_SUPPORT, vm.getMigrationSupport()); assertEquals(MIGRATION_DOWNTIME, vm.getMigrationDowntime()); }