Table of Contents

Class WorkflowForgeOptions

Namespace
WorkflowForge.Options
Assembly
WorkflowForge.dll

Configuration options for core WorkflowForge functionality. Zero-dependency POCO for configuration binding. Inherits from WorkflowForgeOptionsBase for consistent options pattern.

public sealed class WorkflowForgeOptions : WorkflowForgeOptionsBase, ICloneable
Inheritance
WorkflowForgeOptions
Implements
Inherited Members

Constructors

WorkflowForgeOptions()

Initializes a new instance with default section name.

public WorkflowForgeOptions()

WorkflowForgeOptions(string?)

Initializes a new instance with custom section name.

public WorkflowForgeOptions(string? sectionName)

Parameters

sectionName string

Custom configuration section name.

Fields

DefaultSectionName

Default configuration section name for binding from appsettings.json. This is the default value; users can specify a custom section name when binding.

public const string DefaultSectionName = "WorkflowForge"

Field Value

string

Properties

ContinueOnError

Gets or sets whether to continue executing remaining operations after a failure. When true, failures are aggregated and thrown after execution completes. OperationCanceledException is always rethrown immediately and is never aggregated. Default is false (stop on first error).

public bool ContinueOnError { get; set; }

Property Value

bool

EnableOutputChaining

Gets or sets whether operation output is passed as input to the next operation. Default is true (output chaining enabled).

public bool EnableOutputChaining { get; set; }

Property Value

bool

FailFastCompensation

Gets or sets whether compensation should stop on the first restore failure. Default is false (best-effort).

public bool FailFastCompensation { get; set; }

Property Value

bool

MaxConcurrentWorkflows

Gets or sets the maximum number of workflows that can execute simultaneously. This throttles workflow-level parallelism when running multiple workflows with Task.WhenAll. 0 = unlimited (no throttling), otherwise must be between 1 and 10000. Default is 0 (unlimited).

public int MaxConcurrentWorkflows { get; set; }

Property Value

int

ThrowOnCompensationError

Gets or sets whether compensation failures should be surfaced as an aggregate exception. Default is false (best-effort, original error rethrown).

public bool ThrowOnCompensationError { get; set; }

Property Value

bool

Methods

Clone()

Creates a shallow copy of the current options instance.

public override object Clone()

Returns

object

A new WorkflowForgeOptions instance with copied property values.

CloneTyped()

Creates a strongly-typed copy of the current options. Convenience method that returns WorkflowForgeOptions instead of object.

public WorkflowForgeOptions CloneTyped()

Returns

WorkflowForgeOptions

A new WorkflowForgeOptions instance with copied property values.

Validate()

Validates the configuration settings and returns any validation errors.

public override IList<string> Validate()

Returns

IList<string>

A list of validation error messages, empty if valid.