Beep.Skia.Model
API reference for Beep.Skia.Model (67 public types)
Complete API surface of the Beep.Skia.Model assembly: 67 public types with their documented members. Follow the family guide for usage patterns.
Types in this assembly
CacheModeenumColumnDefinitionclassComponentPriorityenumComponentShapeenumComponentStateenumConnectionArgsclassConnectionDefinitionclassConnectionEventArgsclassConnectionPointclassConnectionPointTypeenumDataFlowDirectionenumDataQualityRuleclassDataTypeenumDerivedColumnDefinitionclassDrawingContextclassERDMultiplicityenumExecutionContextclassExecutionPriorityenumFlowAnimationStyleenumForeignKeyDefinitionclassGroupBoxBorderStyleenumIAutomationNodeinterfaceIConnectionLineinterfaceIConnectionPointinterfaceIDrawableComponentinterfaceIndexDefinitionclassInteractionContextclassITriggerinterfaceIWorkflowEngineinterfaceLabelPlacementenumLineArgsclassLineRoutingModeenumLineStatusenumLogicalOperatorenumLookupConfigurationclassMouseButtonenumNodeDefinitionclassNodeErrorEventArgsclassNodeExecutionclassNodeExecutionEventArgsclassNodeResultclassNodeStatusenumNodeTypeenumParameterInfoclassPointEventArgsclassRetryBackoffStrategyenumRetryPolicyclassRuleTypeenumScdConfigurationclassScdTypeenumSchemaDiffclassSchemaDiffUtilclassSkiaMenuItemclassSKRectEventArgsclassSplitConditionclassTimerTriggerModeenumTriggerDefinitionclassTriggerErrorEventArgsclassTriggerEventArgsclassTriggerTypeenumValidationResultclassWorkflowDefinitionclassWorkflowExecutionclassWorkflowExecutionEventArgsclassWorkflowResultclassWorkflowStatusenumWorkflowVariableclass
CacheMode (enum)
ColumnDefinition (class)
Describes a single column/attribute for ERD entities and ETL schemas.
| Member | Kind | Description |
|---|---|---|
Guid Id | Property | Gets or sets the id. |
string Name | Property | Gets or sets the name. |
string DataType | Property | Gets or sets the data type. |
bool IsPrimaryKey | Property | Gets or sets the is primary key. |
bool IsForeignKey | Property | Gets or sets the is foreign key. |
bool IsNullable | Property | Gets or sets the is nullable. |
string DefaultValue | Property | Gets or sets the default value. |
string Description | Property | Gets or sets the description. |
ComponentPriority (enum)
Defines the priority levels for component rendering and updates.
ComponentShape (enum)
Specifies the shape of a workflow component.
ComponentState (enum)
Represents the different states a component can be in during its lifecycle.
ConnectionArgs (class)
Provides event arguments for connection-related events involving a single connection point.
| Member | Kind | Description |
|---|---|---|
IConnectionPoint IConnectionPoint | Property | Gets the connection point involved in the event. |
ConnectionArgs(IConnectionPoint iConnectionPoint) | Method | Initializes a new instance of the ConnectionArgs class. The connection point involved in the event. |
ConnectionDefinition (class)
Represents a connection between two nodes in a workflow.
| Member | Kind | Description |
|---|---|---|
ConnectionDefinition(string id, string sourceNodeId, string targetNodeId) | Method | Initializes a new instance of the ConnectionDefinition class. The unique identifier for the connection. The ID of the source node. The ID of the target node. |
string Id | Property | Gets the unique identifier for the connection. |
string SourceNodeId | Property | Gets the ID of the source node. |
string TargetNodeId | Property | Gets the ID of the target node. |
string SourceOutput | Property | Gets or sets the name of the output from the source node. |
string TargetInput | Property | Gets or sets the name of the input to the target node. |
string Condition | Property | Gets or sets the condition that must be met for this connection to be followed. |
string Label | Property | Gets or sets the label to display on this connection. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about this connection. |
bool IsEnabled | Property | Gets or sets a value indicating whether this connection is enabled. |
ValidationResult Validate() | Method | Validates this connection definition for correctness. A validation result indicating any issues found. |
ConnectionDefinition Clone(string newId = null) | Method | Creates a copy of this connection definition. Optional new ID for the copied connection. A new ConnectionDefinition instance that is a copy of this one. |
ConnectionEventArgs (class)
Provides event arguments for connection events between connection points.
| Member | Kind | Description |
|---|---|---|
IConnectionPoint SourceIConnectionPoint | Property | Gets the source connection point of the connection. |
IConnectionPoint TargetIConnectionPoint | Property | Gets the target connection point of the connection. |
ConnectionEventArgs(IConnectionPoint sourceIConnectionPoint, IConnectionPoint targetIConnectionPoint) | Method | Initializes a new instance of the ConnectionEventArgs class. The source connection point. The target connection point. |
ConnectionPoint (class)
Represents a simple connection point for automation nodes.
| Member | Kind | Description |
|---|---|---|
ConnectionPointType Type | Property | Gets or sets the type of this connection point (Input or Output). |
string Name | Property | Gets or sets the name of this connection point. |
string DataType | Property | Gets or sets the data type expected/provided by this connection point. |
bool IsRequired | Property | Gets or sets whether this connection point is required. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata for this connection point. |
ConnectionPointType (enum)
Specifies the type of a connection point (input or output).
DataFlowDirection (enum)
Direction of animated data flow.
DataQualityRule (class)
Represents a data quality validation rule for ETL processing.
| Member | Kind | Description |
|---|---|---|
string Name | Property | Gets or sets the name. |
string ColumnName | Property | Gets or sets the column name. |
RuleType Type | Property | Gets or sets the type. |
string Expression | Property | Gets or sets the expression. |
string ErrorMessage | Property | Gets or sets the error message. |
bool StopOnError | Property | Gets or sets the stop on error. |
DataType (enum)
Specifies the data type for workflow variables and parameters.
DerivedColumnDefinition (class)
Represents a derived column definition for ETL transformations.
| Member | Kind | Description |
|---|---|---|
string Name | Property | Gets or sets the name. |
string Expression | Property | Gets or sets the expression. |
string DataType | Property | Gets or sets the data type. |
string Description | Property | Gets or sets the description. |
DrawingContext (class)
Provides context information for drawing operations.
| Member | Kind | Description |
|---|---|---|
float Zoom | Property | Gets or sets the current zoom level. |
SKPoint PanOffset | Property | Gets or sets the current pan offset. |
object Theme | Property | Gets or sets the current theme or style information. |
SKRect Bounds | Property | Gets or sets the visible bounds for clipping and optimization. |
SKCanvas Canvas | Property | Gets or sets the canvas being drawn on. |
SKPoint MousePosition | Property | Gets or sets the current mouse position. |
object Parent | Property | Gets or sets the parent component. |
Dictionary<string, object> Data | Property | Gets or sets additional context data. |
ERDMultiplicity (enum)
ERD multiplicity markers to draw at each end of a connection. Unspecified means no ERD-specific markers are rendered at that end.
ExecutionContext (class)
Provides execution context for automation nodes including input data, workflow state, and execution environment.
| Member | Kind | Description |
|---|---|---|
ExecutionContext(string workflowId, string executionId) | Method | Initializes a new instance of the ExecutionContext class. The ID of the workflow being executed. The unique ID for this execution instance. |
string WorkflowId | Property | Gets the ID of the workflow being executed. |
string ExecutionId | Property | Gets the unique ID for this execution instance. |
DateTime StartTime | Property | Gets the time when this execution context was created. |
Dictionary<string, object> Data | Property | Gets or sets the input data for the current node execution. |
Dictionary<string, object> Variables | Property | Gets or sets the workflow variables accessible to all nodes. |
Dictionary<string, object> Metadata | Property | Gets or sets metadata about the execution environment. |
List<object> PreviousResults | Property | Gets or sets the results from previous nodes in the workflow execution. |
string UserId | Property | Gets or sets the user ID who initiated the workflow execution. |
ExecutionPriority Priority | Property | Gets or sets the execution priority. |
bool IsDebugMode | Property | Gets or sets a value indicating whether the execution is in debug mode. |
TimeSpan? Timeout | Property | Gets or sets the maximum execution timeout. |
ExecutionContext CreateChild(Dictionary<string, object> newData = null) | Method | Creates a copy of the current execution context with optionally modified data. New data to replace the current data, or null to keep existing data. A new ExecutionContext instance with the specified modifications. |
T GetData<T>(string key, T defaultValue = default) | Method | Gets a strongly typed value from the data dictionary. The type to cast the value to. The key to look up. The default value to return if the key is not found. The value cast to the specified type, or the default value. |
void SetData(string key, object value) | Method | Sets a value in the data dictionary. The key to set. The value to set. |
T GetVariable<T>(string key, T defaultValue = default) | Method | Gets a strongly typed variable value. The type to cast the value to. The key to look up. The default value to return if the key is not found. The variable value cast to the specified type, or the default value. |
void SetVariable(string key, object value) | Method | Sets a workflow variable value. The key to set. The value to set. |
ExecutionPriority (enum)
Specifies the execution priority of a workflow or node.
FlowAnimationStyle (enum)
Animation style for data flow visualization (LinkedIn infographic style).
ForeignKeyDefinition (class)
Describes a foreign key constraint from one ERD entity to another.
| Member | Kind | Description |
|---|---|---|
string Name | Property | Gets or sets the name. |
List<string> Columns | Property | Local column names forming the FK (order matters for composites). |
string ReferencedEntity | Property | Referenced entity/table name. Use Schema.Target for fully-qualified if needed. |
List<string> ReferencedColumns | Property | Referenced column names (order must match Columns). |
string OnDelete | Property | On delete behavior (e.g., NO ACTION, CASCADE, SET NULL). Free-form for now. |
string OnUpdate | Property | On update behavior (e.g., NO ACTION, CASCADE, SET NULL). Free-form for now. |
GroupBoxBorderStyle (enum)
Specifies the border style of a group box.
IAutomationNode (interface)
Represents a node in a workflow automation system that can execute actions, validate inputs, and handle state. This interface extends the visual component system to support executable workflow logic.
IConnectionLine (interface)
Represents a connection line between two workflow components in a Skia-based diagram. Connection lines can have arrows, labels, and support animation.
IConnectionPoint (interface)
Represents a connection point on a workflow component that can be used to create connections between components. Connection points can be either input or output points and support different shapes.
IDrawableComponent (interface)
Generic interface for drawable components that can be rendered on a Skia canvas. This interface provides the basic contract for any visual component in the Beep.Skia platform.
IndexDefinition (class)
Describes a database index for an ERD entity/table.
| Member | Kind | Description |
|---|---|---|
string Name | Property | Gets or sets the name. |
bool IsUnique | Property | Gets or sets the is unique. |
List<string> Columns | Property | Ordered list of column names participating in the index. |
string Where | Property | Optional free-form filter/predicate for filtered indexes (dialect-specific). |
InteractionContext (class)
Provides context information for user interaction operations.
| Member | Kind | Description |
|---|---|---|
SKPoint MousePosition | Property | Gets or sets the current mouse position. |
int MouseButton | Property | Gets or sets the mouse button that was pressed. |
int Modifiers | Property | Gets or sets modifier keys that were pressed during the interaction. |
bool IsControlPressed | Property | Gets a value indicating whether the Control key was pressed during the interaction. |
bool IsShiftPressed | Property | Gets a value indicating whether the Shift key was pressed during the interaction. |
bool IsAltPressed | Property | Gets a value indicating whether the Alt key was pressed during the interaction. |
SKRect Bounds | Property | Gets the visible bounds for interaction checking. |
Dictionary<string, object> Data | Property | Gets or sets additional context data. |
ITrigger (interface)
Represents a trigger that can initiate workflow execution based on events or conditions. Triggers monitor external systems and activate workflows when specific conditions are met.
IWorkflowEngine (interface)
Represents a workflow engine that can execute automation workflows with nodes and connections. The engine manages workflow lifecycle, execution scheduling, and state management.
LabelPlacement (enum)
Where to place a label relative to the line.
LineArgs (class)
Provides event arguments for line-related events involving connection points and lines.
| Member | Kind | Description |
|---|---|---|
IConnectionPoint SourceIConnectionPoint | Property | Gets the source connection point of the line. |
IConnectionPoint TargetIConnectionPoint | Property | Gets the target connection point of the line. |
IConnectionLine ConnectionLine | Property | Gets the connection line associated with the event. |
LineArgs(IConnectionPoint sourceIConnectionPoint, IConnectionPoint targetIConnectionPoint, IConnectionLine connectionLine) | Method | Initializes a new instance of the LineArgs class. The source connection point. The target connection point. The connection line. |
LineRoutingMode (enum)
Routing modes for connection lines.
LineStatus (enum)
Status indicator shown on the line (e.g., spinner at midpoint).
LogicalOperator (enum)
Logical operator for combining conditions in ConditionalNode.
LookupConfiguration (class)
Represents a lookup configuration for ETL enrichment.
| Member | Kind | Description |
|---|---|---|
string ReferenceSource | Property | Gets or sets the reference source. |
List<string> MatchColumns | Property | Gets or sets the match columns. |
List<string> ReturnColumns | Property | Gets or sets the return columns. |
CacheMode CacheMode | Property | Gets or sets the cache mode. |
bool FailOnNoMatch | Property | Gets or sets the fail on no match. |
MouseButton (enum)
Specifies mouse button identifiers.
NodeDefinition (class)
Represents the definition of a single node within a workflow.
| Member | Kind | Description |
|---|---|---|
NodeDefinition(string id, string name, NodeType nodeType, string componentType) | Method | Initializes a new instance of the NodeDefinition class. The unique identifier for the node. The display name of the node. The type of the node. The component type for creating the automation node. |
string Id | Property | Gets the unique identifier for the node. |
string Name | Property | Gets or sets the display name of the node. |
string Description | Property | Gets or sets the description of what this node does. |
NodeType NodeType | Property | Gets the type of this node. |
string ComponentType | Property | Gets the component type used to create the automation node instance. |
Dictionary<string, object> Configuration | Property | Gets or sets the configuration parameters for this node. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about this node. |
Dictionary<string, object> InputSchema | Property | Gets or sets the schema defining the input parameters this node expects. |
Dictionary<string, object> OutputSchema | Property | Gets or sets the schema defining the output parameters this node produces. |
SKPoint Position | Property | Gets or sets the position of this node on the workflow canvas. |
SKSize Size | Property | Gets or sets the size of this node on the workflow canvas. |
bool IsEnabled | Property | Gets or sets a value indicating whether this node is enabled for execution. |
TimeSpan? ExecutionTimeout | Property | Gets or sets the execution timeout for this specific node. |
RetryPolicy RetryPolicy | Property | Gets or sets the retry policy for this node if execution fails. |
ValidationResult Validate() | Method | Validates this node definition for correctness. A validation result indicating any issues found. |
NodeDefinition Clone(string newId = null) | Method | Creates a copy of this node definition. Optional new ID for the copied node. A new NodeDefinition instance that is a copy of this one. |
NodeErrorEventArgs (class)
Provides data for automation node error events.
| Member | Kind | Description |
|---|---|---|
NodeErrorEventArgs(string nodeId, Exception exception, string errorMessage = null) | Method | Initializes a new instance of the NodeErrorEventArgs class. The ID of the node where the error occurred. The exception that caused the error. A descriptive error message. |
string NodeId | Property | Gets the ID of the automation node where the error occurred. |
Exception Exception | Property | Gets the exception that caused the error. |
string ErrorMessage | Property | Gets the descriptive error message. |
DateTime Timestamp | Property | Gets the timestamp when the error occurred. |
bool Handled | Property | Gets or sets a value indicating whether the error was handled. |
Dictionary<string, object> AdditionalData | Property | Gets or sets additional error context data. |
NodeExecution (class)
Represents the execution of a single node within a workflow.
| Member | Kind | Description |
|---|---|---|
NodeExecution(string nodeId, string executionId) | Method | Initializes a new instance of the NodeExecution class. The ID of the node being executed. The workflow execution ID. |
string NodeId | Property | Gets the ID of the node being executed. |
string ExecutionId | Property | Gets the workflow execution ID. |
NodeStatus Status | Property | Gets or sets the current status of the node execution. |
DateTime CreatedTime | Property | Gets the time when the node execution was created. |
DateTime? StartTime | Property | Gets or sets the time when the node execution started. |
DateTime? EndTime | Property | Gets or sets the time when the node execution completed. |
TimeSpan? ExecutionTime | Property | Gets the execution time for this node. |
NodeResult Result | Property | Gets or sets the result of the node execution. |
string ErrorMessage | Property | Gets or sets error information if the node execution failed. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about the node execution. |
NodeExecutionEventArgs (class)
Provides data for automation node execution events.
| Member | Kind | Description |
|---|---|---|
NodeExecutionEventArgs(string nodeId, NodeStatus previousStatus, NodeStatus currentStatus) | Method | Initializes a new instance of the NodeExecutionEventArgs class. The ID of the node. The previous status of the node. The current status of the node. |
string NodeId | Property | Gets the ID of the automation node. |
NodeStatus PreviousStatus | Property | Gets the previous status of the node. |
NodeStatus CurrentStatus | Property | Gets the current status of the node. |
DateTime Timestamp | Property | Gets the timestamp when the status change occurred. |
Dictionary<string, object> AdditionalData | Property | Gets or sets additional execution context data. |
NodeResult (class)
Represents the result of executing an automation node.
| Member | Kind | Description |
|---|---|---|
NodeResult(bool success, Dictionary<string, object> outputData = null, string errorMessage = null) | Method | Initializes a new instance of the NodeResult class. Whether the execution was successful. The output data produced by the node. Error message if execution failed. |
bool Success | Property | Gets a value indicating whether the node execution was successful. |
bool IsSuccess | Property | Gets a value indicating whether the node execution was successful (alias for Success). |
Dictionary<string, object> OutputData | Property | Gets the output data produced by the node execution. |
string ErrorMessage | Property | Gets the error message if the execution failed. |
TimeSpan ExecutionTime | Property | Gets or sets the time taken to execute the node. |
DateTime Timestamp | Property | Gets the timestamp when the execution completed. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about the execution. |
Exception Exception | Property | Gets or sets the exception that caused the failure, if any. |
static NodeResult CreateSuccess(Dictionary<string, object> outputData = null) | Method | Creates a successful node result. The output data produced by the node. A NodeResult indicating successful execution. |
static NodeResult CreateFailure(string errorMessage, Exception exception = null) | Method | Creates a failed node result. The error message describing the failure. The exception that caused the failure. A NodeResult indicating failed execution. |
T GetOutput<T>(string key, T defaultValue = default) | Method | Gets a strongly typed output value. The type to cast the value to. The key to look up. The default value to return if the key is not found. The output value cast to the specified type, or the default value. |
void SetOutput(string key, object value) | Method | Sets an output value. The key to set. The value to set. |
NodeStatus (enum)
Represents the execution status of an automation node.
NodeType (enum)
Represents the type of automation node in a workflow.
ParameterInfo (class)
Describes a configurable parameter for a component/node, including type and values.
| Member | Kind | Description |
|---|---|---|
string ParameterName | Property | Logical parameter name (unique within the owning component's Parameters dictionary key). |
Type ParameterType | Property | CLR type of the parameter (e.g., typeof(string), typeof(int), typeof(bool), enum types, etc.). If null, the editor will infer type based on the current/default value runtime type. |
object DefaultParameterValue | Property | Default value used when no current value has been set. |
object ParameterCurrentValue | Property | The current value (user-edited) for this parameter. |
string Description | Property | Optional description/help for UI. |
string[] Choices | Property | Optional list of allowed string choices for this parameter. When provided, the editor will render a dropdown even if ParameterType is string. |
PointEventArgs (class)
Provides event arguments for point-related events, such as mouse interactions.
| Member | Kind | Description |
|---|---|---|
float X | Property | Gets or sets the X coordinate of the point. |
float Y | Property | Gets or sets the Y coordinate of the point. |
bool IsRightButton | Property | Gets or sets a value indicating whether the right mouse button was used. |
RetryBackoffStrategy (enum)
Specifies the backoff strategy for retry delays.
RetryPolicy (class)
Represents a retry policy for node execution failures.
| Member | Kind | Description |
|---|---|---|
RetryPolicy(int maxRetries, TimeSpan retryDelay) | Method | Initializes a new instance of the RetryPolicy class. The maximum number of retry attempts. The delay between retry attempts. |
int MaxRetries | Property | Gets or sets the maximum number of retry attempts. |
TimeSpan RetryDelay | Property | Gets or sets the delay between retry attempts. |
RetryBackoffStrategy BackoffStrategy | Property | Gets or sets the backoff strategy for increasing delay between retries. |
TimeSpan? MaxRetryDelay | Property | Gets or sets the maximum delay between retries when using backoff. |
RetryPolicy Clone() | Method | Creates a copy of this retry policy. A new RetryPolicy instance that is a copy of this one. |
static RetryPolicy None() | Method | Creates a no-retry policy. A RetryPolicy that does not retry on failure. |
static RetryPolicy Simple(int maxRetries, int delaySeconds) | Method | Creates a simple retry policy with fixed delay. The maximum number of retries. The delay in seconds between retries. A RetryPolicy with the specified parameters. |
static RetryPolicy ExponentialBackoff(int maxRetries, int initialDelaySeconds, int maxDelaySeconds) | Method | Creates an exponential backoff retry policy. The maximum number of retries. The initial delay in seconds. The maximum delay in seconds. A RetryPolicy with exponential backoff. |
RuleType (enum)
ScdConfiguration (class)
Represents SCD (Slowly Changing Dimension) configuration.
| Member | Kind | Description |
|---|---|---|
ScdType Type | Property | Gets or sets the type. |
List<string> BusinessKeys | Property | Gets or sets the business keys. |
List<string> ChangeTrackingColumns | Property | Gets or sets the change tracking columns. |
string EffectiveFromColumn | Property | Gets or sets the effective from column. |
string EffectiveToColumn | Property | Gets or sets the effective to column. |
string CurrentFlagColumn | Property | Gets or sets the current flag column. |
string VersionColumn | Property | Gets or sets the version column. |
ScdType (enum)
SchemaDiff (class)
Structured diff between two schemas (expected vs actual) with specific categories.
| Member | Kind | Description |
|---|---|---|
List<string> MissingColumns | Property | Gets or sets the missing columns. |
List<(string Name, string ExpectedType, string ActualType)> TypeDifferences | Method | |
List<(string Name, bool ExpectedNullable, bool ActualNullable)> NullabilityDifferences | Method | |
List<(string Name, string ExpectedDefault, string ActualDefault)> DefaultDifferences | Method | |
bool HasDifferences() | Method | Gets or sets the has differences. |
SchemaDiffUtil (class)
Gets or sets the schema diff util.
| Member | Kind | Description |
|---|---|---|
static SchemaDiff Compute(IEnumerable<ColumnDefinition> expected, IEnumerable<ColumnDefinition> actual) | Method | Gets or sets the compute. |
SKRectEventArgs (class)
Provides event arguments for bounds change events.
| Member | Kind | Description |
|---|---|---|
SKRect Bounds | Property | Gets the new bounds of the component. |
SKRectEventArgs(SKRect bounds) | Method | Initializes a new instance of the SKRectEventArgs class. The new bounds of the component. |
SplitCondition (class)
Represents a conditional split route in ETL processing.
| Member | Kind | Description |
|---|---|---|
string Name | Property | Gets or sets the name. |
string Expression | Property | Gets or sets the expression. |
int Order | Property | Gets or sets the order. |
string Description | Property | Gets or sets the description. |
TimerTriggerMode (enum)
Timer trigger mode for TimerTriggerNode.
TriggerDefinition (class)
Represents a trigger definition that can start a workflow.
| Member | Kind | Description |
|---|---|---|
TriggerDefinition(string id, string name, TriggerType triggerType) | Method | Initializes a new instance of the TriggerDefinition class. The unique identifier for the trigger. The display name of the trigger. The type of the trigger. |
string Id | Property | Gets the unique identifier for the trigger. |
string Name | Property | Gets or sets the display name of the trigger. |
string Description | Property | Gets or sets the description of what this trigger monitors. |
TriggerType TriggerType | Property | Gets the type of this trigger. |
Dictionary<string, object> Configuration | Property | Gets or sets the configuration parameters for this trigger. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about this trigger. |
bool IsEnabled | Property | Gets or sets a value indicating whether this trigger is enabled. |
TriggerDefinition Clone(string newId = null) | Method | Creates a copy of this trigger definition. Optional new ID for the copied trigger. A new TriggerDefinition instance that is a copy of this one. |
TriggerErrorEventArgs (class)
Provides data for trigger error events.
| Member | Kind | Description |
|---|---|---|
TriggerErrorEventArgs(string triggerId, Exception exception, string errorMessage = null) | Method | Initializes a new instance of the TriggerErrorEventArgs class. The ID of the trigger where the error occurred. The exception that caused the error. A descriptive error message. |
string TriggerId | Property | Gets the ID of the trigger where the error occurred. |
Exception Exception | Property | Gets the exception that caused the error. |
string ErrorMessage | Property | Gets the descriptive error message. |
DateTime Timestamp | Property | Gets the timestamp when the error occurred. |
bool Handled | Property | Gets or sets a value indicating whether the error was handled. |
TriggerEventArgs (class)
Provides data for trigger activation events.
| Member | Kind | Description |
|---|---|---|
TriggerEventArgs(string triggerId, TriggerType triggerType, Dictionary<string, object> triggerData = null) | Method | Initializes a new instance of the TriggerEventArgs class. The ID of the trigger. The type of the trigger. Data associated with the trigger activation. |
string TriggerId | Property | Gets the ID of the trigger. |
TriggerType TriggerType | Property | Gets the type of the trigger. |
Dictionary<string, object> TriggerData | Property | Gets the data associated with the trigger activation. |
DateTime Timestamp | Property | Gets the timestamp when the trigger was activated. |
bool Cancel | Property | Gets or sets a value indicating whether the trigger activation should be cancelled. |
TriggerType (enum)
Specifies the type of trigger that can start a workflow.
ValidationResult (class)
Represents the result of validating an automation node's configuration and input data.
| Member | Kind | Description |
|---|---|---|
ValidationResult(bool isValid, IEnumerable<string> errors = null) | Method | Initializes a new instance of the ValidationResult class. Whether the validation passed. Collection of validation errors, if any. |
bool IsValid | Property | Gets a value indicating whether the validation passed. |
IList<string> Errors | Property | Gets the collection of validation errors. |
IList<string> Warnings | Property | Gets or sets additional validation warnings that don't prevent execution. |
static ValidationResult Success() | Method | Creates a successful validation result. A ValidationResult indicating successful validation. |
static ValidationResult Failure(params string[] errors) | Method | Creates a failed validation result with the specified errors. The validation errors. A ValidationResult indicating failed validation. |
static ValidationResult Failure(IEnumerable<string> errors) | Method | Creates a failed validation result with the specified errors. The validation errors. A ValidationResult indicating failed validation. |
WorkflowDefinition (class)
Represents the definition of a workflow including its nodes, connections, and metadata. This class provides the blueprint for executing automation workflows.
| Member | Kind | Description |
|---|---|---|
WorkflowDefinition(string id, string name) | Method | Initializes a new instance of the WorkflowDefinition class. The unique identifier for the workflow. The display name of the workflow. |
string Id | Property | Gets the unique identifier for the workflow. |
string Name | Property | Gets or sets the display name of the workflow. |
string Description | Property | Gets or sets the description of what this workflow does. |
string Version | Property | Gets or sets the version of this workflow definition. |
DateTime CreatedDate | Property | Gets the date when this workflow was created. |
DateTime? LastModifiedDate | Property | Gets or sets the date when this workflow was last modified. |
string Author | Property | Gets or sets the author of this workflow. |
List<string> Tags | Property | Gets or sets the category or tags for organizing workflows. |
bool IsEnabled | Property | Gets or sets a value indicating whether this workflow is enabled for execution. |
IList<NodeDefinition> Nodes | Property | Gets the collection of nodes in this workflow. |
IList<ConnectionDefinition> Connections | Property | Gets the collection of connections between nodes in this workflow. |
IList<WorkflowVariable> Variables | Property | Gets the collection of workflow variables. |
IList<TriggerDefinition> Triggers | Property | Gets the collection of triggers that can start this workflow. |
Dictionary<string, object> Configuration | Property | Gets or sets the global configuration for this workflow. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about this workflow. |
TimeSpan? MaxExecutionTime | Property | Gets or sets the maximum execution timeout for this workflow. |
ExecutionPriority Priority | Property | Gets or sets the execution priority for this workflow. |
void AddNode(NodeDefinition node) | Method | Adds a node to the workflow. The node definition to add. |
bool RemoveNode(string nodeId) | Method | Removes a node from the workflow and all its connections. The ID of the node to remove. True if the node was removed, false if it was not found. |
void AddConnection(ConnectionDefinition connection) | Method | Adds a connection between two nodes. The connection definition to add. |
bool RemoveConnection(string connectionId) | Method | Removes a connection from the workflow. The ID of the connection to remove. True if the connection was removed, false if it was not found. |
IEnumerable<NodeDefinition> GetStartingNodes() | Method | Gets all nodes that should execute first (nodes with no incoming connections or trigger nodes). Collection of starting node definitions. |
IEnumerable<NodeDefinition> GetSourceNodes(string nodeId) | Method | Gets all nodes that connect to the specified node as input. The ID of the target node. Collection of source node definitions. |
IEnumerable<NodeDefinition> GetTargetNodes(string nodeId) | Method | Gets all nodes that connect from the specified node as output. The ID of the source node. Collection of target node definitions. |
ValidationResult Validate() | Method | Validates the workflow definition for correctness and completeness. A validation result indicating any issues found. |
WorkflowDefinition Clone(string newId = null, string newName = null) | Method | Creates a deep copy of this workflow definition. Optional new ID for the copied workflow. Optional new name for the copied workflow. A new WorkflowDefinition instance that is a copy of this one. |
WorkflowExecution (class)
Represents an active workflow execution with its current state and progress.
| Member | Kind | Description |
|---|---|---|
WorkflowExecution(string executionId, string workflowId, ExecutionContext context) | Method | Initializes a new instance of the WorkflowExecution class. The unique execution ID. The ID of the workflow being executed. The execution context. |
string ExecutionId | Property | Gets the unique execution ID. |
string WorkflowId | Property | Gets the ID of the workflow being executed. |
ExecutionContext Context | Property | Gets the execution context. |
WorkflowStatus Status | Property | Gets or sets the current status of the execution. |
DateTime CreatedTime | Property | Gets the time when the execution was created. |
DateTime? StartTime | Property | Gets or sets the time when the execution started. |
DateTime? EndTime | Property | Gets or sets the time when the execution completed. |
TimeSpan? ExecutionTime | Property | Gets the total execution time. |
string CurrentNodeId | Property | Gets or sets the current node being executed. |
IList<NodeExecution> NodeExecutions | Property | Gets the collection of node executions within this workflow execution. |
WorkflowResult Result | Property | Gets or sets the final result of the workflow execution. |
string ErrorMessage | Property | Gets or sets error information if the execution failed. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about the execution. |
WorkflowExecutionEventArgs (class)
Provides data for workflow execution events.
| Member | Kind | Description |
|---|---|---|
WorkflowExecutionEventArgs(string workflowId, WorkflowStatus previousStatus, WorkflowStatus currentStatus) | Method | Initializes a new instance of the WorkflowExecutionEventArgs class. The ID of the workflow. The previous status of the workflow. The current status of the workflow. |
string WorkflowId | Property | Gets the ID of the workflow. |
WorkflowStatus PreviousStatus | Property | Gets the previous status of the workflow. |
WorkflowStatus CurrentStatus | Property | Gets the current status of the workflow. |
DateTime Timestamp | Property | Gets the timestamp when the status change occurred. |
WorkflowResult Result | Property | Gets or sets the execution result if the workflow has completed. |
Dictionary<string, object> AdditionalData | Property | Gets or sets additional execution context data. |
WorkflowResult (class)
Represents the result of executing a complete workflow.
| Member | Kind | Description |
|---|---|---|
WorkflowResult(string workflowId, string executionId, WorkflowStatus status) | Method | Initializes a new instance of the WorkflowResult class. The ID of the executed workflow. The unique execution ID. The final status of the workflow execution. |
string WorkflowId | Property | Gets the ID of the executed workflow. |
string ExecutionId | Property | Gets the unique execution ID. |
WorkflowStatus Status | Property | Gets the final status of the workflow execution. |
DateTime StartTime | Property | Gets the time when the workflow execution started. |
DateTime? EndTime | Property | Gets or sets the time when the workflow execution completed. |
TimeSpan? ExecutionTime | Property | Gets the total execution time of the workflow. |
IList<NodeResult> NodeResults | Property | Gets the results of individual node executions. |
Dictionary<string, object> OutputData | Property | Gets the final output data from the workflow execution. |
IList<string> Errors | Property | Gets the collection of errors that occurred during execution. |
Dictionary<string, object> Metadata | Property | Gets or sets additional metadata about the workflow execution. |
void SetStatus(WorkflowStatus newStatus) | Method | Updates the workflow status and sets the end time if the workflow is completing. The new workflow status. |
void AddNodeResult(NodeResult nodeResult) | Method | Adds a node execution result to the workflow result. The node execution result to add. |
void AddError(string error) | Method | Adds an error to the workflow result. The error message to add. |
T GetOutput<T>(string key, T defaultValue = default) | Method | Gets a strongly typed output value. The type to cast the value to. The key to look up. The default value to return if the key is not found. The output value cast to the specified type, or the default value. |
void SetOutput(string key, object value) | Method | Sets an output value. The key to set. The value to set. |
WorkflowStatus (enum)
Specifies the execution status of a workflow.
WorkflowVariable (class)
Represents a workflow variable that can be used across nodes.
| Member | Kind | Description |
|---|---|---|
WorkflowVariable(string name, DataType dataType) | Method | Initializes a new instance of the WorkflowVariable class. The name of the variable. The data type of the variable. |
string Name | Property | Gets the name of the variable. |
DataType DataType | Property | Gets or sets the data type of the variable. |
string Description | Property | Gets or sets the description of what this variable is used for. |
object DefaultValue | Property | Gets or sets the default value for this variable. |
bool IsRequired | Property | Gets or sets a value indicating whether this variable is required. |
bool IsReadOnly | Property | Gets or sets a value indicating whether this variable is read-only. |
WorkflowVariable Clone() | Method | Creates a copy of this workflow variable. A new WorkflowVariable instance that is a copy of this one. |