use of org.apache.cloudstack.api.ApiErrorCode in project cloudstack by apache.
the class UpdateBackupOfferingCmd method execute.
// ///////////////////////////////////////////////////
// ///////////// API Implementation///////////////////
// ///////////////////////////////////////////////////
@Override
public void execute() {
try {
if (StringUtils.isAllEmpty(name, description)) {
throw new InvalidParameterValueException(String.format("Can't update Backup Offering [id: %s] because there is no change in name or description.", id));
}
BackupOffering result = backupManager.updateBackupOffering(this);
if (result == null) {
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, String.format("Failed to update backup offering [id: %s, name: %s, description: %s].", id, name, description));
}
BackupOfferingResponse response = _responseGenerator.createBackupOfferingResponse(result);
response.setResponseName(getCommandName());
this.setResponseObject(response);
} catch (CloudRuntimeException e) {
ApiErrorCode paramError = e instanceof InvalidParameterValueException ? ApiErrorCode.PARAM_ERROR : ApiErrorCode.INTERNAL_ERROR;
LOGGER.error(String.format("Failed to update Backup Offering [id: %s] due to: [%s].", id, e.getMessage()), e);
throw new ServerApiException(paramError, e.getMessage());
}
}
Aggregations