Module io.helidon.faulttolerance
Package io.helidon.faulttolerance
Class RetryConfig.BuilderBase.RetryConfigImpl
java.lang.Object
io.helidon.faulttolerance.RetryConfig.BuilderBase.RetryConfigImpl
- All Implemented Interfaces:
Prototype.Api
,Prototype.Factory<Retry>
,RetryConfig
,Supplier<Retry>
- Enclosing class:
RetryConfig.BuilderBase<BUILDER extends RetryConfig.BuilderBase<BUILDER,
PROTOTYPE>, PROTOTYPE extends RetryConfig>
protected static class RetryConfig.BuilderBase.RetryConfigImpl
extends Object
implements RetryConfig, Supplier<Retry>
Generated implementation of the prototype, can be extended by descendant prototype implementations.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.helidon.faulttolerance.RetryConfig
RetryConfig.Builder, RetryConfig.BuilderBase<BUILDER extends RetryConfig.BuilderBase<BUILDER,
PROTOTYPE>, PROTOTYPE extends RetryConfig> -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
RetryConfigImpl
(RetryConfig.BuilderBase<?, ?> builder) Create an instance providing a builder. -
Method Summary
Modifier and TypeMethodDescriptionapplyOn()
These throwables will be considered retriable.build()
Create a new instance of the runtime type from this config object.int
calls()
Number of calls (first try + retries).delay()
Base delay between try and retry.double
Delay retry policy factor.boolean
Flag to enable metrics for this instance.boolean
get()
int
hashCode()
jitter()
Jitter forRetry.JitterRetryPolicy
.name()
Name for debugging, error reporting, monitoring.Overall timeout of all retries combined.Explicitly configured retry policy.skipOn()
These throwables will not be considered retriable, all other will.toString()
-
Field Details
-
DEFAULT_CALLS
static final int DEFAULT_CALLSDefault calls to make.- See Also:
-
DEFAULT_DELAY
Default delay between retries.- See Also:
-
DEFAULT_OVERALL_TIMEOUT
Default overall timeout.- See Also:
-
-
Constructor Details
-
RetryConfigImpl
Create an instance providing a builder.- Parameters:
builder
- extending builder base of this prototype
-
-
Method Details
-
build
Description copied from interface:Prototype.Factory
Create a new instance of the runtime type from this config object.- Specified by:
build
in interfacePrototype.Factory<Retry>
- Returns:
- new configured runtime instance
-
get
-
name
Description copied from interface:RetryConfig
Name for debugging, error reporting, monitoring.- Specified by:
name
in interfaceRetryConfig
- Returns:
- name of this retry
-
calls
public int calls()Description copied from interface:RetryConfig
Number of calls (first try + retries).- Specified by:
calls
in interfaceRetryConfig
- Returns:
- number of desired calls, must be 1 (means no retries) or higher.
-
delay
Description copied from interface:RetryConfig
Base delay between try and retry. Defaults to200 ms
.- Specified by:
delay
in interfaceRetryConfig
- Returns:
- delay between retries (combines with retry policy)
-
delayFactor
public double delayFactor()Description copied from interface:RetryConfig
Delay retry policy factor. If unspecified (value of-1
), Jitter retry policy would be used, unless jitter is also unspecified.Default when
Retry.DelayingRetryPolicy
is used is2
.- Specified by:
delayFactor
in interfaceRetryConfig
- Returns:
- delay factor for delaying retry policy
-
jitter
Description copied from interface:RetryConfig
Jitter forRetry.JitterRetryPolicy
. If unspecified (value of-1
), delaying retry policy is used. If both this value, andRetryConfig.delayFactor()
are specified, delaying retry policy would be used.- Specified by:
jitter
in interfaceRetryConfig
- Returns:
- jitter
-
overallTimeout
Description copied from interface:RetryConfig
Overall timeout of all retries combined.- Specified by:
overallTimeout
in interfaceRetryConfig
- Returns:
- overall timeout
-
skipOn
Description copied from interface:RetryConfig
These throwables will not be considered retriable, all other will.- Specified by:
skipOn
in interfaceRetryConfig
- Returns:
- throwable classes to skip retries
- See Also:
-
applyOn
Description copied from interface:RetryConfig
These throwables will be considered retriable.- Specified by:
applyOn
in interfaceRetryConfig
- Returns:
- throwable classes to trigger retries
- See Also:
-
retryPolicy
Description copied from interface:RetryConfig
Explicitly configured retry policy.- Specified by:
retryPolicy
in interfaceRetryConfig
- Returns:
- retry policy
-
enableMetrics
public boolean enableMetrics()Description copied from interface:RetryConfig
Flag to enable metrics for this instance. The value of this flag is combined with the global config entryFaultTolerance.FT_METRICS_DEFAULT_ENABLED
. If either of these flags istrue
, then metrics will be enabled for the instance.- Specified by:
enableMetrics
in interfaceRetryConfig
- Returns:
- metrics enabled flag
-
toString
-
equals
-
hashCode
public int hashCode()
-