TransformNodeTState, TInput Class

Transform node has at least one input and zero outputs. It calls [!:Process(TInput)] method for each received message. The node exits when all of its predecessors have exited and closes all output channels.

Definition

Namespace: Quine.Graph
Assembly: Quine.Graph (in Quine.Graph.dll) Version: 1.0.0+0ea0706914ee4edf2b0ed66bec3ab4d062a43b68
C#
public abstract class TransformNode<TState, TInput> : NodeShell<TState>
where TState : TransformNodeState<TInput>
where TInput : GraphMessage
Inheritance
Object    GraphSchemaHook    GraphSchemaHookNodeStateBase    NodeShell    NodeShellTState    TransformNodeTState, TInput
Derived

Type Parameters

TState
TInput

Constructors

TransformNodeTState, TInputInitializes a new instance of the TransformNodeTState, TInput class

Properties

CancellationToken Used to signal that the graph is being canceled; shared by all nodes.
(Inherited from NodeShell)
ConcurrencyLimit Determines how many instances of this node type can run concurrently. Use int.MaxValue for unbounded number of instances.
(Inherited from NodeShell)
Id
(Inherited from GraphSchemaHook)
ItemProcessingEventData Information about the item currently being processed.
(Inherited from NodeShell)
Owner Parent/owner of this node, or null.
(Inherited from GraphSchemaHook)
PathId Provides IDs of all job nodes from the root (1st element) to this. The byte array is a sequence of integer ids with variable-length encoding (7-bit).
(Inherited from GraphSchemaHook)
State
(Inherited from NodeShellT)

Methods

CreateItemProcessingEventData Overriding this method allows to create derived instances of ItemProcessingEventData for reporting of extended progress events.
(Inherited from NodeShell)
LifecycleAsync This method defines the complete node lifecycle. Overriding this method allows the node to perform actions before MessageLoopAsync has been started and after it has exited. Notes to implementers: The derived implementation MUST call the base implementation. Most of the protected methods cannot be called before or after this method has executed.
(Inherited from NodeShell)
MessageLoopAsync Repeatedly dequeues a message from Input0 and invokes ProcessSingleMessageAsync(TInput) on it.
(Overrides NodeShellMessageLoopAsync)
ProcessAsync Must be overridden in derived classes to process the message. Processing errors are signaled by exceptions.
ProcessSingleMessageAsync Wraps ProcessAsync(TInput) with raising begin/end events and exception handling.
QueryAsync Sends interactive query to the controlling front-end.
(Inherited from NodeShell)
RaiseProcessingBeginEvent Sets current message to m and singals start of processing. If overridden, the base implementation MUST be called.
(Inherited from NodeShell)
RaiseProcessingEndEvent Signals end of processing for the message set by RaiseProcessingBeginEvent(GraphMessage) and sets the current message to null. If overridden, the base implementation MUST be called.
(Inherited from NodeShell)
RaiseProgressEvent Raises progress event for the message set by RaiseProcessingBeginEvent(GraphMessage). At most one of the arguments can be set to a non-negative value. If overridden, the base implementation MUST be called.
(Inherited from NodeShell)
RaiseTraceEvent Raises a trace event. The event is always published to the shell, and then appended to either the item's trace (if ItemProcessingEventData is not null) or to the node's trace if the lifecycle allows it.
(Inherited from NodeShell)

Fields

_LifetimeScope
(Inherited from NodeShell)
_TraceSource
(Inherited from NodeShell)
Input0 

See Also