package com.qiniu.pili;
import okhttp3.Response;
public class PiliException extends Exception {
public final Response response;
private final String ErrNotFound = "stream not found";
private final String ErrDuplicate = "stream already exists";
private final String ErrNotLive = "no data";
public PiliException(Response response) {
this.response = response;
}
public PiliException(String msg) {
super(msg);
response = null;
}
public PiliException(Exception e) {
super(e);
this.response = null;
}
public int code() {
return response == null ? -1 : response.code();
}
public boolean isDuplicate() {
return code() == 614;
}
public boolean isNotFound() {
return code() == 612;
}
public boolean isNotInLive() {
return code() == 619;
}
public String getMessage() {
if (response == null) {
return super.getMessage();
} else {
switch (code()) {
case 614:
return ErrDuplicate;
case 612:
return ErrNotFound;
case 619:
return ErrNotLive;
default:
return response.message();
}
}
}
}