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.NameResolverProvider in their JAR. The
file's contents should be the implementation's class name. Implementations that need arguments in
their constructor can be manually registered by NameResolverRegistry#register.
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().
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public Collection | Returns: theSocketAddress types this provider's name-resolver is capable of producing.Returns the |
| protected String | |
| 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. |
| NameResolverProvider | back to summary |
|---|---|
| public NameResolverProvider() | |
| getProducedSocketAddressTypes | back to summary |
|---|---|
| public Collection Returns the
| |
| getScheme | back to summary |
|---|---|
| protected String getScheme() Returns the scheme associated with the provider. The provider normally should only create a
The scheme should be lower-case.
| |
| isAvailable | back to summary |
|---|---|
| protected abstract boolean isAvailable() Whether this provider is available for use, taking the current environment into consideration.
If
| |
| priority | back to summary |
|---|---|
| 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.
| |