1
15
16 package software.amazon.awssdk.core.retry.conditions;
17
18 import software.amazon.awssdk.annotations.SdkPublicApi;
19 import software.amazon.awssdk.core.retry.RetryPolicyContext;
20 import software.amazon.awssdk.core.retry.RetryUtils;
21 import software.amazon.awssdk.utils.ToString;
22
23
27 @SdkPublicApi
28 public final class RetryOnThrottlingCondition implements RetryCondition {
29 private RetryOnThrottlingCondition() {
30 }
31
32 public static RetryOnThrottlingCondition create() {
33 return new RetryOnThrottlingCondition();
34 }
35
36 @Override
37 public boolean shouldRetry(RetryPolicyContext context) {
38 return RetryUtils.isThrottlingException(context.exception());
39 }
40
41 @Override
42 public String toString() {
43 return ToString.create("RetryOnThrottlingCondition");
44 }
45
46 @Override
47 public boolean equals(Object o) {
48 if (this == o) {
49 return true;
50 }
51
52 return o != null && getClass() == o.getClass();
53 }
54
55 @Override
56 public int hashCode() {
57 return 0;
58 }
59 }
60