public EnumSet<VMDetails> getDetails() throws InvalidParameterValueException { EnumSet<VMDetails> dv; if (viewDetails == null || viewDetails.size() <= 0) { dv = EnumSet.of(VMDetails.all); } else { try { ArrayList<VMDetails> dc = new ArrayList<VMDetails>(); for (String detail : viewDetails) { dc.add(VMDetails.valueOf(detail)); } dv = EnumSet.copyOf(dc); } catch (IllegalArgumentException e) { throw new InvalidParameterValueException( "The details parameter contains a non permitted value. The allowed values are " + EnumSet.allOf(VMDetails.class)); } } return dv; }
@Override public void execute() { CallContext.current().setEventDetails("Vm Id: " + getVmId() + " Network Id: " + getNetworkId()); UserVm result = _userVmService.addNicToVirtualMachine(this); ArrayList<VMDetails> dc = new ArrayList<VMDetails>(); dc.add(VMDetails.valueOf("nics")); EnumSet<VMDetails> details = EnumSet.copyOf(dc); if (result != null) { 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 add NIC to vm. Refer to server logs for details."); } }