Package io.grpc
Class ServerProvider
java.lang.Object
io.grpc.ServerProvider
Provider of servers for transport agnostic consumption.
Implementations can be automatically discovered by gRPC via Java's SPI mechanism. For
automatic discovery, the implementation must have a zero-argument constructor and include
a resource named META-INF/services/io.grpc.ServerProvider in their JAR. The
file's contents should be the implementation's class name.
Implementations should not throw. If they do, it may interrupt class loading. If
exceptions may reasonably occur for implementation-specific reasons, implementations should
generally handle the exception gracefully and return false from isAvailable().
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract ServerBuilder<?>builderForPort(int port) Creates a new builder with the given port.protected abstract booleanWhether this provider is available for use, taking the current environment into consideration.protected ServerProvider.NewServerBuilderResultnewServerBuilderForPort(int port, ServerCredentials creds) Creates a new builder with the given port and credentials.protected abstract intpriority()A priority, from 0 to 10 that this provider should be used, taking the current environment into consideration.static ServerProviderprovider()Returns the ClassLoader-wide default server.
-
Constructor Details
-
ServerProvider
public ServerProvider()
-
-
Method Details
-
provider
Returns the ClassLoader-wide default server.- Throws:
ManagedChannelProvider.ProviderNotFoundException- if no provider is available
-
isAvailable
protected abstract boolean isAvailable()Whether this provider is available for use, taking the current environment into consideration. Iffalse, no other methods are safe to be called. -
priority
protected abstract int priority()A priority, from 0 to 10 that this provider should be used, taking the current environment into consideration. 5 should be considered the default, and then tweaked based on environment detection. A priority of 0 does not imply that the provider wouldn't work; just that it should be last in line. -
builderForPort
Creates a new builder with the given port. -
newServerBuilderForPort
protected ServerProvider.NewServerBuilderResult newServerBuilderForPort(int port, ServerCredentials creds) Creates a new builder with the given port and credentials. Returns an error-string result if unable to understand the credentials.
-