public struct CallOptions
Options for calls made by client.
Namespace
Grpc.CoreAssembly
Grpc.Core.Api.dll
Constructors
CallOptions(Metadata, Nullable<DateTime>, CancellationToken, WriteOptions, ContextPropagationToken, CallCredentials)
public CallOptions(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = null, WriteOptions writeOptions = null, ContextPropagationToken propagationToken = null, CallCredentials credentials = null)
Creates a new instance of CallOptions
struct.
headers
deadline
cancellationToken
CancellationToken
Can be used to request cancellation of the call.
writeOptions
propagationToken
credentials
Properties
CancellationToken
public readonly CancellationToken CancellationToken { get; }
Token that can be used for cancelling the call on the client side.
Cancelling the token will request cancellation
of the remote call. Best effort will be made to deliver the cancellation
notification to the server and interaction of the call with the server side
will be terminated. Unless the call finishes before the cancellation could
happen (there is an inherent race),
the call will finish with StatusCode.Cancelled
status.
CancellationToken
Credentials
public readonly CallCredentials Credentials { get; }
Credentials to use for this call.
Deadline
public readonly DateTime? Deadline { get; }
Call deadline.
Headers
public readonly Metadata Headers { get; }
Headers to send at the beginning of the call.
IsWaitForReady
public readonly bool IsWaitForReady { get; }
If true
and channel is in ChannelState.TransientFailure
, the call will attempt waiting for the channel to recover
instead of failing immediately (which is the default "FailFast" semantics).
Note: experimental API that can change or be removed without any prior notice.
PropagationToken
public readonly ContextPropagationToken PropagationToken { get; }
Token for propagating parent call context.
WriteOptions
public readonly WriteOptions WriteOptions { get; }
Write options that will be used for this call.
Methods
WithCancellationToken(CancellationToken)
public CallOptions WithCancellationToken(CancellationToken cancellationToken)
Returns new instance of CallOptions
with CancellationToken
set to the value provided. Values of all other fields are preserved.
cancellationToken
CancellationToken
The cancellation token.
WithCredentials(CallCredentials)
public CallOptions WithCredentials(CallCredentials credentials)
Returns new instance of CallOptions
with Credentials
set to the value provided. Values of all other fields are preserved.
WithDeadline(DateTime)
public CallOptions WithDeadline(DateTime deadline)
Returns new instance of CallOptions
with Deadline
set to the value provided. Values of all other fields are preserved.
deadline
DateTime
The deadline.
WithHeaders(Metadata)
public CallOptions WithHeaders(Metadata headers)
Returns new instance of CallOptions
with Headers
set to the value provided. Values of all other fields are preserved.
WithPropagationToken(ContextPropagationToken)
public CallOptions WithPropagationToken(ContextPropagationToken propagationToken)
Returns new instance of CallOptions
with PropagationToken
set to the value provided. Values of all other fields are preserved.
WithWaitForReady(Boolean)
public CallOptions WithWaitForReady(bool waitForReady = true)
Returns new instance of CallOptions with "WaitForReady" semantics enabled/disabled. IsWaitForReady . Note: experimental API that can change or be removed without any prior notice.
WithWriteOptions(WriteOptions)
public CallOptions WithWriteOptions(WriteOptions writeOptions)
Returns new instance of CallOptions
with WriteOptions
set to the value provided. Values of all other fields are preserved.