/** * Handle a twitter exception, waiting the appropriate amount of time if the * API requests this behaviour * * @param e * @param errorWaitTime * @return the errorWaitTime */ public static long handleTwitterException(TwitterException e, long errorWaitTime) { if (e.exceededRateLimitation()) { long retryAfter = e.getRetryAfter() * 1000; logger.debug(String.format("Rate limit exceeded, waiting %dms", retryAfter)); if (retryAfter < 0) { retryAfter = errorWaitTime * 5; } return retryAfter; } else { logger.error("Twitter Exception!", e); logger.error("Waiting a short period of time"); return errorWaitTime; } } }
/** * Handle a twitter exception, waiting the appropriate amount of time if the * API requests this behaviour * * @param e * @param errorWaitTime * @return the errorWaitTime */ public static long handleTwitterException(TwitterException e, long errorWaitTime) { if (e.exceededRateLimitation()) { long retryAfter = e.getRetryAfter() * 1000; logger.debug(String.format("Rate limit exceeded, waiting %dms", retryAfter)); if (retryAfter < 0) { retryAfter = errorWaitTime * 5; } return retryAfter; } else { logger.error("Twitter Exception!", e); logger.error("Waiting a short period of time"); return errorWaitTime; } } }
@Override public String toString() { return getMessage() + (nested ? "" : "\nRelevant discussions can be found on the Internet at:\n" + "\thttp://www.google.co.jp/search?q=" + getExceptionDiagnosis().getStackLineHashAsHex() + " or\n\thttp://www.google.co.jp/search?q=" + getExceptionDiagnosis().getLineNumberHashAsHex()) + "\nTwitterException{" + (nested ? "" : "exceptionCode=[" + getExceptionCode() + "], ") + "statusCode=" + statusCode + ", message=" + errorMessage + ", code=" + errorCode + ", retryAfter=" + getRetryAfter() + ", rateLimitStatus=" + getRateLimitStatus() + ", version=" + Version.getVersion() + '}'; }