package weiboclient4j; import org.codehaus.jackson.annotate.JsonIgnoreProperties; import static weiboclient4j.utils.StringUtils.isBlank; /** * @author Hover Ruan */ @JsonIgnoreProperties(ignoreUnknown = true) public class WeiboError { // http://open.weibo.com/wiki/Error_code public static final int ERR_SYSTEM = 10001; public static final int ERR_SERVICE_UNAVAILABLE = 10002; public static final int ERR_REMOTE_SERVICE = 10003; public static final int ERR_IP_LIMIT = 10004; public static final int ERR_PERMISSION_DENIED = 10005; public static final int ERR_MISSING_APPKEY = 10006; public static final int ERR_UNSUPPORTED_MEDIA_TYPE = 10007; public static final int ERR_PARAMETER = 10008; public static final int ERR_SYSTEM_BUSY = 10009; public static final int ERR_JOB_EXPIRED = 10010; public static final int ERR_RPC = 10011; public static final int ERR_ILLEGAL_REQUEST = 10012; public static final int ERR_INVALID_WEIBO_USER = 10013; public static final int ERR_INSUFFICIENT_PERMISSIONS = 10014; public static final int ERR_MISS_REQUIRED_PARAMETER = 10016; public static final int ERR_INVALID_PARAMETER_VALUE = 10017; public static final int ERR_REQUEST_BODY_EXCEED = 10018; public static final int ERR_API_NOT_FOUND = 10020; public static final int ERR_HTTP_METHOD_NOT_SUPPORTED = 10021; public static final int ERR_IP_OUT_OF_RATE_LIMIT = 10022; public static final int ERR_USER_OUT_OF_RATE_LIMIT = 10023; public static final int ERR_USER_OUT_OF_RATE_LIMIT_SPECIAL = 10024; public static final int ERR_IDS_IS_NULL = 20001; public static final int ERR_UID_IS_NULL = 20002; public static final int ERR_USER_NOT_EXISTS = 20003; public static final int ERR_UNSUPPORTED_IMAGE_TYPE = 20005; public static final int ERR_IMAGE_TOO_LARGE = 20006; public static final int ERR_NO_IMAGE_IN_MULTIPART = 20007; public static final int ERR_CONTENT_IS_NULL = 20008; public static final int ERR_TOO_MUCH_IDS = 20009; public static final int ERR_TEXT_LONGER_THAN_140 = 20012; public static final int ERR_TEXT_LONGER_THAN_300 = 20013; public static final int ERR_SECURITY_PARAMETER = 20014; public static final int ERR_INVALID_ACCOUNT_IP_APP = 20015; public static final int ERR_UPDATE_OUT_OF_LIMIT = 20016; public static final int ERR_SIMILAR_CONTENT = 20017; public static final int ERR_CONTAINS_ILLEGAL_WEBSITE = 20018; public static final int ERR_DUPLICATED_CONTENT = 20019; public static final int ERR_CONTAINS_ADVERTISING = 20020; public static final int ERR_CONTAINS_ILLEGAL_CONTENT = 20021; public static final int ERR_IP_ABNORMAL_BEHAVIOR = 20022; public static final int ERR_VERIFICATION_CODE_REQUIRED = 20031; public static final int ERR_SUCCESS_BUT_MAY_DELAY = 20032; public static final int ERR_STATUS_NOT_FOUND = 20101; public static final int ERR_NOT_OWNER_OF_STATUS = 20102; public static final int ERR_CANNOT_REPOST_SELF_STATUS = 20103; public static final int ERR_ILLEGAL_STATUS = 20104; public static final int ERR_STATUS_ID_IS_NULL = 20109; public static final int ERR_DUPLICATED_STATUS_TEXT = 20111; public static final int ERR_COMMENT_NOT_FOUND = 20201; public static final int ERR_ILLEGAL_COMMENT = 20202; public static final int ERR_NOT_OWNER_OF_COMMENT = 20203; public static final int ERR_COMMENT_ID_IS_NULL = 20204; public static final int ERR_CANNOT_SEND_DIRECT_MESSAGE_TO_NOT_FOLLOWER = 20301; public static final int ERR_ILLEGAL_DIRECT_MESSAGE = 20302; public static final int ERR_NOT_OWNER_OF_DIRECT_MESSAGE = 20303; public static final int ERR_DIRECT_MESSAGE_NOT_FOUND = 20305; public static final int ERR_DUPLICATED_DIRECT_MESSAGE = 20306; public static final int ERR_INVALID_DIRECT_MESSAGE_ID = 20307; public static final int ERR_DOMAIN_NOT_FOUND = 20401; public static final int ERR_INVALID_VERIFIER = 20402; public static final int ERR_SOURCE_OR_TARGET_USER_NOT_FOUND = 20501; public static final int ERR_TARGET_USER_ID_OR_SCREEN_NAME_REQUIRED = 20502; public static final int ERR_USER_ID_SHOULD_BE_YOUR_FOLLOWER = 20503; public static final int ERR_CANNOT_FOLLOW_YOURSELF = 20504; public static final int ERR_SOCIAL_GRAPH_UPDATES_OUT_OF_RATE_LIMIT = 20505; public static final int ERR_ALREADY_FOLLOWED = 20506; public static final int ERR_PLEASE_INPUT_VERIFICATION_CODE = 20507; public static final int ERR_ACTION_PROHIBITED_ACCORDING_TO_USER_PRIVACY = 20508; public static final int ERR_QUIETLY_FOLLOW_COUNT_EXCEED = 20509; public static final int ERR_NOT_QUIETLY_FRIEND = 20510; public static final int ERR_ALREADY_QUIETLY_FOLLOWED = 20511; public static final int ERR_USER_IN_YOUR_BLACK_LIST = 20512; public static final int ERR_FRIENDS_COUNT_EXCEED = 20513; public static final int ERR_FOLLOWING_TOO_MANY = 20521; public static final int ERR_NOT_FOLLOWED = 20522; public static final int ERR_NOT_FOLLOWERS = 20523; public static final int ERR_CANCEL_FOLLOW_TOO_MANY = 20524; public static final int ERR_LIST_NAME_TOO_LONG = 20601; public static final int ERR_LIST_DESCRIPTION_TOO_LONG = 20602; public static final int ERR_LIST_NOT_FOUND = 20603; public static final int ERR_NOT_LIST_OWNER = 20604; public static final int ERR_ILLEGAL_LIST_NAME_OR_DESCRIPTION = 20605; public static final int ERR_OBJECT_ALREADY_EXISTS = 20606; public static final int ERR_DB_ERROR = 20607; public static final int ERR_LIST_NAME_DUPLICATED = 20608; public static final int ERR_PRIVATE_LIST_NOT_SUPPORTED = 20610; public static final int ERR_FAILED_CREATING_LIST = 20611; public static final int ERR_ONLY_PRIVATE_LIST_SUPPORTED = 20612; public static final int ERR_SUBSCRIBED_TOO_MANY_LISTS = 20613; public static final int ERR_TOO_MANY_LISTS = 20614; public static final int ERR_TOO_MANY_LIST_MEMBERS = 20615; public static final int ERR_DUPLICATED_TAG = 20701; public static final int ERR_TOO_MANY_TAGS = 20702; public static final int ERR_ILLEGAL_TAG_NAME = 20703; public static final int ERR_TREND_NAME_IS_NULL = 20801; public static final int ERR_TREND_ID_IS_NULL = 20802; public static final int ERR_ALREADY_IN_BLACK_LIST = 20901; public static final int ERR_BLACK_LIST_COUNT_EXCEED = 20902; public static final int ERR_CANNOT_ADD_SYSTEM_ADMINISTRATOR_TO_BLACK_LIST = 20903; public static final int ERR_CANNOT_ADD_YOURSELF_TO_BLACK_LIST = 20904; public static final int ERR_NOT_IN_BLACK_LIST = 20905; public static final int ERR_TAG_PARAMETER_IS_NULL = 21001; public static final int ERR_TAG_NAME_TOO_LONG = 21002; public static final int ERR_DOMAIN_PARAMETER = 21101; public static final int ERR_PHONE_NUMBER_HAS_BEEN_USED = 21102; public static final int ERR_ACCOUNT_ALREADY_BIND_PHONE_NUMBER = 21103; public static final int ERR_WRONG_VERIFIER = 21104; public static final int ERR_AUTH_FAILED = 21301; public static final int ERR_INVALID_USERNAME_OR_PASSWORD = 21302; public static final int ERR_PASSWORD_AUTH_OUT_OF_RATE_LIMIT = 21303; public static final int ERR_VERSION_REJECTED = 21304; public static final int ERR_PARAMETER_ABSENT = 21305; public static final int ERR_OAUTH_PARAMETER_REJECTED = 21306; public static final int ERR_INVALID_TIMESTAMP = 21307; public static final int ERR_NONCE_HAS_BEEN_USED = 21308; public static final int ERR_SIGNATURE_ALGORITHM_REJECTED = 21309; public static final int ERR_INVALID_SIGNATURE = 21310; public static final int ERR_UNKNOWN_CONSUMER_KEY = 21311; public static final int ERR_CONSUMER_KEY_REJECTED = 21312; public static final int ERR_CONSUMER_KEY_REQUIRED = 21313; public static final int ERR_TOKEN_HAS_BEEN_USED = 21314; public static final int ERR_TOKEN_EXPIRED = 21315; public static final int ERR_TOKEN_REVOKED = 21316; public static final int ERR_TOKEN_REJECTED = 21317; public static final int ERR_VERIFIER_FAILED = 21318; public static final int ERR_ACCESSOR_REVOKED = 21319; public static final int ERR_OATH2_ONLY_SUPPORTS_HTTPS = 21320; public static final int ERR_UNAUDITED_APP_USERS_COUNT_EXCEED = 21321; public static final int ERR_EXPIRED_TOKEN = 21327; public static final int ERR_URLS_IS_NULL = 21501; public static final int ERR_TOO_MANY_URLS = 21502; public static final int ERR_IP_IS_NULL = 21503; public static final int ERR_URL_IS_NULL = 21504; public static final int ERR_ADMINISTRATOR_PERMISSION_REQUIRED = 21601; public static final int ERR_CONTAINS_FORBIDDEN_WORDS = 21602; public static final int ERR_SEND_NOTIFICATIONS_EXCEED = 21603; public static final int ERR_REMIND_FAILED_WITHOUT_PERMISSION = 21701; public static final int ERR_INVALID_CATEGORY = 21702; public static final int ERR_INVALID_STATUS_CODE = 21703; public static final int ERR_INVALID_GEO_CODE = 21901; private String request; private String errorCode; private String error; public boolean isNotEmpty() { return !(isBlank(request) && isBlank(errorCode) && isBlank(error)); } public String getRequest() { return request; } public void setRequest(String request) { this.request = request; } public String getErrorCode() { return errorCode; } public void setErrorCode(String errorCode) { this.errorCode = errorCode; } public int getErrorCodeAsInt() { return Integer.parseInt(errorCode); } public String getError() { return error; } @Override public String toString() { return String.format("%s: %s", errorCode, error); } public void setError(String error) { this.error = error; } }