Module io.helidon.faulttolerance
Package io.helidon.faulttolerance
Class TimeoutConfig.BuilderBase<BUILDER extends TimeoutConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends TimeoutConfig>
java.lang.Object
io.helidon.faulttolerance.TimeoutConfig.BuilderBase<BUILDER,PROTOTYPE>
- Type Parameters:
BUILDER- type of the builder extending this abstract builderPROTOTYPE- type of the prototype interface that would be built byPrototype.Builder.buildPrototype()
- All Implemented Interfaces:
Prototype.Builder<BUILDER,,PROTOTYPE> ConfigBuilderSupport.ConfiguredBuilder<BUILDER,,PROTOTYPE> ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
- Direct Known Subclasses:
TimeoutConfig.Builder
- Enclosing interface:
TimeoutConfig
public abstract static class TimeoutConfig.BuilderBase<BUILDER extends TimeoutConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends TimeoutConfig>
extends Object
implements ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for
TimeoutConfig.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classGenerated implementation of the prototype, can be extended by descendant prototype implementations. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionClear existing value of executor.Clear existing value of name.config()Configuration used to configure this instance.Deprecated.Update builder from configuration (node of this type).booleanFlag to indicate that code must be executed in current thread instead of in an executor's thread.currentThread(boolean currentThread) Flag to indicate that code must be executed in current thread instead of in an executor's thread.booleanFlag to enable metrics for this instance.enableMetrics(boolean enableMetrics) Flag to enable metrics for this instance.executor()Executor service to schedule the timeout.executor(ExecutorService executor) Executor service to schedule the timeout.from(TimeoutConfig prototype) Update this builder from an existing prototype instance.from(TimeoutConfig.BuilderBase<?, ?> builder) Update this builder from an existing prototype builder instance.name()Name for debugging, error reporting, monitoring.Name for debugging, error reporting, monitoring.protected voidHandles providers and decorators.timeout()Duration to wait before timing out.Duration to wait before timing out.toString()protected voidValidates required properties.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.helidon.builder.api.Prototype.Builder
buildPrototype, self
-
Constructor Details
-
BuilderBase
protected BuilderBase()Protected to support extensibility.
-
-
Method Details
-
from
Update this builder from an existing prototype instance. This method disables automatic service discovery.- Parameters:
prototype- existing prototype to update this builder from- Returns:
- updated builder instance
-
from
Update this builder from an existing prototype builder instance.- Parameters:
builder- existing builder prototype to update this builder from- Returns:
- updated builder instance
-
config
Deprecated.Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.- Specified by:
configin interfaceConfigBuilderSupport.ConfiguredBuilder<BUILDER extends TimeoutConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends TimeoutConfig> - Parameters:
config- configuration instance used to obtain values to update this builder- Returns:
- updated builder instance
-
config
Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.- Specified by:
configin interfaceConfigBuilderSupport.ConfiguredBuilder<BUILDER extends TimeoutConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends TimeoutConfig> - Parameters:
config- configuration instance used to obtain values to update this builder- Returns:
- updated builder instance
-
clearName
Clear existing value of name.- Returns:
- updated builder instance
- See Also:
-
name
Name for debugging, error reporting, monitoring.- Parameters:
name- name of this timeout- Returns:
- updated builder instance
- See Also:
-
timeout
Duration to wait before timing out. Defaults to10 seconds.- Parameters:
timeout- timeout- Returns:
- updated builder instance
- See Also:
-
currentThread
Flag to indicate that code must be executed in current thread instead of in an executor's thread. This flag isfalseby default.- Parameters:
currentThread- whether to execute on current thread (true), or in an executor service (false})- Returns:
- updated builder instance
- See Also:
-
clearExecutor
Clear existing value of executor.- Returns:
- updated builder instance
- See Also:
-
executor
Executor service to schedule the timeout.- Parameters:
executor- executor service to use- Returns:
- updated builder instance
- See Also:
-
enableMetrics
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.- Parameters:
enableMetrics- metrics enabled flag- Returns:
- updated builder instance
- See Also:
-
name
Name for debugging, error reporting, monitoring.- Returns:
- name of this timeout
-
timeout
Duration to wait before timing out. Defaults to10 seconds.- Returns:
- timeout
-
currentThread
public boolean currentThread()Flag to indicate that code must be executed in current thread instead of in an executor's thread. This flag isfalseby default.- Returns:
- whether to execute on current thread (
true), or in an executor service (false})
-
executor
Executor service to schedule the timeout.- Returns:
- executor service to use
-
enableMetrics
public boolean enableMetrics()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.- Returns:
- metrics enabled flag
-
toString
-
preBuildPrototype
protected void preBuildPrototype()Handles providers and decorators. -
validatePrototype
protected void validatePrototype()Validates required properties. -
config
Configuration used to configure this instance.- Returns:
- config instance
-
config(io.helidon.config.Config)