Table of Contents

Class NexusClient<TService>

Namespace
Temporalio.Workflows
Assembly
Temporalio.dll

Client for making Nexus service calls from a workflow.

public abstract class NexusClient<TService> : NexusClient

Type Parameters

TService
Inheritance
NexusClient<TService>
Inherited Members

Remarks

WARNING: Nexus support is experimental.

Properties

Service

Gets the service name.

public override string Service { get; }

Property Value

string

ServiceDefinition

Gets the service definition.

public abstract ServiceDefinition ServiceDefinition { get; }

Property Value

ServiceDefinition

Methods

ExecuteNexusOperationAsync(Expression<Action<TService>>, NexusOperationOptions?)

public Task ExecuteNexusOperationAsync(Expression<Action<TService>> operationStartCall, NexusOperationOptions? options = null)

Parameters

operationStartCall Expression<Action<TService>>

Invocation of operation without a result.

options NexusOperationOptions

Operation options.

Returns

Task

Task with the result of the Nexus operation.

ExecuteNexusOperationAsync<TResult>(Expression<Func<TService, TResult>>, NexusOperationOptions?)

public Task<TResult> ExecuteNexusOperationAsync<TResult>(Expression<Func<TService, TResult>> operationStartCall, NexusOperationOptions? options = null)

Parameters

operationStartCall Expression<Func<TService, TResult>>

Invocation of operation with a result.

options NexusOperationOptions

Operation options.

Returns

Task<TResult>

Task with the result of the Nexus operation.

Type Parameters

TResult

Operation result type.

StartNexusOperationAsync(Expression<Action<TService>>, NexusOperationOptions?)

Start a Nexus operation via a lambda invoking the operation on the service.

public Task<NexusOperationHandle> StartNexusOperationAsync(Expression<Action<TService>> operationStartCall, NexusOperationOptions? options = null)

Parameters

operationStartCall Expression<Action<TService>>

Invocation of operation without a result.

options NexusOperationOptions

Operation options.

Returns

Task<NexusOperationHandle>

Handle to the started operation once started.

StartNexusOperationAsync<TResult>(Expression<Func<TService, TResult>>, NexusOperationOptions?)

Start a Nexus operation via a lambda invoking the operation on the service.

public Task<NexusOperationHandle<TResult>> StartNexusOperationAsync<TResult>(Expression<Func<TService, TResult>> operationStartCall, NexusOperationOptions? options = null)

Parameters

operationStartCall Expression<Func<TService, TResult>>

Invocation of operation with a result.

options NexusOperationOptions

Operation options.

Returns

Task<NexusOperationHandle<TResult>>

Handle to the started operation once started.

Type Parameters

TResult

Operation result type.