Table of Contents

Class NexusWorkflowClient<TService>

Namespace
Temporalio.Workflows
Assembly
Temporalio.dll

Client for making Nexus service calls from a workflow.

public abstract class NexusWorkflowClient<TService> : NexusWorkflowClient

Type Parameters

TService
Inheritance
NexusWorkflowClient<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>>, NexusWorkflowOperationOptions?)

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

Parameters

operationStartCall Expression<Action<TService>>

Invocation of operation without a result.

options NexusWorkflowOperationOptions

Operation options.

Returns

Task

Task with the result of the Nexus operation.

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

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

Parameters

operationStartCall Expression<Func<TService, TResult>>

Invocation of operation with a result.

options NexusWorkflowOperationOptions

Operation options.

Returns

Task<TResult>

Task with the result of the Nexus operation.

Type Parameters

TResult

Operation result type.

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

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

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

Parameters

operationStartCall Expression<Action<TService>>

Invocation of operation without a result.

options NexusWorkflowOperationOptions

Operation options.

Returns

Task<NexusWorkflowOperationHandle>

Handle to the started operation once started.

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

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

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

Parameters

operationStartCall Expression<Func<TService, TResult>>

Invocation of operation with a result.

options NexusWorkflowOperationOptions

Operation options.

Returns

Task<NexusWorkflowOperationHandle<TResult>>

Handle to the started operation once started.

Type Parameters

TResult

Operation result type.