diff options
| author | Paul-Christian Volkmer | 2024-02-29 08:29:26 +0100 |
|---|---|---|
| committer | Paul-Christian Volkmer | 2024-02-29 08:29:26 +0100 |
| commit | 61e5273158406fac25efc0a715104e103a3ea540 (patch) | |
| tree | 5724101852fafceb6c24ac4d1f802adbacd48d73 /src/main/kotlin | |
| parent | 50b8f7bbd4107fb228d26101a11e67067493b70b (diff) | |
feat: add max-retry-attempts config option
Diffstat (limited to 'src/main/kotlin')
| -rw-r--r-- | src/main/kotlin/dev/dnpm/etl/processor/config/AppConfigProperties.kt | 3 | ||||
| -rw-r--r-- | src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfigProperties.kt b/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfigProperties.kt index 2eea92e..430648e 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfigProperties.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfigProperties.kt @@ -30,7 +30,8 @@ data class AppConfigProperties( replacement = "app.pseudonymize.generator" ) var pseudonymizer: PseudonymGenerator = PseudonymGenerator.BUILDIN, - var transformations: List<TransformationProperties> = listOf() + var transformations: List<TransformationProperties> = listOf(), + var maxRetryAttempts: Int = 3 ) { companion object { const val NAME = "app" diff --git a/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt b/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt index 71911fc..8fb9e19 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/config/AppConfiguration.kt @@ -113,11 +113,11 @@ class AppConfiguration { } @Bean - fun retryTemplate(): RetryTemplate { + fun retryTemplate(configProperties: AppConfigProperties): RetryTemplate { return RetryTemplateBuilder() .notRetryOn(IllegalArgumentException::class.java) .exponentialBackoff(2.seconds.toJavaDuration(), 1.25, 5.seconds.toJavaDuration()) - .customPolicy(SimpleRetryPolicy(3)) + .customPolicy(SimpleRetryPolicy(configProperties.maxRetryAttempts)) .withListener(object : RetryListener { override fun <T : Any, E : Throwable> onError( context: RetryContext, |
