use of org.ovirt.engine.api.model.Hosts in project ovirt-engine by oVirt.
the class VmBaseMapper method mapCommonEntityToModel.
/**
* Common for VM, template and instance type
*/
protected static void mapCommonEntityToModel(VmBase model, org.ovirt.engine.core.common.businessentities.VmBase entity) {
model.setId(entity.getId().toString());
model.setName(entity.getName());
model.setDescription(entity.getDescription());
model.setMemory((long) entity.getMemSizeMb() * BYTES_PER_MB);
Io io = model.getIo();
if (io == null) {
io = new Io();
model.setIo(io);
}
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);
}
model.setUsb(usb);
}
CpuTopology topology = new CpuTopology();
topology.setSockets(entity.getNumOfSockets());
topology.setCores(entity.getCpuPerSocket());
topology.setThreads(entity.getThreadsPerCpu());
model.setCpu(new Cpu());
model.getCpu().setTopology(topology);
model.setHighAvailability(new HighAvailability());
model.getHighAvailability().setEnabled(entity.isAutoStartup());
model.getHighAvailability().setPriority(entity.getPriority());
model.setMigrationDowntime(mapNullToMinusOne(entity.getMigrationDowntime()));
model.setMigration(MigrationOptionsMapper.map(entity, null));
if (entity.getCustomEmulatedMachine() != null) {
model.setCustomEmulatedMachine(entity.getCustomEmulatedMachine());
}
if (entity.getCustomCpuName() != null) {
model.setCustomCpuModel(entity.getCustomCpuName());
}
MemoryPolicy policy = new MemoryPolicy();
policy.setGuaranteed((long) entity.getMinAllocatedMem() * (long) BYTES_PER_MB);
policy.setMax((long) entity.getMaxMemorySizeMb() * (long) BYTES_PER_MB);
model.setMemoryPolicy(policy);
if (entity.getCustomCompatibilityVersion() != null) {
model.setCustomCompatibilityVersion(VersionMapper.map(entity.getCustomCompatibilityVersion()));
}
model.setLease(StorageDomainLeaseMapper.map(entity.getLeaseStorageDomainId()));
if (model.getPlacementPolicy() == null) {
model.setPlacementPolicy(new VmPlacementPolicy());
}
VmAffinity vmAffinity = map(entity.getMigrationSupport(), null);
if (vmAffinity != null) {
model.getPlacementPolicy().setAffinity(vmAffinity);
}
if (!entity.getDedicatedVmForVdsList().isEmpty()) {
Hosts hostsList = new Hosts();
for (Guid hostGuid : entity.getDedicatedVmForVdsList()) {
Host newHost = new Host();
newHost.setId(hostGuid.toString());
hostsList.getHosts().add(newHost);
}
model.getPlacementPolicy().setHosts(hostsList);
}
}
use of org.ovirt.engine.api.model.Hosts in project ovirt-engine by oVirt.
the class BackendVmResourceTest method testUpdateVmPolicyHostsIds.
@Test
public void testUpdateVmPolicyHostsIds() throws Exception {
setUpUdpateVm();
setUriInfo(setUpActionExpectations(ActionType.UpdateVm, VmManagementParametersBase.class, new String[] {}, new Object[] {}, true, true));
Vm model = getModel(0);
model.setPlacementPolicy(new VmPlacementPolicy());
Hosts hosts = new Hosts();
for (int i = 0; i < GUIDS.length; i++) {
Host newHost = new Host();
newHost.setId(GUIDS[i].toString());
hosts.getHosts().add(newHost);
}
model.getPlacementPolicy().setHosts(hosts);
verifyModel(resource.update(model), 0);
}
use of org.ovirt.engine.api.model.Hosts in project ovirt-engine by oVirt.
the class BackendVmResourceTest method testStartWithHost.
protected void testStartWithHost(Host host, Guid hostId) throws Exception {
setUpWindowsGetEntityExpectations(1, false);
setUriInfo(setUpActionExpectations(ActionType.RunVmOnce, RunVmOnceParams.class, new String[] { "VmId", "DestinationVdsId" }, new Object[] { GUIDS[0], hostId }));
Action action = new Action();
action.setVm(new Vm());
VmPlacementPolicy placementPolicy = new VmPlacementPolicy();
placementPolicy.setHosts(new Hosts());
placementPolicy.getHosts().getHosts().add(host);
action.getVm().setPlacementPolicy(placementPolicy);
verifyActionResponse(resource.start(action));
}
Aggregations