Skip to content

Commit 8c1eb21

Browse files
committed
additional generic retry samples
1 parent 191ab70 commit 8c1eb21

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

operator-framework/src/main/java/com/github/containersolutions/operator/processing/retry/GenericRetry.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,17 @@ public static GenericRetry defaultLimitedExponentialRetry() {
1616
return new GenericRetry();
1717
}
1818

19+
public static GenericRetry noRetry() {
20+
return new GenericRetry().setMaxAttempts(1);
21+
}
22+
23+
public static GenericRetry every10second10TimesRetry() {
24+
return new GenericRetry()
25+
.setMaxAttempts(10)
26+
.setIntervalMultiplier(1)
27+
.setInitialInterval(10000);
28+
}
29+
1930
@Override
2031
public GenericRetryExecution initExecution() {
2132
return new GenericRetryExecution(this);

operator-framework/src/test/java/com/github/containersolutions/operator/processing/retry/GenericRetryExecutionTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,13 @@ public void canLimitMaxIntervalLength() {
6666
assertThat(res.get()).isEqualTo(4500);
6767
}
6868

69+
@Test
70+
public void supportsNoRetry() {
71+
RetryExecution retryExecution = GenericRetry.noRetry().initExecution();
72+
assertThat(retryExecution.nextDelay().get()).isZero();
73+
assertThat(retryExecution.nextDelay()).isEmpty();
74+
}
75+
6976
private RetryExecution getDefaultRetryExecution() {
7077
return GenericRetry.defaultLimitedExponentialRetry().initExecution();
7178
}

0 commit comments

Comments
 (0)