@ThreadSafe public abstract class Channel extends Object
Call
and
Call.Listener
exchange parsed request and response objects whereas the
transport layer only works with serialized data.
Applications can add common cross-cutting behaviors to stubs by decorating Channel
implementations using ClientInterceptor
. It is expected that most application
code will not use this class directly but rather work with stubs that have been bound to a
Channel that was decorated during application initialization,
Constructor and Description |
---|
Channel() |
Modifier and Type | Method and Description |
---|---|
abstract <RequestT,ResponseT> |
newCall(MethodDescriptor<RequestT,ResponseT> methodDescriptor)
Create a
Call to the remote operation specified by the given
MethodDescriptor . |
public abstract <RequestT,ResponseT> Call<RequestT,ResponseT> newCall(MethodDescriptor<RequestT,ResponseT> methodDescriptor)
Call
to the remote operation specified by the given
MethodDescriptor
. The returned Call
does not trigger any remote
behavior until Call.start(Call.Listener, Metadata.Headers)
is
invoked.methodDescriptor
- describes the name and parameter types of the operation to call.Call
bound to the specified method.