com.tinify.Exception Maven / Gradle / Ivy
package com.tinify;
public class Exception extends RuntimeException {
public static class Data {
private String message;
private String error;
public void setMessage(final String message) {
this.message = message;
}
public final String getMessage() {
return message;
}
public void setError(final String error) {
this.error = error;
}
public final String getError() {
return error;
}
}
public static Exception create(final String message, final String type, final int status) {
if (status == 401 || status == 429) {
return new AccountException(message, type, status);
} else if (status >= 400 && status <= 499) {
return new ClientException(message, type, status);
} else if (status >= 500 && status <= 599) {
return new ServerException(message, type, status);
} else {
return new Exception(message, type, status);
}
}
int status = 0;
public Exception() {
super();
}
public Exception(final Throwable t) {
super(t);
}
public Exception(final String message) {
super(message);
}
public Exception(final String message, final Throwable t) {
super(message, t);
}
public Exception(final String message, final String type, final int status) {
super(message + " (HTTP " + status + "/" + type + ")");
this.status = status;
}
}