Class GrpcReflectionFeature
java.lang.Object
io.helidon.webserver.grpc.GrpcReflectionFeature
- All Implemented Interfaces:
RuntimeType.Api<GrpcReflectionConfig>, Weighted, NamedService, ServerFeature, Comparable<Weighted>
public class GrpcReflectionFeature
extends Object
implements Weighted, ServerFeature, RuntimeType.Api<GrpcReflectionConfig>
Adds gRPC reflection support to Helidon WebServer.
-
Nested Class Summary
Nested classes/interfaces inherited from interface ServerFeature
ServerFeature.RoutingBuilders, ServerFeature.ServerFeatureContext, ServerFeature.SocketBuildersModifier and TypeInterfaceDescriptionstatic interfaceAccess to builders of various routing types.static interfaceA wrapping object to access various configurable elements of server forServerFeature.static interfaceA wrapping object to access listener related builders. -
Field Summary
Fields inherited from interface Weighted
DEFAULT_WEIGHTModifier and TypeFieldDescriptionstatic final doubleDefault weight for any weighted component (whether it implements this interface or usesWeightannotation). -
Method Summary
Modifier and TypeMethodDescriptionstatic GrpcReflectionConfig.Builderbuilder()Fluent API builder to set up an instance.static GrpcReflectionFeaturecreate()Create a new gRPC reflection feature with default setup.static GrpcReflectionFeatureCreate a new gRPC reflection feature with custom setup.static GrpcReflectionFeaturecreate(GrpcReflectionConfig config) Create a new instance from its configuration.static GrpcReflectionFeaturecreate(Consumer<GrpcReflectionConfig.Builder> builderConsumer) Create a new instance customizing its configuration.name()Name of this implementation, as provided inConfiguredProvider.create(Config, String).The prototype as it was received when creating this runtime object instance.voidsetup(ServerFeature.ServerFeatureContext featureContext) Set up a server feature.type()Type of this implementation, to distinguish instances of same type, with differentNamedService.name().doubleweight()Weight of this class (maybe because it is defined dynamically, so it cannot be defined by an annotation).
-
Method Details
-
builder
Fluent API builder to set up an instance.- Returns:
- a new builder
-
create
Create a new instance from its configuration.- Parameters:
config- configuration- Returns:
- a new feature
-
create
Create a new instance customizing its configuration.- Parameters:
builderConsumer- consumer of configuration- Returns:
- a new feature
-
create
Create a new gRPC reflection feature with default setup.- Returns:
- a new feature
-
create
Create a new gRPC reflection feature with custom setup.- Parameters:
config- configuration- Returns:
- a new configured feature
-
setup
Description copied from interface:ServerFeatureSet up a server feature. Server features can modify server configuration, right before the server is created. To access listener configuration, or routing, a list of all listeners is provided.- Specified by:
setupin interfaceServerFeature- Parameters:
featureContext- to access builders of webserver, listeners, and routing
-
name
Description copied from interface:NamedServiceName of this implementation, as provided inConfiguredProvider.create(Config, String).- Specified by:
namein interfaceNamedService- Returns:
- name of this service
-
type
Description copied from interface:NamedServiceType of this implementation, to distinguish instances of same type, with differentNamedService.name(). Use for exampleConfiguredProvider.configKey()to define the type.- Specified by:
typein interfaceNamedService- Returns:
- type of this service
-
weight
public double weight()Description copied from interface:WeightedWeight of this class (maybe because it is defined dynamically, so it cannot be defined by an annotation). If not dynamic, you can use theWeightannotation rather than implementing this interface as long as it is supported by the library using thisWeighted. -
prototype
Description copied from interface:RuntimeType.ApiThe prototype as it was received when creating this runtime object instance.- Specified by:
prototypein interfaceRuntimeType.Api<GrpcReflectionConfig>- Returns:
- prototype object used to create this instance
-