本文整理汇总了Java中org.springframework.retry.RetryPolicy类的典型用法代码示例。如果您正苦于以下问题:Java RetryPolicy类的具体用法?Java RetryPolicy怎么用?Java RetryPolicy使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
RetryPolicy类属于org.springframework.retry包,在下文中一共展示了RetryPolicy类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: tempoApiRetryPolicy
import org.springframework.retry.RetryPolicy; //导入依赖的package包/类
@Bean
@Qualifier("tempo")
public RetryOperations tempoApiRetryPolicy() {
final RetryPolicy retryPolicy = createRetryPolicy();
final ExponentialBackOffPolicy backOffPolicy = new ExponentialBackOffPolicy();
backOffPolicy.setInitialInterval(2000);
backOffPolicy.setMultiplier(3);
final RetryTemplate retryTemplate = new RetryTemplate();
retryTemplate.setRetryPolicy(retryPolicy);
retryTemplate.setBackOffPolicy(backOffPolicy);
retryTemplate.setThrowLastExceptionOnExhausted(true);
return retryTemplate;
}
示例2: createRetryPolicy
import org.springframework.retry.RetryPolicy; //导入依赖的package包/类
private static RetryPolicy createRetryPolicy() {
final SimpleRetryPolicy simpleRetryPolicy = new SimpleRetryPolicy();
simpleRetryPolicy.setMaxAttempts(5);
final Map<Class<? extends Throwable>, RetryPolicy> policyMap = new HashMap<>();
policyMap.put(TempoApiException.class, new NeverRetryPolicy());
policyMap.put(FeignException.class, new NeverRetryPolicy());
policyMap.put(IOException.class, simpleRetryPolicy);
policyMap.put(RetryableException.class, simpleRetryPolicy);
final ExceptionClassifierRetryPolicy retryPolicy = new ExceptionClassifierRetryPolicy();
retryPolicy.setPolicyMap(policyMap);
return simpleRetryPolicy;
}
示例3: afterPropertiesSet
import org.springframework.retry.RetryPolicy; //导入依赖的package包/类
@Override
public void afterPropertiesSet() throws Exception {
ExceptionClassifierRetryPolicy policy = new ExceptionClassifierRetryPolicy();
policy.setExceptionClassifier(new Classifier<Throwable, RetryPolicy>() {
@Override
public RetryPolicy classify(Throwable classifiable) {
return classifiable instanceof ServiceException ? retryPolicy
: neverRetryPolicy;
}
});
this.retryPolicy.setTimeout(this.timeout);
this.template.setRetryPolicy(policy);
}
示例4: retryPolicy
import org.springframework.retry.RetryPolicy; //导入依赖的package包/类
@Bean
public RetryPolicy retryPolicy()
{
TimeoutRetryPolicy timeoutRetryPolicy = new TimeoutRetryPolicy();
timeoutRetryPolicy.setTimeout(MAX_CONNECTION_TIMEOUT.toMillis());
ExceptionClassifierRetryPolicy exceptionClassifierRetryPolicy = new ExceptionClassifierRetryPolicy();
exceptionClassifierRetryPolicy.setPolicyMap(ImmutableMap.of(MolgenisDataException.class, timeoutRetryPolicy));
return exceptionClassifierRetryPolicy;
}
示例5: retryPolicy
import org.springframework.retry.RetryPolicy; //导入依赖的package包/类
/**
* リトライの対象となる例外とリトライ回数を指定し、
* {@link RetryPolicy}のインスタンスを生成します。
* @return {@link SimpleRetryPolicy}のインスタンス
*/
protected RetryPolicy retryPolicy() {
return new SimpleRetryPolicy(retryCount, exceptionMapping(), true);
}
示例6: simpleRetryPolicy
import org.springframework.retry.RetryPolicy; //导入依赖的package包/类
/**
* リトライの対象となる例外とリトライ回数を指定し、
* {@link RetryPolicy}のインスタンスを生成します。
* @return {@link SimpleRetryPolicy}のインスタンス
*/
protected RetryPolicy simpleRetryPolicy() {
return new SimpleRetryPolicy(retryCount, Collections.<Class<? extends Throwable>, Boolean> singletonMap(Exception.class, true));
}