Class GcpCallInvoker (4.0.0)
Version 4.0.0keyboard_arrow_down
public sealed class GcpCallInvoker : CallInvoker
Call invoker which can fan calls out to multiple underlying channels
based on request properties.
Inheritance
Object >
GcpCallInvoker
Namespace
Google.Api.Gax.Grpc.Gcp
Assembly
Google.Api.Gax.Grpc.dll
Constructors
public GcpCallInvoker(ServiceMetadata serviceMetadata, string target, ChannelCredentials credentials, GrpcChannelOptions options, ApiConfig apiConfig, GrpcAdapter adapter)
Initializes a new instance.
Parameters
Name
Description
serviceMetadata
ServiceMetadata The metadata for the service that this call invoker will be used with. Must not be null.
target
String Target of the underlying grpc channels. Must not be null.
credentials
ChannelCredentials Credentials to secure the underlying grpc channels. Must not be null.
options
GrpcChannelOptions Channel options to be used by the underlying grpc channels. Must not be null.
apiConfig
ApiConfig The API config to apply. Must not be null.
adapter
GrpcAdapter The adapter to use to create channels. Must not be null.
Methods
AsyncClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions)
public override AsyncClientStreamingCall<TRequest, TResponse> AsyncClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options)
Invokes a client streaming call asynchronously.
In client streaming scenario, client sends a stream of requests and server responds with a single response.
Parameters
Name
Description
method
Method <TRequest, TResponse>
host
String
options
CallOptions
Returns
Type
Description
AsyncClientStreamingCall <TRequest, TResponse>
Type Parameters
Name
Description
TRequest
TResponse
AsyncDuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions)
public override AsyncDuplexStreamingCall<TRequest, TResponse> AsyncDuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options)
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
Name
Description
method
Method <TRequest, TResponse>
host
String
options
CallOptions
Returns
Type
Description
AsyncDuplexStreamingCall <TRequest, TResponse>
Type Parameters
Name
Description
TRequest
TResponse
AsyncServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions, TRequest)
public override AsyncServerStreamingCall<TResponse> AsyncServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options, TRequest request)
Invokes a server streaming call asynchronously.
In server streaming scenario, client sends on request and server responds with a stream of responses.
Parameters
Name
Description
method
Method <TRequest, TResponse>
host
String
options
CallOptions
request
TRequest
Returns
Type
Description
AsyncServerStreamingCall <TResponse>
Type Parameters
Name
Description
TRequest
TResponse
AsyncUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions, TRequest)
public override AsyncUnaryCall<TResponse> AsyncUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options, TRequest request)
Invokes a simple remote call asynchronously.
Parameters
Name
Description
method
Method <TRequest, TResponse>
host
String
options
CallOptions
request
TRequest
Returns
Type
Description
AsyncUnaryCall <TResponse>
Type Parameters
Name
Description
TRequest
TResponse
BlockingUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse>, String, CallOptions, TRequest)
public override TResponse BlockingUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string host, CallOptions options, TRequest request)
Invokes a simple remote call in a blocking fashion.
Parameters
Name
Description
method
Method <TRequest, TResponse>
host
String
options
CallOptions
request
TRequest
Returns
Type
Description
TResponse
Type Parameters
Name
Description
TRequest
TResponse
ShutdownAsync()
public async Task ShutdownAsync()
Shuts down the all channels in the underlying channel pool cleanly. It is strongly
recommended to shutdown all previously created channels before exiting from the process.
Returns
Type
Description
Task
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-10-30 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-10-30 UTC."],[],[]]