Package io.grpc.internal
@Internal
package io.grpc.internal
Interfaces and implementations that are internal to gRPC.
All the content under this package and its subpackages are considered annotated with Internal.
-
ClassDescriptionThe abstract base class for
ClientStreamimplementations.A sink for outbound operations, separated from the stream simply to avoid name collisions/confusion.This should only be called from the transport thread.Abstract base class forReadableBufferimplementations.Abstract base class forServerStreamimplementations.A sink for outbound operations, separated from the stream simply to avoid name collisions/confusion.This should only be called from the transport thread (except for private interactions withAbstractServerStream).The stream and stream state as used by the application.Stream state as used by the transport.Sits betweenAbstractStream.TransportStateandMessageDeframerto deframe in the client thread.Alongatomically updated due to errors caused by the value being too small.Determines how long to wait before doing some action (typically a retry, or a reconnect).Extension ofStreamto support client-side termination semantics.An observer of client-side stream events.The progress of the RPC when client stream listener is closed.The client-side transport typically encapsulating a single connection to a remote server.A callback that is invoked when the acknowledgement to aClientTransport.ping(ClientTransport.PingCallback, Executor)is received.Pre-configured factory for creatingConnectionClientTransportinstances.AReadableBufferthat is composed of 0 or moreReadableBuffers.AManagedClientTransportthat is based on a connection.Utility to load dynamically Conscrypt when it is available.Interface for deframing gRPC messages.DelayedClientCall<ReqT,RespT> A call that queues requests before a real call is ready to be delegated to.A DNS-basedNameResolver.AddressResolver resolves a hostname into a list of addresses.Used as a DNS-based name resolver's internal representation of resolution result.DnsNameResolver.ResourceResolveris a Dns ResourceRecord resolver.Describes a parsed SRV record.A provider forDnsNameResolver.Retry Policy for Transport reconnection.An implementation ofClientStreamthat fails (by callingClientStreamListener.closed(Status, ClientStreamListener.RpcProgress, Metadata)) when started, and silently does nothing for the other operations.An object pool that always returns the same instance and does nothing when returning the object.Base class for a wrapper around anotherReadableBuffer.Interface for framing gRPC messages.Special attributes that are only useful to gRPC.Common utilities for GRPC.Percent encode theauthoritybased on https://datatracker.ietf.org/doc/html/rfc3986#section-3.2.All error codes identified by the HTTP/2 spec.Base implementation for client streams using HTTP2 as the transport.Represents an outstanding PING operation on an HTTP/2 channel.Builds a concise and readable string that gives insight of the concerned part of the system.An object that accepts new incoming connections on one or more listening socket addresses.Aggregates the in-use state of a set of objects.Parses JSON with as few preconceived notions as possible.Helper utility to work with JSON values in Java types.Monitors the client's PING usage to make sure the rate is permitted.Manages keepalive pings.Default client sideKeepAliveManager.KeepAlivePinger.A simple wrapper for aRunnablethat logs any exception thrown by it, before re-throwing it.An interface for a long base counter.Default managed channel builder, for usage in Transport implementations.An interface for Transport implementors to provide a default port toNameResolverfor use in cases where the target string doesn't include a port.An interface for Transport implementors to provide theClientTransportFactoryappropriate for the channel.Default implementation ofManagedChannelImplBuilder.ChannelBuilderDefaultPortProviderthat returns a fixed port.Convenience ClientTransportFactoryBuilder, throws UnsupportedOperationException().AClientTransportthat has life-cycle management.Receives notifications for the transport life-cycle events.Monitors connection idle time; shutdowns the connection if the max connection idle is reached.Deframer for GRPC frames.A listener of deframing events.Encodes gRPC messages to be delivered via the transport layer which implementsMessageFramer.Sink.Sink implemented by the transport layer to receive frames and forward them to their destination.An implementation ofClientStreamthat silently does nothing for the operations.ObjectPool<T>An object pool.Provider for the "pick_first" balancing policy.Implementation ofLoadBalancer.PickSubchannelArgs.Interface for an abstract byte buffer.Utility methods for creatingReadableBufferinstances.ALongCounterthat is implemented with a JDK8.invalid reference
LongAdderThis interface is used to schedule future retry attempts for a failed operation.The library built-in implementation of service config parser.Default implementation ofServer, for creation by transports.Default builder forServerinstances, for usage in Transport implementations.An interface to provide to provide transport specific information for the server.A listener to a server for transport creation events.Extension ofStreamto support server-side termination semantics.An observer of server-side stream events.An inbound connection.A observer of a server-side transport for stream creation events.Helper utility to work with service configs.A LoadBalancingConfig that includes the policy name (the key) and its raw config value (parsed JSON).A holder for shared resource singletons.Defines a resource, and the way to create and destroy instances of it.An ObjectPool backed by aSharedResourceHolder.Resource.Provides utilities to manage SPIFFE bundles, extract SPIFFE IDs from X.509 certificate chains, and parse SPIFFE IDs.Represents a SPIFFE trust bundle; that is, a map from trust domain to set of trusted certificates.Represents a SPIFFE ID as defined in the SPIFFE standard.The stats and tracing information for a stream.A single stream of communication between two end-points within a transport.An observer ofStreamevents.A producer for deframed gRPC messages.ADeframerthat optimizations by taking over part of the thread safety.Time source representing the current system time in nanos.Utility functions for transport layer framing.A class for gathering statistics about a transport.An interface for reading the local and remote flow control windows of the transport.A container that holds the local and remote flow control window sizes.An interface for a byte buffer that can only be written to.An allocator of buffers provided by the transport implementation toMessageFramerso it can send chunks of data to the transport in a form that the transport can directly serialize.