Skip to main content

PipelineRegistration

Namespace: Meshmakers.Octo.Sdk.Common.Services

Represents pipeline registration

public record PipelineRegistration : IEquatable<PipelineRegistration>

Inheritance Object → PipelineRegistration
Implements IEquatable<PipelineRegistration>

Properties​

TenantId​

Tenant id

public string TenantId { get; set; }

Property Value​

String

DataFlowRtId​

Data flow runtime id

public OctoObjectId DataFlowRtId { get; set; }

Property Value​

OctoObjectId

PipelineRtEntityId​

Pipeline id

public RtEntityId PipelineRtEntityId { get; set; }

Property Value​

RtEntityId

Dictionary​

Dictionary shared between execution runs

public Dictionary<string, object> Dictionary { get; set; }

Property Value​

Dictionary<String, Object>

IsDebuggingEnabled​

Returns true if the pipeline is running in debug mode

public bool IsDebuggingEnabled { get; }

Property Value​

Boolean

NodeDefinitionRoot​

Returns the configuration root

public NodeDefinitionRoot NodeDefinitionRoot { get; }

Property Value​

NodeDefinitionRoot

GlobalConfiguration​

Returns a list of global configurations associated to the pipeline

public IGlobalConfiguration GlobalConfiguration { get; }

Property Value​

IGlobalConfiguration

Constructors​

PipelineRegistration(String, OctoObjectId, RtEntityId, Boolean, NodeDefinitionRoot, IGlobalConfiguration, Dictionary<String, Object>)​

Represents pipeline registration

public PipelineRegistration(string TenantId, OctoObjectId DataFlowRtId, RtEntityId PipelineRtEntityId, bool IsDebuggingEnabled, NodeDefinitionRoot NodeDefinitionRoot, IGlobalConfiguration GlobalConfiguration, Dictionary<string, object> Dictionary)

Parameters​

TenantId String
Tenant id

DataFlowRtId OctoObjectId
Data flow runtime id

PipelineRtEntityId RtEntityId
Pipeline id

IsDebuggingEnabled Boolean
When true, the pipeline is running in debug mode

NodeDefinitionRoot NodeDefinitionRoot
Node definitions, that are used to build the pipeline

GlobalConfiguration IGlobalConfiguration
Global configuration

Dictionary Dictionary<String, Object>
Dictionary shared between execution runs

Methods​

GetExecutionPropertyValue<T>(Guid, String)​

Get the execution property value

public T GetExecutionPropertyValue<T>(Guid pipelineExecutionId, string key)

Type Parameters​

T
Type of the property

Parameters​

pipelineExecutionId Guid
ID of the pipeline execution

key String
Key of the property

Returns​

T
Value of the property

RegisterExecution(Guid, DateTime, Task<Object>)​

Registers a pipeline execution

public PipelineExecution RegisterExecution(Guid pipelineExecutionId, DateTime startedDateTime, Task<object> executePipelineTask)

Parameters​

pipelineExecutionId Guid
ID of the pipeline execution

startedDateTime DateTime
Date and time the pipeline execution started

executePipelineTask Task<Object>

Returns​

PipelineExecution

UnregisterExecutionAsync(Guid)​

Wait for the pipeline execution to complete and returns the result

public Task<object> UnregisterExecutionAsync(Guid pipelineExecutionId)

Parameters​

pipelineExecutionId Guid
The pipeline execution id

Returns​

Task<Object>
The result of the pipeline execution

GetPipelineExecutionStatus(Guid)​

Get the status of the pipeline execution

public PipelineExecutionStatus GetPipelineExecutionStatus(Guid pipelineExecutionId)

Parameters​

pipelineExecutionId Guid
The pipeline execution id

Returns​

PipelineExecutionStatus

GetExecutionStartTime(Guid)​

Gets the start time of a pipeline execution.

public Nullable<DateTime> GetExecutionStartTime(Guid pipelineExecutionId)

Parameters​

pipelineExecutionId Guid
The pipeline execution id

Returns​

Nullable<DateTime>
The start time if found, null otherwise

StartTriggerPipelineNodesAsync(IServiceProvider)​

Register a triggerable extract node

public Task StartTriggerPipelineNodesAsync(IServiceProvider serviceProvider)

Parameters​

serviceProvider IServiceProvider
Global service provider

Returns​

Task

StopTriggerPipelineNodesAsync()​

Unregister a triggerable extract node. Every trigger node is stopped even when an earlier one throws — aborting mid-way used to leave the remaining nodes running unmanaged (their bus endpoints kept consuming and blocked re-registration with RESOURCE_LOCKED on the exclusive command queues, AB#4806). Failures are collected and rethrown after all nodes were attempted.

public Task StopTriggerPipelineNodesAsync()

Returns​

Task