Package io.grpc
Class ServerRegistry
java.lang.Object
io.grpc.ServerRegistry
Registry of
ServerProvider
s. The default instance
loads
providers at runtime through the Java service provider mechanism.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
Thrown when no suitableServerProvider
objects can be found.private static final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final LinkedHashSet
<ServerProvider> private List
<ServerProvider> Immutable, sorted version ofallProviders
.private static ServerRegistry
private static final Logger
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addProvider
(ServerProvider provider) void
deregister
(ServerProvider provider) Deregisters a provider.static ServerRegistry
Returns the default registry that loads providers via the Java service loader mechanism.(package private) ServerBuilder
<?> newServerBuilderForPort
(int port, ServerCredentials creds) (package private) ServerProvider
provider()
(package private) List
<ServerProvider> Returns effective providers, in priority order.private void
void
register
(ServerProvider provider) Register a provider.
-
Field Details
-
logger
-
instance
-
allProviders
-
effectiveProviders
Immutable, sorted version ofallProviders
. Is replaced instead of mutating.
-
-
Constructor Details
-
ServerRegistry
public ServerRegistry()
-
-
Method Details
-
register
Register a provider.If the provider's
isAvailable()
returnsfalse
, this method will throwIllegalArgumentException
.Providers will be used in priority order. In case of ties, providers are used in registration order.
-
addProvider
-
deregister
Deregisters a provider. No-op if the provider is not in the registry.- Parameters:
provider
- the provider that was added to the register viaregister(io.grpc.ServerProvider)
.
-
refreshProviders
private void refreshProviders() -
getDefaultRegistry
Returns the default registry that loads providers via the Java service loader mechanism. -
providers
List<ServerProvider> providers()Returns effective providers, in priority order. -
provider
ServerProvider provider() -
getHardCodedClasses
-
newServerBuilderForPort
-