use of com.cloud.api.ApiConstants.VMDetails in project cosmic by MissionCriticalCloud.
the class ListVMsCmd method getDetails.
public EnumSet<VMDetails> getDetails() throws InvalidParameterValueException {
final EnumSet<VMDetails> dv;
if (viewDetails == null || viewDetails.size() <= 0) {
dv = EnumSet.of(VMDetails.all);
} else {
try {
final ArrayList<VMDetails> dc = new ArrayList<>();
for (final String detail : viewDetails) {
dc.add(VMDetails.valueOf(detail));
}
dv = EnumSet.copyOf(dc);
} catch (final IllegalArgumentException e) {
throw new InvalidParameterValueException("The details parameter contains a non permitted value. The allowed values are " + EnumSet.allOf(VMDetails.class));
}
}
return dv;
}
use of com.cloud.api.ApiConstants.VMDetails in project cosmic by MissionCriticalCloud.
the class RemoveNicFromVMCmd method execute.
@Override
public void execute() {
CallContext.current().setEventDetails("Vm Id: " + getVmId() + " Nic Id: " + getNicId());
final UserVm result = _userVmService.removeNicFromVirtualMachine(this);
final ArrayList<VMDetails> dc = new ArrayList<>();
dc.add(VMDetails.valueOf("nics"));
final EnumSet<VMDetails> details = EnumSet.copyOf(dc);
if (result != null) {
final UserVmResponse response = _responseGenerator.createUserVmResponse(ResponseView.Restricted, "virtualmachine", details, result).get(0);
response.setResponseName(getCommandName());
setResponseObject(response);
} else {
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to remove NIC from vm, see error log for details");
}
}
use of com.cloud.api.ApiConstants.VMDetails in project cosmic by MissionCriticalCloud.
the class UpdateVMAffinityGroupCmd method execute.
@Override
public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException {
CallContext.current().setEventDetails("VM ID: " + getId());
final UserVm result = _affinityGroupService.updateVMAffinityGroups(getId(), getAffinityGroupIdList());
final ArrayList<VMDetails> dc = new ArrayList<>();
dc.add(VMDetails.valueOf("affgrp"));
final EnumSet<VMDetails> details = EnumSet.copyOf(dc);
if (result != null) {
final UserVmResponse response = _responseGenerator.createUserVmResponse(ResponseView.Restricted, "virtualmachine", details, result).get(0);
response.setResponseName(getCommandName());
setResponseObject(response);
} else {
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to update VM's affinity groups");
}
}
use of com.cloud.api.ApiConstants.VMDetails in project cosmic by MissionCriticalCloud.
the class UpdateDefaultNicForVMCmd method execute.
@Override
public void execute() {
CallContext.current().setEventDetails("Vm Id: " + getVmId() + " Nic Id: " + getNicId());
final UserVm result = _userVmService.updateDefaultNicForVirtualMachine(this);
final ArrayList<VMDetails> dc = new ArrayList<>();
dc.add(VMDetails.valueOf("nics"));
final EnumSet<VMDetails> details = EnumSet.copyOf(dc);
if (result != null) {
final UserVmResponse response = _responseGenerator.createUserVmResponse(ResponseView.Restricted, "virtualmachine", details, result).get(0);
response.setResponseName(getCommandName());
setResponseObject(response);
} else {
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to set default nic for VM. Refer to server logs for details.");
}
}
use of com.cloud.api.ApiConstants.VMDetails in project cosmic by MissionCriticalCloud.
the class AddNicToVMCmdByAdmin method execute.
@Override
public void execute() {
CallContext.current().setEventDetails("Vm Id: " + getVmId() + " Network Id: " + getNetworkId());
final UserVm result = _userVmService.addNicToVirtualMachine(this);
final ArrayList<VMDetails> dc = new ArrayList<>();
dc.add(VMDetails.valueOf("nics"));
final EnumSet<VMDetails> details = EnumSet.copyOf(dc);
if (result != null) {
final UserVmResponse response = _responseGenerator.createUserVmResponse(ResponseView.Full, "virtualmachine", details, result).get(0);
response.setResponseName(getCommandName());
setResponseObject(response);
} else {
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to add NIC to vm. Refer to server logs for details.");
}
}
Aggregations