Click or drag to resize

Mavidian.DataConveyer.Orchestrators Namespace

This namespace contains elements that define characteristics of the process to convey data from intake to output.
Classes
  ClassDescription
Public classErrorEventArgs
Arguments for ErrorOccurred event
Public classOrchestratorConfig
Configuration settings to be used by OrchestratorCreator when constructing an orchestrator instance, i.e an object that implements the IOrchestrator interface.
Public classOrchestratorCreator
A factory class to create orchestrator instances, i.e. objects that implement the IOrchestrator interface.
Public classPhaseEventArgs
Arguments for PhaseStarting and PhaseFinished events
Public classPhaseStatus
Immutable type that describes the current state of a given phase of the Data Conveyer process. Instances are returned by the GetProcessingStatus method (of record and cluster).
Public classProcessResult
Result from a task returned by the orchestrator execution.
Public classProgressEventArgs
Arguments for ProgressChanged event
Interfaces
  InterfaceDescription
Public interfaceIGlobalCache

Interface that defines a GlobalCache, a thread-safe repository of key value pairs to contain global data and signals to synchronize multi-threaded processing. GlobalCache elements are available throughout all phases of Data Conveyer processing. Element keys are of type string, values can be one of: int, DataTime, decimal, string or object.

GlobalCache elements must be defined using GlobalCacheElements configuration setting. During the process execution, element values can be updated, but no elements can be added/removed.

Signals, unlike elements, do not need to be declared; instead they are simply referred to in RaiseSignal(String), AwaitSignal(String)and AwaitSignalAsync(String) methods.

Caution note Caution
GlobalCache is exposed to concurrent access by multiple threads and therefore updates to its elements (such as TryReplace method) must be performed in a thread-safe manner. Data Conveyer makes no guarantees regarding a particular processing order. As a consequence, user code may need to address possible race conditions, for example by using AwaitCondition(FuncIGlobalCache, Boolean) method.
Public interfaceIOrchestrator
Interface defining members of the pipeline orchestrator.
Enumerations
  EnumerationDescription
Public enumerationCompletionStatus
Possible reasons for completion of process execution.