Click or drag to resize

Neon.Cadence Namespace

This namespace defines the Neon .NET client for the Uber Cadence workflow service.
Classes
  ClassDescription
Public classAccessDeniedException
Thrown when an operation cannot be performed to access limits.
Public classActivity
Provides useful information and functionality for workflow implementations. This will be available via the Workflow property.
Public classActivityAttribute
Used to tag activity implementations that inherit from ActivityBase to customize the how the activity is registered.
Public classActivityBase
Base class that must be inherited by all implementations.
Public classActivityFutureStub
Used to execute an untyped activity in parallel with other activities, child workflows or other operations. Instances are created via NewActivityFutureStub(String, ActivityOptions).
Public classActivityFutureStubTActivityInterface
Public classActivityHeartbeatTimeoutException
Thrown when an activity did not send a timely heartbeat to Cadence.
Public classActivityInterfaceAttribute
Used to tag activity interfaces and optionally specify the task list identifying the workers hosting this activity. CadenceClient for more information on how task lists work.
Public classActivityMethodAttribute
Used to customize activity interface method options.
Public classActivityOptions
Specifies the options used for executing an activity.
Public classActivityStub
Used to execute an untyped activity whose .NET type information is not known at runtime or an activity written in different languages.
Public classActivityTask
Holds information about an executing activity.
Public classActivityTypeException
Thrown when ak activity interface or implementation is not valid.
Public classActivityWorkerStartedException
Thrown when an attempt is made to register an activity implementation after an activity worker has been started on a client. You must register all implementations before starting a worker.
Public classBadRequestException
Thrown when a Cadence receives an invalid request.
Public classCadenceClient
Implements a client that will be connected to a Cadence cluster and be used to create and manage workflows.
Public classCadenceClientClosedArgs
The event arguments sent when a CadenceClient is closed with a property indicating whether or not the connection was closed due to an error.
Public classCadenceCustomException
Thrown when a Cadence custom error is encountered.
Public classCadenceException
Base class for all Cadence related exceptions.
Public classCadenceGenericException
Thrown when a Cadence generic error is encountered.
Public classCadenceInternalException
Base class for Cadence exceptions that must not be caught and handled by workflow entry point methods. The Cadence client must be allowed to handle these.
Public classCadencePanicException
Thrown when a Cadence panic error is encountered.
Public classCadenceSettings
Cadence client settings.
Public classCadenceTimeoutException
Indicates that a Cadence operation timed out.
Public classCancellationAlreadyRequestedException
Thrown when attempting to cancel an operation that has already been cancelled.
Public classCancelledException
Thrown when a Cadence operation is cancelled.
Public classChildWorkflowFuture
Implements a child workflow future that returns void.
Public classChildWorkflowFutureTResult
Implements a child workflow future that returns a value.
Public classChildWorkflowFutureStub

Manages starting and signalling a child workflow instance based on its workflow type name and arguments. This is useful when you need to perform other operations in parallel with a child by separating workflow execution and retrieving the result into separate operations.

Use this version for workflows that don't return a result.

Public classChildWorkflowOptions
Specifies the options to use when executing a child workflow.
Public classChildWorkflowStubTWorkflowInterface
Public classClientVersionNotSupportedException
Thrown when the underlying GOLANG client version is not supported by the Cadence cluster.
Public classConnectException
Thrown when a Cadence connection could not be established.
Public classContinueAsNewException
Public classContinueAsNewOptions
Specifies the options to be used when continuing a workflow as a new instance.
Public classDomainAlreadyExistsException
Thrown when a Cadence domain already exists.
Public classDomainConfiguration
Domain configuration options.
Public classDomainDescription
Information returned by DescribeDomainAsync(String).
Public classDomainInfo
Information about a Cadence domain.
Public classDomainListPage
Holds a page of domain information listed from Cadence.
Public classDomainNotActiveException
Thrown when a Cadence domain has been deprecated.
Public classEntityNotExistsException
Thrown when a Cadence request references an entity that doesn't exist.
Public classExternalWorkflowFuture
Implements an external workflow future that returns void.
Public classExternalWorkflowFutureTResult
Implements an external workflow future that returns a value.
Public classExternalWorkflowStub
Supports signalling and cancelling any workflow. This is useful when an external workflow interface type is not known at compile time or to manage workflows written in another language.
Public classInternalServiceException
Thrown when a Cadence experienced an internal error.
Public classJsonDataConverter

Implements IDataConverter by serializing data to/from UTF-8 encoded JSON text.

Note Note
This converter uses the Newtonsoft JSON.NET package so you can decorate your data types with attributes such as [JsonProperty], [JsonIgnore],... to control how your data is serialized.
Note Note
This implementation also supports values that implement IRoundtripData to make it easier to manage data schema changes.
Public classLimitExceededException
Thrown when a Cadence workflow query failed.
Public classLocalActivityFutureStubTActivityInterface, TActivityImplementation
Public classLocalActivityOptions
Specifies options used when running a local workflow activity.
Public classNonRetriableErrors
Used in conjunction with RetryOptions to specify errors that will not cause a workflow related operation to be retried.
Public classPendingActivityInfo
Describes the current state of a scheduled or executing activity.
Public classPendingChildExecutionInfo
Decribes the current state of a pending; child workflow.
Public classPollerInfo
Describes the status of a poller (AKA worker) listening to a task list.
Public classQueryFailedException
Thrown when a Cadence workflow query failed.
Public classQueryMethodAttribute
Used to identify a workflow interface method as a query.
Public classRetryOptions
Describes a Cadence retry policy.
Public classRetryTaskException
Thrown when a workflow task could not be retried.
Public classServiceBusyException
Thrown when the Cadence cluster is too busy to perform an operation.
Public classSignalMethodAttribute
Used to identify a workflow interface methods as a signal.
Public classSignalRequest

EXPERIMENTAL: Used to relay a received synchronous signal's arguments to the workflow logic via a WorkflowQueueT allowing the workflow handle the signal by executing activities, child workflows, etc. This class also provides a way for the workflow to specify the signal reply.

This non-generic version of the class is intended for signals that return void. Use SignalRequestTResult for signals that return a result.

Note Note
This synchronous signals are considered experimental which means that this feature will probably have a limited lifespan. Cadence will introduce new update semantics at some point that will ultimately obsolete synchronous signals.
Public classSignalRequestTResult

EXPERIMENTAL: Used to relay a received synchronous signal's arguments to the workflow logic via a WorkflowQueueT allowing the workflow handle the signal by executing activities, child workflows, etc. This class also provides a way for the workflow to specify the signal reply.

This generic version of the class is intended for signals that return results. Use SignalRequest for signals that return void.

Note Note
This synchronous signals are considered experimental which means that this feature will probably have a limited lifespan. Cadence will introduce new update semantics at some point that will ultimately obsolete synchronous signals.
Public classStartToCloseTimeoutException
Thrown when a workflow or activity did not complete within the required time.
Public classStubCompilerException
Thrown when there's a problem compiling a workflow or activity stub.
Public classSyncSignalException
Thrown when a synchronous signal sent to a workflow fails.
Public classTaskListDescription
Describes the current status of a Cadence task list.
Public classTerminatedException
Thrown when a Cadence terminated error is encountered.
Public classUntypedChildWorkflowFutureStubTResult

Manages starting and signalling a child workflow instance based on its workflow type name and arguments. This is useful when you need to perform other operations in parallel with a child.

Use this version for workflows that return a result.

Public classUpdateDomainInfo
Holds the changes to be made to a Cadence domain's basic properties.
Public classUpdateDomainRequest
Holds the changes to be made to a Cadence domain.
Public classWaitForSignalReplyException

EXPERIMENTAL: Thrown by workflow synchronous signal methods when the signal has been marshalled to the workflow method via a WorkflowQueueT and the workflow method will handle the signal reply.

Note Note
Synchronous signals are an experimental feature that will likely be replaced in the coming months by a new Cadence feature.
Public classWorker
Manages a Cadence activity/workflow worker.
Public classWorkerArgs
Holds the opaque arguments passed to WorkflowBase and ActivityBase implementations by the CadenceClient when the workflow or activity is executed on a worker. This must be passed to the base WorkflowBase or ActivityBase class constructors.
Public classWorkerOptions
Specifies the options Cadence will use when assigning workflow and activity executions to a user worker service.
Public classWorkflow
Provides useful information and functionality for workflow implementations. This will be available via the Workflow property.
Public classWorkflowAttribute
Used to tag workflow implementations that inherit from WorkflowBase to customize the how the workflow is registered.
Public classWorkflowBase
Base class that must be inherited for all workflow implementations.
Public classWorkflowConfig
Describes a workflow's configuration.
Public classWorkflowDescription
Describes a workflow execution.
Public classWorkflowExecution
Describes the state of an executed workflow.
Public classWorkflowExecutionAlreadyStartedException
Thrown when attempting to cancel an operation that has already been cancelled.
Public classWorkflowFutureStubWorkflowInterface

Manages starting, signalling, or querying an external workflow instance based on its workflow type name and arguments. This class separates workflow execution and retrieving the result into separate operations.

Use this version for workflows that don't return a result.

Public classWorkflowInfo
Returns information about an executing workflow.
Public classWorkflowInterfaceAttribute
Used to tag workflow interfaces and optionally specify the task list identifying the workers hosting this workflow. CadenceClient for more information on how task lists work.
Public classWorkflowMethodAttribute
Used to identify a workflow interface method as a workflow entry point.
Public classWorkflowOptions
Specifies the options to use when starting a workflow.
Public classWorkflowParallelOperationException
Thrown when an operation is requested on an executing workflow while another operation is already pending. Workflows cannot have multiple operations running in parallel because this will likely break workflow determinism.
Public classWorkflowQueueT
Implements a workflow-safe first-in-first-out (FIFO) queue that can be used by workflow signal methods to communicate with the running workflow logic.
Public classWorkflowQueueClosedException
Indicates that a Cadence DequeueAsync(TimeSpan) operation failed because the queue has been closed.
Public classWorkflowRunningException
Thrown when a workflow cannot be started because another workflow with the same ID is already running.
Public classWorkflowStatus
Describes the current state of a workflow.
Public classWorkflowStub
Implements an untyped client side stub to a single external workflow instance. This can be used to invoke, signal, query, and cancel a workflow when the actual workflow interface isn't available.
Public classWorkflowTypeException
Thrown when ak workflow interface or implementation is not valid.
Public classWorkflowWorkerStartedException
Thrown when an attempt is made to register a workflow implementation after an workflow worker has been started on a client. You must register all implementations before starting a worker.
Interfaces
  InterfaceDescription
Public interfaceIActivity
All activity interfaces must derive from this interface.
Public interfaceIDataConverter
Used by Worker instances to manage serialization of method parameters and results for workflow and activity methods to/from byte arrays for persistence in the Cadence cluster database.
Public interfaceIWorkflow
All workflow interfaces must derive from this interface.
Delegates
  DelegateDescription
Public delegateCadenceClosedDelegate
Delegate called by a CadenceClient when the connection is closed explicitly or where there's a problem communicating with the cadence-proxy.
Enumerations
  EnumerationDescription
Public enumerationActivityStatus
Enumerates the state of an activity.
Public enumerationArchivalStatus
Controls archival.
Public enumerationDomainStatus
Indicates a Cadence domain status.
Public enumerationNonDeterministicPolicy
Enumerates how a decision task handler deals with mismatched history events (presumably arising from non-deterministic workflow definitions).
Public enumerationParentClosePolicy
Enumerates the possible child workflow behaviors when the parent workflow is closed.
Public enumerationTaskListKind
Enumerates the different kinds of task lists.
Public enumerationTaskListType
Used to distinguish between decision (AKA workflow) and activity task lists.
Public enumerationWorkflowExecutionCloseStatus
Enumerates the possible reasons why a workflow was closed.
Public enumerationWorkflowIdReusePolicy
Enumerates the workflow ID reuse policies.