use of org.ovirt.engine.core.common.businessentities.VmWatchdog in project ovirt-engine by oVirt.
the class CloneVmCommand method setupParameters.
private void setupParameters() {
setVmId(Guid.newGuid());
VM vmToClone = getVm();
getParameters().setNewVmGuid(getVmId());
getParameters().setVm(vmToClone);
List<VmDevice> devices = vmDeviceDao.getVmDeviceByVmId(oldVmId);
getParameters().setSoundDeviceEnabled(containsDeviceWithType(devices, VmDeviceGeneralType.SOUND));
getParameters().setConsoleEnabled(containsDeviceWithType(devices, VmDeviceGeneralType.CONSOLE));
getParameters().setVirtioScsiEnabled(containsDeviceWithType(devices, VmDeviceGeneralType.CONTROLLER, VmDeviceType.VIRTIOSCSI));
getParameters().setBalloonEnabled(containsDeviceWithType(devices, VmDeviceGeneralType.BALLOON));
setGraphicsDevices(devices);
QueryReturnValue watchdogs = runInternalQuery(QueryType.GetWatchdog, new IdQueryParameters(oldVmId));
if (!((List<VmWatchdog>) watchdogs.getReturnValue()).isEmpty()) {
VmWatchdog watchdog = ((List<VmWatchdog>) watchdogs.getReturnValue()).iterator().next();
getParameters().setUpdateWatchdog(true);
getParameters().setWatchdog(watchdog);
}
fillDisksToParameters();
}
use of org.ovirt.engine.core.common.businessentities.VmWatchdog in project ovirt-engine by oVirt.
the class BackendVmWatchdogResourceTest method getEntity.
private VmWatchdog getEntity() {
VmWatchdog watchdog = new VmWatchdog();
watchdog.setId(WATCHDOG_ID);
watchdog.setAction(VmWatchdogAction.RESET);
watchdog.setModel(VmWatchdogType.i6300esb);
return watchdog;
}
use of org.ovirt.engine.core.common.businessentities.VmWatchdog in project ovirt-engine by oVirt.
the class BackendVmWatchdogsResourceTest method getEntity.
private VmWatchdog getEntity() {
VmWatchdog watchdog = new VmWatchdog();
watchdog.setId(WATCHDOG_ID);
watchdog.setAction(VmWatchdogAction.RESET);
watchdog.setModel(VmWatchdogType.i6300esb);
return watchdog;
}
use of org.ovirt.engine.core.common.businessentities.VmWatchdog in project ovirt-engine by oVirt.
the class VmHandler method addDeviceUpdateOnNextRun.
private boolean addDeviceUpdateOnNextRun(Guid vmId, VmDeviceGeneralType generalType, VmDeviceType type, boolean readOnly, String name, Object key, Object value, List<VmDeviceUpdate> updates) {
if (key != null) {
VmDeviceGeneralType keyGeneralType = VmDeviceGeneralType.UNKNOWN;
VmDeviceType keyType = VmDeviceType.UNKNOWN;
if (key instanceof VmDeviceGeneralType) {
keyGeneralType = (VmDeviceGeneralType) key;
} else if (key instanceof VmDeviceType) {
keyType = (VmDeviceType) key;
} else if (key instanceof GraphicsType) {
keyType = ((GraphicsType) key).getCorrespondingDeviceType();
} else {
log.warn("addDeviceUpdateOnNextRun: Unsupported map key type: " + key.getClass().getName());
return false;
}
if (keyGeneralType != VmDeviceGeneralType.UNKNOWN) {
generalType = keyGeneralType;
}
if (keyType != VmDeviceType.UNKNOWN) {
type = keyType;
}
}
// if device type is set to unknown, search by general type only
// because some devices have more than one type, like sound can be ac97/ich6
String typeName = type != VmDeviceType.UNKNOWN ? type.getName() : null;
if (value == null) {
if (vmDeviceUtils.vmDeviceChanged(vmId, generalType, typeName, false)) {
updates.add(new VmDeviceUpdate(generalType, type, readOnly, name, false));
}
} else if (value instanceof Boolean) {
if (vmDeviceUtils.vmDeviceChanged(vmId, generalType, typeName, (Boolean) value)) {
updates.add(new VmDeviceUpdate(generalType, type, readOnly, name, (Boolean) value));
}
} else if (value instanceof VmDevice) {
if (vmDeviceUtils.vmDeviceChanged(vmId, generalType, typeName, (VmDevice) value)) {
updates.add(new VmDeviceUpdate(generalType, type, readOnly, name, (VmDevice) value));
}
} else if (value instanceof VmWatchdog) {
if (vmDeviceUtils.vmDeviceChanged(vmId, generalType, typeName, ((VmWatchdog) value).getVmDevice())) {
updates.add(new VmDeviceUpdate(generalType, type, readOnly, name, ((VmWatchdog) value).getVmDevice()));
}
} else {
log.warn("addDeviceUpdateOnNextRun: Unsupported value type: " + value.getClass().getName());
return false;
}
return true;
}
use of org.ovirt.engine.core.common.businessentities.VmWatchdog in project ovirt-engine by oVirt.
the class UpdateWatchdogCommandTest method testValidate.
@Test
public void testValidate() {
Guid vmGuid = new Guid("a09f57b1-5739-4352-bf88-a6f834ed46db");
command.getParameters().setId(vmGuid);
command.getParameters().setAction(VmWatchdogAction.PAUSE);
command.getParameters().setModel(vmWatchdogType);
when(vmDaoMock.get(vmGuid)).thenReturn(new VM());
when(vmDeviceDaoMock.getVmDeviceByVmIdAndType(vmGuid, VmDeviceGeneralType.WATCHDOG)).thenReturn(Collections.singletonList(new VmDevice()));
VmWatchdog vmWatchdog = spy(new VmWatchdog());
when(vmWatchdog.getModel()).thenReturn(vmWatchdogType);
assertTrue(command.validate());
}
Aggregations