Class LimitsFeatureConfig.BuilderBase<BUILDER extends LimitsFeatureConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends LimitsFeatureConfig>
java.lang.Object
io.helidon.webserver.concurrency.limits.LimitsFeatureConfig.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:
LimitsFeatureConfig.Builder
- Enclosing interface:
LimitsFeatureConfig
public abstract static class LimitsFeatureConfig.BuilderBase<BUILDER extends LimitsFeatureConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends LimitsFeatureConfig>
extends Object
implements ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for
LimitsFeatureConfig.-
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 TypeMethodDescriptionaddSockets(Set<String> sockets) List of sockets to register this feature on.Clear existing value of concurrencyLimit.Clear all sockets.Concurrency limit to use to limit concurrent execution of incoming requests.concurrencyLimit(Limit concurrencyLimit) Concurrency limit to use to limit concurrent execution of incoming requests.booleanService discovery flag forconcurrencyLimit().concurrencyLimitDiscoverServices(boolean concurrencyLimitDiscoverServices) Service discovery flag forconcurrencyLimit().config()Configuration used to configure this instance.Deprecated.Update builder from configuration (node of this type).booleanenabled()Whether this feature is enabled, defaults totrue.enabled(boolean enabled) Whether this feature is enabled, defaults totrue.from(LimitsFeatureConfig prototype) Update this builder from an existing prototype instance.from(LimitsFeatureConfig.BuilderBase<?, ?> builder) Update this builder from an existing prototype builder instance.name()Name of this instance.Name of this instance.protected voidHandles providers and decorators.sockets()List of sockets to register this feature on.List of sockets to register this feature on.toString()protected voidValidates required properties.doubleweight()Weight of the context feature.weight(double weight) Weight of the context feature.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 LimitsFeatureConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends LimitsFeatureConfig> - 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 LimitsFeatureConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends LimitsFeatureConfig> - Parameters:
config- configuration instance used to obtain values to update this builder- Returns:
- updated builder instance
-
weight
Weight of the context feature. As it is used by other features, the default is quite high: 2000.0.- Parameters:
weight- weight of the feature- Returns:
- updated builder instance
- See Also:
-
clearSockets
Clear all sockets.- Returns:
- updated builder instance
- See Also:
-
sockets
List of sockets to register this feature on. If empty, it would get registered on all sockets.- Parameters:
sockets- socket names to register on, defaults to empty (all available sockets)- Returns:
- updated builder instance
- See Also:
-
addSockets
List of sockets to register this feature on. If empty, it would get registered on all sockets.- Parameters:
sockets- socket names to register on, defaults to empty (all available sockets)- Returns:
- updated builder instance
- See Also:
-
name
Name of this instance.- Parameters:
name- instance name- Returns:
- updated builder instance
- See Also:
-
clearConcurrencyLimit
Clear existing value of concurrencyLimit.- Returns:
- updated builder instance
- See Also:
-
concurrencyLimit
Concurrency limit to use to limit concurrent execution of incoming requests. The default is to have unlimited concurrency.- Parameters:
concurrencyLimit- concurrency limit- Returns:
- updated builder instance
- See Also:
-
enabled
Whether this feature is enabled, defaults totrue.- Parameters:
enabled- whether to enable this feature- Returns:
- updated builder instance
- See Also:
-
concurrencyLimitDiscoverServices
Service discovery flag forconcurrencyLimit(). If set totrue, services will be discovered from Java service loader, or Helidon ServiceRegistry.- Parameters:
concurrencyLimitDiscoverServices- whether to enable automatic service discovery- Returns:
- updated builder instance
- See Also:
-
weight
public double weight()Weight of the context feature. As it is used by other features, the default is quite high: 2000.0.- Returns:
- weight of the feature
-
sockets
List of sockets to register this feature on. If empty, it would get registered on all sockets.- Returns:
- socket names to register on, defaults to empty (all available sockets)
-
name
Name of this instance.- Returns:
- instance name
-
concurrencyLimit
Concurrency limit to use to limit concurrent execution of incoming requests. The default is to have unlimited concurrency.- Returns:
- concurrency limit
-
enabled
public boolean enabled()Whether this feature is enabled, defaults totrue.- Returns:
- whether to enable this feature
-
concurrencyLimitDiscoverServices
public boolean concurrencyLimitDiscoverServices()Service discovery flag forconcurrencyLimit(). If set totrue, services will be discovered from Java service loader, or Helidon ServiceRegistry.- Returns:
- whether to enable automatic service discovery
-
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)