package crmdna.common.api;
import crmdna.common.api.APIResponse.Status;
@SuppressWarnings("serial")
public class APIException extends RuntimeException {
public Status statusCode;
public String userFriendlyMessage;
public Object object;
public APIException() {
}
public APIException(String message) {
super(message);
userFriendlyMessage = message;
}
public APIException status(Status status) {
this.statusCode = status;
return this;
}
public APIException message(String message) {
this.userFriendlyMessage = message;
return this;
}
public APIException object(Object object) {
this.object = object;
return this;
}
public APIResponse toAPIResponse() {
APIResponse resp = new APIResponse();
resp.statusCode = statusCode;
resp.userFriendlyMessage = userFriendlyMessage;
resp.object = object;
resp.stackTrace = APIUtils.getStackTrace(this);
return resp;
}
}