Uses of Annotation Interface
io.grpc.ExperimentalApi
Packages that use ExperimentalApi
Package
Description
The gRPC core public API.
The in-process transport which is for when a server is in the same process as the client.
The main transport implementation based on Netty,
for both the client and the server.
API for gRPC over Protocol Buffers, including tools for serializing and de-serializing protobuf
messages.
API for gRPC over Protocol Buffers with proto message classes generated by the Lite Runtime
library.
API for the Stub layer.
Utilities with advanced features in the core layer that user can optionally use.
-
Uses of ExperimentalApi in io.grpc
Classes in io.grpc with annotations of type ExperimentalApiModifier and TypeClassDescriptionfinal class
An immutable type-safe container of attributes.class
A binary log that can be installed on a channel or server.class
A Channel-specific logger provided by GRPC library toLoadBalancer
implementations.class
StreamTracer
for the client-side.static final class
Information about a stream.class
Listens on the client transport life-cycle events.interface
Encloses classes related to the compression and decompression of messages.final class
Uses multipleCallCredentials
as if they were one.interface
Represents a message compressor.final class
Encloses classes related to the compression and decompression of messages.enum
The connectivity states.final class
A tuple of aConnectivityState
and its associatedStatus
.interface
Represents a message decompressor.final class
Encloses classes related to the compression and decompression of messages.final class
A group ofSocketAddress
es that are considered equivalent when channel makes connections.static @interface
Annotation forEquivalentAddressGroup
's attributes.static @interface
Annotation for transport attributes.class
A pluggable component that receives resolved addresses fromNameResolver
and provides the channel a usable subchannel when asked.static final class
Arguments for creating aLoadBalancer.Subchannel
.static final class
static final class
Key for a key-value pair.static class
Factory to createLoadBalancer
instance.static class
Provides essentials for LoadBalancer implementations.static final class
A balancing decision made bySubchannelPicker
for an RPC.static class
Provides arguments for aLoadBalancer.SubchannelPicker.pickSubchannel(LoadBalancer.PickSubchannelArgs)
.static final class
Represents a combination of the resolved server address, associated attributes and a load balancing policy config.static final class
Builder forLoadBalancer.ResolvedAddresses
.static class
A logical connection to a server, or a group of equivalent servers represented by anEquivalentAddressGroup
.static class
The main balancing logic.class
Provider ofLoadBalancer
s.final class
Registry ofLoadBalancerProvider
s.static interface
Marshaller for metadata values that are serialized to an InputStream.static interface
A marshaller that uses a fixed instance of the type it produces.static interface
A marshaller that supports retrieving its type parameterT
at runtime.class
A pluggable component that resolves a targetURI
and return addresses to the caller.static final class
Information that aNameResolver.Factory
uses to create aNameResolver
.static final class
Represents either a successfully parsed service config, containing all necessary parts to be later applied by the channel, or a Status containing the error encountered while parsing.static class
Factory that createsNameResolver
instances.static interface
Receives address updates.static class
Receives address updates.static final class
Represents the results from a Name Resolver.static final class
A builder forNameResolver.ResolutionResult
.static @interface
Annotation for name resolution result attributes.static class
Parses and validates service configuration.class
Provider of name resolvers for name agnostic consumption.final class
Registry ofNameResolverProvider
s.enum
The level of security guarantee in communications.interface
Defines what executor handles the server call, based on each RPC call information at runtime.class
Listens to events on a stream to collect metrics.class
Listens on server transport life-cycle events, with the capability to read and/or change transport attributes.class
StatusOr<T>
Either a Status or a value.class
Listens to events on a stream to collect metrics.Fields in io.grpc with annotations of type ExperimentalApiModifier and TypeFieldDescriptionstatic final Attributes.Key
<String> EquivalentAddressGroup.ATTR_AUTHORITY_OVERRIDE
The authority to be used when constructing Subchannels for this EquivalentAddressGroup.static final Attributes.Key
<SocketAddress> Attribute key for the local address of a transport.static final Attributes.Key
<SocketAddress> Attribute key for the remote address of a transport.static final Attributes.Key
<SSLSession> Attribute key for SSL session of a transport.Methods in io.grpc with annotations of type ExperimentalApiModifier and TypeMethodDescriptionServerBuilder.addStreamTracerFactory
(ServerStreamTracer.Factory factory) Adds aServerStreamTracer.Factory
to measure server-side traffic.ManagedChannelBuilder.addTransportFilter
(ClientTransportFilter filter) Adds aClientTransportFilter
.ServerBuilder.addTransportFilter
(ServerTransportFilter filter) Adds aServerTransportFilter
.ServerBuilder.callExecutor
(ServerCallExecutorSupplier executorSupplier) Allows for defining a way to provide a custom executor to handle the server call.CallOptions.clearOnReadyThreshold()
Resets to the default number of bytes that must be queued before the call will leave the 'wait for ready' state.abstract T
ManagedChannelBuilder.compressorRegistry
(CompressorRegistry registry) Set the compression registry for use in the channel.abstract T
ServerBuilder.compressorRegistry
(CompressorRegistry registry) Set the compression registry for use in the channel.abstract T
ManagedChannelBuilder.decompressorRegistry
(DecompressorRegistry registry) Set the decompression registry for use in the channel.abstract T
ServerBuilder.decompressorRegistry
(DecompressorRegistry registry) Set the decompression registry for use in the channel.ManagedChannelBuilder.defaultLoadBalancingPolicy
(String policy) Sets the default load-balancing policy that will be used if the service config doesn't specify one.ManagedChannelBuilder.defaultServiceConfig
(Map<String, ?> serviceConfig) Provides a service config to the channel.ManagedChannelBuilder.disableServiceConfigLookUp()
Disables service config look-up from the naming system, which is enabled by default.<T> void
Metadata.discardAll
(Metadata.Key<T> key) Remove all values for the given key without returning them.void
ManagedChannel.enterIdle()
Invoking this method moves the channel into the IDLE state and triggers tear-down of the channel's name resolver and load balancer, while still allowing on-going RPCs on the channel to continue.static String
MethodDescriptor.extractBareMethodName
(String fullMethodName) Extract the method name out of a fully qualified method name.DecompressorRegistry.getAdvertisedMessageEncodings()
Provides a list of all message encodings that have decompressors available and should be advertised.ClientCall.getAttributes()
Returns additional properties of the call.ServerCall.getAttributes()
Returns properties of a single call.CallOptions.getAuthority()
Override the HTTP/2 authority the channel claims to be connecting to.LoadBalancer.PickResult.getAuthorityOverride()
Returns the authority override if any.MethodDescriptor.getBareMethodName()
A convenience method forextractBareMethodName(getFullMethodName())
.NameResolver.Args.getChannelLogger()
Returns theChannelLogger
for the Channel served by this NameResolver.Server.getImmutableServices()
Returns immutable services registered with the server, or an empty list if not supported by the implementation.CallOptions.getMaxInboundMessageSize()
Gets the maximum allowed message size acceptable from the remote peer.CallOptions.getMaxOutboundMessageSize()
Gets the maximum allowed message size acceptable to send the remote peer.Server.getMutableServices()
Returns mutable services registered with the server, or an empty list if not supported by the implementation.CallOptions.getOnReadyThreshold()
Returns to the default number of bytes that must be queued before the call will leave the 'wait for ready' state.<T> T
CallOptions.getOption
(CallOptions.Key<T> key) Get the value for a custom option or its inherent default.NameResolver.Args.getOverrideAuthority()
Returns the overrideAuthority from channelManagedChannelBuilder.overrideAuthority(java.lang.String)
.NameResolver.Args.getScheduledExecutorService()
Returns aScheduledExecutorService
for scheduling delayed tasks.ServiceDescriptor.getSchemaDescriptor()
Returns the schema descriptor for this service.ServerCall.getSecurityLevel()
Returns the level of security guarantee in communicationsMethodDescriptor.getServiceName()
A convenience method forextractFullServiceName(getFullMethodName())
.HandlerRegistry.getServices()
Returns theServerServiceDefinition
s provided by the registry, or an empty list if not supported by the implementation.Server.getServices()
Returns all services registered with the server, or an empty list if not supported by the implementation.ManagedChannel.getState
(boolean requestConnection) Gets the current connectivity state.CallOptions.getStreamTracerFactories()
Returns an immutable list ofClientStreamTracerFactory
s.abstract T
ManagedChannelBuilder.idleTimeout
(long value, TimeUnit unit) Set the duration without ongoing RPCs before going to idle mode.void
LoadBalancer.Helper.ignoreRefreshNameResolutionCheck()
Deprecated.Warning has been removedServerBuilder.keepAliveTime
(long keepAliveTime, TimeUnit timeUnit) Sets the time without read activity before sending a keepalive ping.ServerBuilder.keepAliveTimeout
(long keepAliveTimeout, TimeUnit timeUnit) Sets a time waiting for read activity after sending a keepalive ping.ServerBuilder.maxConnectionAge
(long maxConnectionAge, TimeUnit timeUnit) Sets the maximum connection age, connections lasting longer than which will be gracefully terminated.ServerBuilder.maxConnectionAgeGrace
(long maxConnectionAgeGrace, TimeUnit timeUnit) Sets the grace time for the graceful connection termination.ServerBuilder.maxConnectionIdle
(long maxConnectionIdle, TimeUnit timeUnit) Sets the maximum connection idle time, connections being idle for longer than which will be gracefully terminated.ManagedChannelBuilder.maxHedgedAttempts
(int maxHedgedAttempts) Sets the maximum number of hedged attempts that may be configured by the service config.ManagedChannelBuilder.maxRetryAttempts
(int maxRetryAttempts) Sets the maximum number of retry attempts that may be configured by the service config.ManagedChannelBuilder.maxTraceEvents
(int maxTraceEvents) Sets the maximum number of channel trace events to keep in the tracer for each channel or subchannel.abstract T
ManagedChannelBuilder.nameResolverFactory
(NameResolver.Factory resolverFactory) Deprecated.Most usages should use a globally-registeredNameResolverProvider
instead, with either the SPI mechanism orNameResolverRegistry.register(io.grpc.NameResolverProvider)
.void
ManagedChannel.notifyWhenStateChanged
(ConnectivityState source, Runnable callback) Registers a one-off callback that will be run if the connectivity state of the channel diverges from the givensource
, which is typically what has just been returned byManagedChannel.getState(boolean)
.static <T> CallOptions.Key
<T> Deprecated.static <T> Metadata.Key
<T> Metadata.Key.of
(String name, Metadata.BinaryStreamMarshaller<T> marshaller) Creates a key for a binary header, serializing to input streams.ServerBuilder.permitKeepAliveTime
(long keepAliveTime, TimeUnit timeUnit) Specify the most aggressive keep-alive time clients are permitted to configure.ServerBuilder.permitKeepAliveWithoutCalls
(boolean permit) Sets whether to allow clients to send keep-alive HTTP/2 PINGs even if there are no outstanding RPCs on the connection.ManagedChannelBuilder.perRpcBufferLimit
(long bytes) Sets the per RPC buffer limit in bytes used for retry.void
ManagedChannel.resetConnectBackoff()
For subchannels that are in TRANSIENT_FAILURE state, short-circuit the backoff timer and make them reconnect immediately.ManagedChannelBuilder.retryBufferSize
(long bytes) Sets the retry buffer size in bytes.SynchronizationContext.schedule
(Runnable task, Duration delay, ScheduledExecutorService timerService) SynchronizationContext.scheduleWithFixedDelay
(Runnable task, Duration initialDelay, Duration delay, ScheduledExecutorService timerService) ManagedChannelBuilder.setBinaryLog
(BinaryLog binaryLog) Sets the BinaryLog object that this channel should log to.ServerBuilder.setBinaryLog
(BinaryLog binaryLog) Sets the BinaryLog object that this server should log to.NameResolver.Args.Builder.setChannelLogger
(ChannelLogger channelLogger) Sets the name.void
ServerCall.setOnReadyThreshold
(int numBytes) A hint to the call that specifies how many bytes must be queued beforeServerCall.isReady()
will return false.NameResolver.Args.Builder.setOverrideAuthority
(String authority) NameResolver.Args.Builder.setScheduledExecutorService
(ScheduledExecutorService scheduledExecutorService) static Status
Contexts.statusFromCancelled
(Context context) Returns theStatus
of a cancelled context ornull
if the context is not cancelled.void
CallCredentials.thisUsesUnstableApi()
Deprecated.static ServerServiceDefinition
ServerInterceptors.useInputStreamMessages
(ServerServiceDefinition serviceDef) Create a newServerServiceDefinition
whoseMethodDescriptor
serializes to and from InputStream for all methods.static <ReqT,
RespT>
ServerServiceDefinitionServerInterceptors.useMarshalledMessages
(ServerServiceDefinition serviceDef, MethodDescriptor.Marshaller<ReqT> requestMarshaller, MethodDescriptor.Marshaller<RespT> responseMarshaller) Create a newServerServiceDefinition
withMethodDescriptor
for deserializing requests and separateMethodDescriptor
for serializing responses.static <T> ServerServiceDefinition
ServerInterceptors.useMarshalledMessages
(ServerServiceDefinition serviceDef, MethodDescriptor.Marshaller<T> marshaller) Create a newServerServiceDefinition
whoseMethodDescriptor
serializes to and from T for all methods.CallOptions.withAuthority
(String authority) Override the HTTP/2 authority the channel claims to be connecting to.CallOptions.withDeadlineAfter
(Duration duration) CallOptions.withMaxInboundMessageSize
(int maxSize) Sets the maximum allowed message size acceptable from the remote peer.CallOptions.withMaxOutboundMessageSize
(int maxSize) Sets the maximum allowed message size acceptable sent to the remote peer.CallOptions.withOnReadyThreshold
(int numBytes) Specifies how many bytes must be queued before the call is considered not ready to send more messages.CallOptions.withStreamTracerFactory
(ClientStreamTracer.Factory factory) Returns a newCallOptions
with aClientStreamTracerFactory
in addition to the existing factories.static LoadBalancer.PickResult
LoadBalancer.PickResult.withSubchannel
(LoadBalancer.Subchannel subchannel, ClientStreamTracer.Factory streamTracerFactory, String authorityOverride) Same aswithSubchannel(subchannel, streamTracerFactory)
but with an authority name to override in the host header. -
Uses of ExperimentalApi in io.grpc.inprocess
Classes in io.grpc.inprocess with annotations of type ExperimentalApiModifier and TypeClassDescriptionfinal class
Custom SocketAddress class forInProcessTransport
, for a server which can only be referenced via this address instance.final class
Builder for a channel that issues in-process requests.final class
Builder for a server that services in-process requests. -
Uses of ExperimentalApi in io.grpc.netty
Classes in io.grpc.netty with annotations of type ExperimentalApiModifier and TypeClassDescriptionclass
Utility for configuring SslContext for gRPC.final class
An insecure credential that upgrades from HTTP/1 to HTTP/2.enum
Identifies the negotiation used for starting up HTTP/2.final class
A builder to help simplify construction of channels using the Netty transport.static class
This class is meant to be overriden with a custom implementation ofNettyChannelBuilder.LocalSocketPicker.createSocketAddress(java.net.SocketAddress, io.grpc.Attributes)
.final class
A builder to help simplify the construction of a Netty-based GRPC server.final class
A credential that performs TLS with Netty's SslContext as configuration.final class
A credential that performs TLS with Netty's SslContext as configuration.Methods in io.grpc.netty with annotations of type ExperimentalApiModifier and TypeMethodDescriptionstatic io.netty.handler.ssl.SslContextBuilder
GrpcSslContexts.configure
(io.netty.handler.ssl.SslContextBuilder builder, io.netty.handler.ssl.SslProvider provider) Set ciphers and APN appropriate for gRPC. -
Uses of ExperimentalApi in io.grpc.protobuf
Classes in io.grpc.protobuf with annotations of type ExperimentalApiModifier and TypeClassDescriptionfinal class
Utility methods for working withStatus
.Methods in io.grpc.protobuf with annotations of type ExperimentalApiModifier and TypeMethodDescriptionstatic <T extends Message>
MethodDescriptor.Marshaller<T> ProtoUtils.marshallerWithRecursionLimit
(T defaultInstance, int recursionLimit) Creates aMethodDescriptor.Marshaller
for protos of the same type asdefaultInstance
and a custom limit for the recursion depth. -
Uses of ExperimentalApi in io.grpc.protobuf.lite
Classes in io.grpc.protobuf.lite with annotations of type ExperimentalApiModifier and TypeClassDescriptionfinal class
Utility methods for using protobuf with grpc.Methods in io.grpc.protobuf.lite with annotations of type ExperimentalApiModifier and TypeMethodDescriptionstatic <T extends com.google.protobuf.MessageLite>
MethodDescriptor.Marshaller<T> ProtoLiteUtils.marshallerWithRecursionLimit
(T defaultInstance, int recursionLimit) Creates aMethodDescriptor.Marshaller
for protos of the same type asdefaultInstance
and a custom limit for the recursion depth. -
Uses of ExperimentalApi in io.grpc.stub
Classes in io.grpc.stub with annotations of type ExperimentalApiModifier and TypeClassDescriptionclass
A refinement of StreamObserver provided by the GRPC runtime to the application (the client or the server) that allows for more complex interactions with call behavior.final class
Deprecated.Of questionable utility and generally not used.Methods in io.grpc.stub with annotations of type ExperimentalApiModifier and TypeMethodDescriptionstatic ServerInterceptor
MetadataUtils.newAttachMetadataServerInterceptor
(Metadata extras) Returns a ServerInterceptor that adds the specified Metadata to every response stream, one way or another.void
ServerCallStreamObserver.setOnCloseHandler
(Runnable onCloseHandler) Sets aRunnable
to be executed when the call is closed cleanly from the server's point of view: eitherStreamObserver.onCompleted()
orStreamObserver.onError(Throwable)
has been called, all the messages and trailing metadata have been sent and the stream has been closed.void
ServerCallStreamObserver.setOnReadyThreshold
(int numBytes) A hint to the call that specifies how many bytes must be queued beforeServerCallStreamObserver.isReady()
will return false.final S
AbstractStub.withDeadlineAfter
(Duration duration) final S
AbstractStub.withMaxInboundMessageSize
(int maxSize) Returns a new stub that limits the maximum acceptable message size from a remote peer.final S
AbstractStub.withMaxOutboundMessageSize
(int maxSize) Returns a new stub that limits the maximum acceptable message size to send a remote peer.final S
AbstractStub.withOnReadyThreshold
(int numBytes) Returns a new stub that limits the maximum number of bytes per stream in the queue.final <T> S
AbstractStub.withOption
(CallOptions.Key<T> key, T value) Sets a custom option to be passed to client interceptors on the channelClientInterceptor
via the CallOptions parameter. -
Uses of ExperimentalApi in io.grpc.util
Classes in io.grpc.util with annotations of type ExperimentalApiModifier and TypeClassDescriptionfinal class
Contains certificate/key PEM file utility method(s).class
class
class
class
final class
A load balancer that gracefully swaps to a new lb policy.final class
A class that intercepts uncaught exceptions of typeStatusRuntimeException
and handles them by closing theServerCall
, and transmitting the exception's status and metadata to the client.Methods in io.grpc.util with annotations of type ExperimentalApiModifier and TypeMethodDescriptionMutableHandlerRegistry.getServices()
Note: This does not necessarily return a consistent view of the map.void
AdvancedTlsX509KeyManager.updateIdentityCredentials
(PrivateKey key, X509Certificate[] certs) void
AdvancedTlsX509KeyManager.updateIdentityCredentialsFromFile
(File keyFile, File certFile) Deprecated.AdvancedTlsX509KeyManager.updateIdentityCredentialsFromFile
(File keyFile, File certFile, long period, TimeUnit unit, ScheduledExecutorService executor) void
AdvancedTlsX509TrustManager.updateTrustCredentialsFromFile
(File trustCertFile) Deprecated.AdvancedTlsX509TrustManager.updateTrustCredentialsFromFile
(File trustCertFile, long period, TimeUnit unit, ScheduledExecutorService executor)