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
ServiceDefinition
Gets the service definition.
public abstract ServiceDefinition ServiceDefinition { get; }
Property Value
- ServiceDefinition
Methods
ExecuteNexusOperationAsync(Expression<Action<TService>>, NexusWorkflowOperationOptions?)
Shortcut for StartNexusOperationAsync(Expression<Action<TService>>, NexusWorkflowOperationOptions?) + GetResultAsync().
public Task ExecuteNexusOperationAsync(Expression<Action<TService>> operationStartCall, NexusWorkflowOperationOptions? options = null)
Parameters
operationStartCallExpression<Action<TService>>Invocation of operation without a result.
optionsNexusWorkflowOperationOptionsOperation options.
Returns
- Task
Task with the result of the Nexus operation.
ExecuteNexusOperationAsync<TResult>(Expression<Func<TService, TResult>>, NexusWorkflowOperationOptions?)
Shortcut for StartNexusOperationAsync<TResult>(Expression<Func<TService, TResult>>, NexusWorkflowOperationOptions?) + GetResultAsync().
public Task<TResult> ExecuteNexusOperationAsync<TResult>(Expression<Func<TService, TResult>> operationStartCall, NexusWorkflowOperationOptions? options = null)
Parameters
operationStartCallExpression<Func<TService, TResult>>Invocation of operation with a result.
optionsNexusWorkflowOperationOptionsOperation options.
Returns
- Task<TResult>
Task with the result of the Nexus operation.
Type Parameters
TResultOperation 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
operationStartCallExpression<Action<TService>>Invocation of operation without a result.
optionsNexusWorkflowOperationOptionsOperation 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
operationStartCallExpression<Func<TService, TResult>>Invocation of operation with a result.
optionsNexusWorkflowOperationOptionsOperation options.
Returns
- Task<NexusWorkflowOperationHandle<TResult>>
Handle to the started operation once started.
Type Parameters
TResultOperation result type.