Package io.grpc.internal
Class InternalSubchannel.CallTracingTransport
- java.lang.Object
-
- io.grpc.internal.ForwardingConnectionClientTransport
-
- io.grpc.internal.InternalSubchannel.CallTracingTransport
-
- All Implemented Interfaces:
ClientTransport
,ConnectionClientTransport
,ManagedClientTransport
,InternalInstrumented<InternalChannelz.SocketStats>
,InternalWithLogId
- Enclosing class:
- InternalSubchannel
static final class InternalSubchannel.CallTracingTransport extends ForwardingConnectionClientTransport
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.grpc.internal.ClientTransport
ClientTransport.PingCallback
-
Nested classes/interfaces inherited from interface io.grpc.internal.ManagedClientTransport
ManagedClientTransport.Listener
-
-
Field Summary
Fields Modifier and Type Field Description private CallTracer
callTracer
private ConnectionClientTransport
delegate
-
Constructor Summary
Constructors Modifier Constructor Description private
CallTracingTransport(ConnectionClientTransport delegate, CallTracer callTracer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ConnectionClientTransport
delegate()
ClientStream
newStream(MethodDescriptor<?,?> method, Metadata headers, CallOptions callOptions, ClientStreamTracer[] tracers)
Creates a new stream for sending messages to a remote end-point.-
Methods inherited from class io.grpc.internal.ForwardingConnectionClientTransport
getAttributes, getLogId, getStats, ping, shutdown, shutdownNow, start, toString
-
-
-
-
Field Detail
-
delegate
private final ConnectionClientTransport delegate
-
callTracer
private final CallTracer callTracer
-
-
Constructor Detail
-
CallTracingTransport
private CallTracingTransport(ConnectionClientTransport delegate, CallTracer callTracer)
-
-
Method Detail
-
delegate
protected ConnectionClientTransport delegate()
- Specified by:
delegate
in classForwardingConnectionClientTransport
-
newStream
public ClientStream newStream(MethodDescriptor<?,?> method, Metadata headers, CallOptions callOptions, ClientStreamTracer[] tracers)
Description copied from interface:ClientTransport
Creates a new stream for sending messages to a remote end-point.This method returns immediately and does not wait for any validation of the request. If creation fails for any reason,
ClientStreamListener.closed(io.grpc.Status, io.grpc.internal.ClientStreamListener.RpcProgress, io.grpc.Metadata)
will be called to provide the error information. Any sent messages for this stream will be buffered until creation has completed (either successfully or unsuccessfully).This method is called under the
Context
of theClientCall
.- Specified by:
newStream
in interfaceClientTransport
- Overrides:
newStream
in classForwardingConnectionClientTransport
- Parameters:
method
- the descriptor of the remote method to be called for this stream.headers
- to send at the beginning of the callcallOptions
- runtime options of the calltracers
- a non-empty array of tracers. The last element in it is reserved to be set by the load balancer's pick result and otherwise is a no-op tracer.- Returns:
- the newly created stream.
-
-