Module io.helidon.webserver.grpc
Package io.helidon.webserver.grpc
Class GrpcConfig.BuilderBase<BUILDER extends GrpcConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcConfig>
java.lang.Object
io.helidon.webserver.grpc.GrpcConfig.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:
GrpcConfig.Builder
- Enclosing interface:
GrpcConfig
public abstract static class GrpcConfig.BuilderBase<BUILDER extends GrpcConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcConfig>
extends Object
implements ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for
GrpcConfig.-
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 TypeMethodDescriptionaddGrpcService(GrpcServerService grpcService) gRPC server services.addGrpcServices(List<? extends GrpcServerService> grpcServices) gRPC server services.Clear all grpcServices.config()Configuration used to configure this instance.Deprecated.Update builder from configuration (node of this type).booleanWhether to support compression if requested by a client.enableCompression(boolean enableCompression) Whether to support compression if requested by a client.booleanWhether to collect metrics for gRPC server calls.enableMetrics(boolean enableMetrics) Whether to collect metrics for gRPC server calls.from(GrpcConfig prototype) Update this builder from an existing prototype instance.from(GrpcConfig.BuilderBase<?, ?> builder) Update this builder from an existing prototype builder instance.gRPC server services.grpcServices(List<? extends GrpcServerService> grpcServices) gRPC server services.booleanService discovery flag forgrpcServices().grpcServicesDiscoverServices(boolean grpcServicesDiscoverServices) Service discovery flag forgrpcServices().intMax size of gRPC reading buffer.maxReadBufferSize(int maxReadBufferSize) Max size of gRPC reading buffer.name()Protocol configuration name.Protocol configuration name.protected voidHandles providers and decorators.toString()type()Protocol configuration type.Protocol configuration type.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 GrpcConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends GrpcConfig> - 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 GrpcConfig.BuilderBase<BUILDER,PROTOTYPE>, PROTOTYPE extends GrpcConfig> - Parameters:
config- configuration instance used to obtain values to update this builder- Returns:
- updated builder instance
-
name
Protocol configuration name.- Parameters:
name- name of this configuration- Returns:
- updated builder instance
- See Also:
-
type
Protocol configuration type.- Parameters:
type- type of this configuration- Returns:
- updated builder instance
- See Also:
-
enableMetrics
Whether to collect metrics for gRPC server calls.- Parameters:
enableMetrics- metrics flag- Returns:
- updated builder instance
- See Also:
-
enableCompression
Whether to support compression if requested by a client. If explicitly disabled, no compression will ever be used by the server even if a client-compatible compressor is found.- Parameters:
enableCompression- true if compression is enabled- Returns:
- updated builder instance
- See Also:
-
clearGrpcServices
Clear all grpcServices.- Returns:
- updated builder instance
- See Also:
-
grpcServices
gRPC server services. These services will not be discovered automatically.- Parameters:
grpcServices- services to use- Returns:
- updated builder instance
- See Also:
-
addGrpcServices
gRPC server services. These services will not be discovered automatically.- Parameters:
grpcServices- services to use- Returns:
- updated builder instance
- See Also:
-
addGrpcService
gRPC server services. These services will not be discovered automatically.- Parameters:
grpcService- add single services to use- Returns:
- updated builder instance
- See Also:
-
maxReadBufferSize
Max size of gRPC reading buffer. If receiving an entity larger than this, processing will be aborted. This can help prevent DoS attacks. Default set to 2 MB.- Parameters:
maxReadBufferSize-- Returns:
- updated builder instance
- See Also:
-
grpcServicesDiscoverServices
Service discovery flag forgrpcServices(). If set totrue, services will be discovered from Java service loader, or Helidon ServiceRegistry.- Parameters:
grpcServicesDiscoverServices- whether to enable automatic service discovery- Returns:
- updated builder instance
- See Also:
-
name
Protocol configuration name.- Returns:
- name of this configuration
-
type
Protocol configuration type.- Returns:
- type of this configuration
-
enableMetrics
public boolean enableMetrics()Whether to collect metrics for gRPC server calls.- Returns:
- metrics flag
-
enableCompression
public boolean enableCompression()Whether to support compression if requested by a client. If explicitly disabled, no compression will ever be used by the server even if a client-compatible compressor is found.- Returns:
- true if compression is enabled
-
grpcServices
gRPC server services. These services will not be discovered automatically.- Returns:
- services to use
-
maxReadBufferSize
public int maxReadBufferSize()Max size of gRPC reading buffer. If receiving an entity larger than this, processing will be aborted. This can help prevent DoS attacks. Default set to 2 MB. -
grpcServicesDiscoverServices
public boolean grpcServicesDiscoverServices()Service discovery flag forgrpcServices(). 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)