35 lines
1.2 KiB
Java
35 lines
1.2 KiB
Java
package org.baeldung.springretry;
|
|
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.ComponentScan;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.retry.annotation.EnableRetry;
|
|
import org.springframework.retry.backoff.FixedBackOffPolicy;
|
|
import org.springframework.retry.policy.SimpleRetryPolicy;
|
|
import org.springframework.retry.support.RetryTemplate;
|
|
|
|
@Configuration
|
|
@ComponentScan(basePackages = "org.baeldung.springretry")
|
|
@EnableRetry
|
|
// Uncomment this two lines if we need XML configuration
|
|
// @EnableAspectJAutoProxy
|
|
// @ImportResource("classpath:/retryadvice.xml")
|
|
public class AppConfig {
|
|
|
|
@Bean
|
|
public RetryTemplate retryTemplate() {
|
|
RetryTemplate retryTemplate = new RetryTemplate();
|
|
|
|
FixedBackOffPolicy fixedBackOffPolicy = new FixedBackOffPolicy();
|
|
fixedBackOffPolicy.setBackOffPeriod(2000l);
|
|
retryTemplate.setBackOffPolicy(fixedBackOffPolicy);
|
|
|
|
SimpleRetryPolicy retryPolicy = new SimpleRetryPolicy();
|
|
retryPolicy.setMaxAttempts(2);
|
|
retryTemplate.setRetryPolicy(retryPolicy);
|
|
|
|
retryTemplate.registerListener(new DefaultListenerSupport());
|
|
return retryTemplate;
|
|
}
|
|
}
|