public sealed class ApiServerStreamingCall<TRequest, TResponse>
Bridge between a server streaming RPC method and higher level abstractions, applying call settings as required.
Namespace
Google.Api.Gax.GrpcAssembly
Google.Api.Gax.Grpc.dll
Type Parameters | |
---|---|
Name | Description |
TRequest | RPC request type |
TResponse | RPC response type |
Properties
BaseCallSettings
public CallSettings BaseCallSettings { get; }
The base CallSettings for this API call; these can be further overridden by providing
a CallSettings
to Call(TRequest, CallSettings).
Property Value | |
---|---|
Type | Description |
CallSettings |
Methods
Call(TRequest, CallSettings)
public AsyncServerStreamingCall<TResponse> Call(TRequest request, CallSettings perCallCallSettings)
Initializes a streaming RPC call.
Parameters | |
---|---|
Name | Description |
request | TRequest The RPC request. |
perCallCallSettings | CallSettings The call settings to apply to this specific call, overriding defaults where necessary. |
Returns | |
---|---|
Type | Description |
AsyncServerStreamingCall<TResponse> | A gRPC duplex streaming call object. |
CallAsync(TRequest, CallSettings)
public Task<AsyncServerStreamingCall<TResponse>> CallAsync(TRequest request, CallSettings perCallCallSettings)
Initializes a streaming RPC call asynchronously.
Parameters | |
---|---|
Name | Description |
request | TRequest The RPC request. |
perCallCallSettings | CallSettings The call settings to apply to this specific call, overriding defaults where necessary. |
Returns | |
---|---|
Type | Description |
Task<AsyncServerStreamingCall<TResponse>> | A task representing the gRPC duplex streaming call object. |
WithCallSettingsOverlay(Func<TRequest, CallSettings>)
public ApiServerStreamingCall<TRequest, TResponse> WithCallSettingsOverlay(Func<TRequest, CallSettings> callSettingsOverlayFn)
Constructs a new ApiServerStreamingCall<TRequest, TResponse> that applies an overlay to the underlying CallSettings. If a value exists in both the original and the overlay, the overlay takes priority.
Parameter | |
---|---|
Name | Description |
callSettingsOverlayFn | Func<TRequest, CallSettings> Function that builds the overlay CallSettings. |
Returns | |
---|---|
Type | Description |
ApiServerStreamingCall<TRequest, TResponse> | A new ApiServerStreamingCall<TRequest, TResponse> with the overlay applied. |
WithExtractedGoogleRequestParam(RoutingHeaderExtractor<TRequest>)
public ApiServerStreamingCall<TRequest, TResponse> WithExtractedGoogleRequestParam(RoutingHeaderExtractor<TRequest> extractor)
Constructs a new ApiCall<TRequest, TResponse> that applies an x-goog-request-params header to each request, using the RoutingHeaderExtractor<TRequest>.
Parameter | |
---|---|
Name | Description |
extractor | RoutingHeaderExtractor<TRequest> The RoutingHeaderExtractor<TRequest> that extracts the value of the routing header from a request. |
Returns | |
---|---|
Type | Description |
ApiServerStreamingCall<TRequest, TResponse> |
|
Values produced by the function are URL-encoded.
WithGoogleRequestParam(String, Func<TRequest, String>)
public ApiServerStreamingCall<TRequest, TResponse> WithGoogleRequestParam(string parameterName, Func<TRequest, string> valueSelector)
Constructs a new ApiServerStreamingCall<TRequest, TResponse> that applies an x-goog-request-params header to each request, using the specified parameter name and a value derived from the request.
Parameters | |
---|---|
Name | Description |
parameterName | String The parameter name in the header. Must not be null. |
valueSelector | Func<TRequest, String> A function to call on each request, to determine the value to specify in the header. The parameter must not be null, but may return null. |
Returns | |
---|---|
Type | Description |
ApiServerStreamingCall<TRequest, TResponse> | A new ApiServerStreamingCall<TRequest, TResponse> which applies the header on each request. |
Values produced by the function are URL-encoded; it is expected that parameterName
is already URL-encoded.