Module io.helidon.scheduling
Package io.helidon.scheduling
Class TaskConfig.BuilderBase<BUILDER extends TaskConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends TaskConfig>
java.lang.Object
io.helidon.scheduling.TaskConfig.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:
CronConfig.BuilderBase,FixedRateConfig.BuilderBase,TaskConfig.Builder
- Enclosing interface:
TaskConfig
public abstract static class TaskConfig.BuilderBase<BUILDER extends TaskConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends TaskConfig>
extends Object
implements ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for
TaskConfig.-
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 TypeMethodDescriptionclearId()Clear existing value of id.config()Configuration used to configure this instance.Deprecated.Update builder from configuration (node of this type).booleanenabled()Whether the task is enabled.enabled(boolean enabled) Whether the task is enabled.executor()CustomScheduledExecutorServiceused for executing scheduled task.executor(ScheduledExecutorService executor) CustomScheduledExecutorServiceused for executing scheduled task.from(TaskConfig prototype) Update this builder from an existing prototype instance.from(TaskConfig.BuilderBase<?, ?> builder) Update this builder from an existing prototype builder instance.id()Identification of the started task.Identification of the started task.protected voidHandles providers and decorators.Service registry used to discover providers and services.serviceRegistry(ServiceRegistry serviceRegistry) Service registry used to discover providers and services.Task manager that will manage the created task.taskManager(TaskManager taskManager) Task manager that will manage the created task.booleanService discovery flag fortaskManager().taskManagerDiscoverServices(boolean taskManagerDiscoverServices) Service discovery flag fortaskManager().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 TaskConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends TaskConfig> - 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 TaskConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends TaskConfig> - Parameters:
config- configuration instance used to obtain values to update this builder- Returns:
- updated builder instance
-
executor
CustomScheduledExecutorServiceused for executing scheduled task.- Parameters:
executor- custom ScheduledExecutorService- Returns:
- updated builder instance
- See Also:
-
taskManager
Task manager that will manage the created task.- Parameters:
taskManager- task manager, by default taken from the global service registry- Returns:
- updated builder instance
- See Also:
-
clearId
Clear existing value of id.- Returns:
- updated builder instance
- See Also:
-
id
Identification of the started task. This can be used to later look up the instance, for example to cancel it.- Parameters:
id- task id, if not provided via configuration or builder, the configured task will generate a unique ID- Returns:
- updated builder instance
- See Also:
-
enabled
Whether the task is enabled. If disabled, the task will not be scheduled. Default value istrue.- Parameters:
enabled- true if the task should be scheduled- Returns:
- updated builder instance
- See Also:
-
taskManagerDiscoverServices
Service discovery flag fortaskManager(). If set totrue, services will be discovered from Java service loader, or Helidon ServiceRegistry.- Parameters:
taskManagerDiscoverServices- whether to enable automatic service discovery- Returns:
- updated builder instance
- See Also:
-
serviceRegistry
Service registry used to discover providers and services. Provide an explicit registry instance to use.If not configured, the
GlobalServiceRegistrywould be used to discover services.- Parameters:
serviceRegistry- service registry to use- Returns:
- updated builder instance
- See Also:
-
executor
CustomScheduledExecutorServiceused for executing scheduled task.- Returns:
- custom ScheduledExecutorService
-
taskManager
Task manager that will manage the created task.- Returns:
- task manager, by default taken from the global service registry
-
id
Identification of the started task. This can be used to later look up the instance, for example to cancel it.- Returns:
- task id, if not provided via configuration or builder, the configured task will generate a unique ID
-
enabled
public boolean enabled()Whether the task is enabled. If disabled, the task will not be scheduled. Default value istrue.- Returns:
- true if the task should be scheduled
-
taskManagerDiscoverServices
public boolean taskManagerDiscoverServices()Service discovery flag fortaskManager(). If set totrue, services will be discovered from Java service loader, or Helidon ServiceRegistry.- Returns:
- whether to enable automatic service discovery
-
serviceRegistry
Service registry used to discover providers and services. Provide an explicit registry instance to use.If not configured, the
GlobalServiceRegistrywould be used to discover services.- Returns:
- service registry to use
-
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)