@Internal public abstract class ServerProvider extends Object
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()
.
Constructor and Description |
---|
ServerProvider() |
Modifier and Type | Method and Description |
---|---|
protected abstract ServerBuilder<?> |
builderForPort(int port)
Creates a new builder with the given port.
|
protected abstract boolean |
isAvailable()
Whether this provider is available for use, taking the current environment into consideration.
|
protected abstract int |
priority()
A priority, from 0 to 10 that this provider should be used, taking the current environment into
consideration.
|
static ServerProvider |
provider()
Returns the ClassLoader-wide default server.
|
public static ServerProvider provider()
ManagedChannelProvider.ProviderNotFoundException
- if no provider is availableprotected abstract boolean isAvailable()
false
, no other methods are safe to be called.protected abstract int priority()
protected abstract ServerBuilder<?> builderForPort(int port)