Class CallInvoker

public abstract class CallInvoker : object

Abstraction of client-side RPC invocation.

Inheritance

Object > CallInvoker

Derived Types

Namespace

Grpc.Core

Assembly

Grpc.Core.Api.dll

Methods

AsyncClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions)

public abstract AsyncClientStreamingCall<TRequest, TResponse> AsyncClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options)
    where TRequest : class where TResponse : class

Invokes a client streaming call asynchronously. In client streaming scenario, client sends a stream of requests and server responds with a single response.

Parameters
TypeNameDescription
Method<TRequest, TResponse>method
Stringhost
CallOptionsoptions
Returns
TypeDescription
AsyncClientStreamingCall<TRequest, TResponse>
Type Parameters
NameDescription
TRequest
TResponse

AsyncDuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions)

public abstract AsyncDuplexStreamingCall<TRequest, TResponse> AsyncDuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options)
    where TRequest : class where TResponse : class

Invokes a duplex streaming call asynchronously. In duplex streaming scenario, client sends a stream of requests and server responds with a stream of responses. The response stream is completely independent and both side can be sending messages at the same time.

Parameters
TypeNameDescription
Method<TRequest, TResponse>method
Stringhost
CallOptionsoptions
Returns
TypeDescription
AsyncDuplexStreamingCall<TRequest, TResponse>
Type Parameters
NameDescription
TRequest
TResponse

AsyncServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions, TRequest)

public abstract AsyncServerStreamingCall<TResponse> AsyncServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options, TRequest request)
    where TRequest : class where TResponse : class

Invokes a server streaming call asynchronously. In server streaming scenario, client sends on request and server responds with a stream of responses.

Parameters
TypeNameDescription
Method<TRequest, TResponse>method
Stringhost
CallOptionsoptions
TRequestrequest
Returns
TypeDescription
AsyncServerStreamingCall<TResponse>
Type Parameters
NameDescription
TRequest
TResponse

AsyncUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions, TRequest)

public abstract AsyncUnaryCall<TResponse> AsyncUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options, TRequest request)
    where TRequest : class where TResponse : class

Invokes a simple remote call asynchronously.

Parameters
TypeNameDescription
Method<TRequest, TResponse>method
Stringhost
CallOptionsoptions
TRequestrequest
Returns
TypeDescription
AsyncUnaryCall<TResponse>
Type Parameters
NameDescription
TRequest
TResponse

BlockingUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions, TRequest)

public abstract TResponse BlockingUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options, TRequest request)
    where TRequest : class where TResponse : class

Invokes a simple remote call in a blocking fashion.

Parameters
TypeNameDescription
Method<TRequest, TResponse>method
Stringhost
CallOptionsoptions
TRequestrequest
Returns
TypeDescription
TResponse
Type Parameters
NameDescription
TRequest
TResponse

Extension Methods