Java 我有没有办法标记一个“任务”的标记;仅在重试后成功;?
我想使用退避重试机制 发送http请求列表 是否有任何方法可以标记(使用标志)只有在重试后才成功的请求 我看到了一些解决方案: (一) (二) 但没有办法整合这种标记。这些库中还有其他库或想法吗 我已尝试重写此方法,但无法返回该指示标志Java 我有没有办法标记一个“任务”的标记;仅在重试后成功;?,java,http,google-client,google-http-client,Java,Http,Google Client,Google Http Client,我想使用退避重试机制 发送http请求列表 是否有任何方法可以标记(使用标志)只有在重试后才成功的请求 我看到了一些解决方案: (一) (二) 但没有办法整合这种标记。这些库中还有其他库或想法吗 我已尝试重写此方法,但无法返回该指示标志 @Beta public class HttpBackOffUnsuccessfulResponseHandler implements HttpUnsuccessfulResponseHandler { * {@inheritDoc} *
@Beta
public class HttpBackOffUnsuccessfulResponseHandler implements HttpUnsuccessfulResponseHandler {
* {@inheritDoc}
*
* <p>
* Handles the request with {@link BackOff}. That means that if back-off is required a call to
* {@link Sleeper#sleep(long)} will be made.
* </p>
*/
public final boolean handleResponse(
HttpRequest request, HttpResponse response, boolean supportsRetry) throws IOException {
if (!supportsRetry) {
return false;
}
// check if back-off is required for this response
if (backOffRequired.isRequired(response)) {
try {
return BackOffUtils.next(sleeper, backOff);
} catch (InterruptedException exception) {
// ignore
}
}
return false;
}
@Beta
公共类HttpBackOffUnsuccessfulResponseHandler实现HttpUnsuccessfulResponseHandler{
*{@inheritardoc}
*
*
*使用{@link BackOff}处理请求。这意味着如果需要BackOff,则调用
*{@link sleep#sleep(long)}将被制作。
*
*/
公共最终布尔HandlerResponse(
HttpRequest请求、HttpResponse响应、布尔支持重试)引发IOException{
如果(!supportsRetry){
返回false;
}
//检查此响应是否需要回退
如果(需要退避。需要(响应)){
试一试{
返回后退。下一步(卧铺,后退);
}捕获(中断异常异常){
//忽略
}
}
返回false;
}
签出。如果希望将请求标记为成功,可以使用事件处理程序。签出。如果希望将请求标记为成功,可以使用事件处理程序