Table of Contents

Class StepCollection

Namespace
FlowOrchestrator.Core.Abstractions
Assembly
FlowOrchestrator.Core.dll

Dictionary of StepMetadata keyed by step name, with helpers for navigating nested step hierarchies using dot-notation paths.

public sealed class StepCollection : Dictionary<string, StepMetadata>, IDictionary<string, StepMetadata>, ICollection<KeyValuePair<string, StepMetadata>>, IReadOnlyDictionary<string, StepMetadata>, IReadOnlyCollection<KeyValuePair<string, StepMetadata>>, IEnumerable<KeyValuePair<string, StepMetadata>>, IDictionary, ICollection, IEnumerable, IDeserializationCallback, ISerializable
Inheritance
StepCollection
Implements
Inherited Members

Methods

FindNextStep(string)

Returns the first top-level step whose RunAfter references currentKey, effectively finding the immediate successor in a linear chain.

public StepMetadata? FindNextStep(string currentKey)

Parameters

currentKey string

The key of the step that just completed.

Returns

StepMetadata

The next step, or null if none declares currentKey as a dependency.

FindParentStep(string)

Finds the scoped parent step (e.g. a LoopStepMetadata) that contains the step identified by key.

public StepMetadata? FindParentStep(string key)

Parameters

key string

A dot-separated step path such as "processItems.validate".

Returns

StepMetadata

The parent StepMetadata if the key has more than one segment and the parent exists; otherwise null.

FindStep(string)

Finds a step by its key, supporting nested and runtime-indexed paths.

public StepMetadata? FindStep(string key)

Parameters

key string

A dot-separated path such as "processItems", "processItems.validate", or the runtime loop path "processItems.0.validate". Numeric segments are treated as loop iteration indices and skipped when resolving against the template definition.

Returns

StepMetadata

The matching StepMetadata, or null if not found.