elsa-core/src/modules/Elsa.Workflows.Core/Extensions
Sipke Schoorstra 4bbdd6f3a7
Configures Flowchart Execution via DI (#7141)
* Introduce `FlowchartExecutionMode` to streamline flowchart execution logic.

- Added `FlowchartExecutionMode` enum to represent execution modes (Default, TokenBased, CounterBased).
- Updated flowchart-related integration and unit tests to use the new execution mode.
- Removed the global `UseTokenFlow` flag in favor of execution-specific configuration via `RunWorkflowOptions`.
- Refactored flowchart-related APIs and test helpers for improved flexibility and modularity.

* Add support for configuring flowchart execution behavior via `FlowchartOptions` and DI.

- Introduced extensions for `FlowchartFeature` to simplify configuration.
- Added DI support for setting default execution modes.
- Refactored flowchart execution logic to prioritize configuration.

* Update default Flowchart execution settings to align with version 3.5.2 behavior

- Changed `DefaultExecutionMode` to `CounterBased`.
- Updated `UseTokenFlow` default to `false`.

* Update src/modules/Elsa.Workflows.Core/Activities/Flowchart/Models/FlowchartExecutionMode.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/Elsa.Workflows.Core/Activities/Flowchart/Extensions/FlowchartFeatureExtensions.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update test/integration/Elsa.Workflows.IntegrationTests/Scenarios/FlowchartNextActivity/Tests.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/Elsa.Workflows.Core/Activities/Flowchart/Extensions/RunWorkflowOptionsExtensions.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Refactor flowchart integration tests for improved formatting and consistency

* Refactor workflow tests and related services to improve reusability and align with updated Flowchart execution behavior

* Update src/modules/Elsa.Workflows.Core/Activities/Flowchart/Options/FlowchartOptions.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Refactor flowchart execution logic to use `FlowchartExecutionMode` enum, replacing boolean checks for improved clarity and extensibility.

* Refactor tests and workflow logic to replace boolean `useTokenFlow` with `FlowchartExecutionMode` enum for clarity and consistency.

* Refactor flowchart execution logic to centralize mode-based behavior handling and simplify implementation.

* Remove unnecessary whitespace in Flowchart.cs to improve code formatting

* Remove unnecessary whitespace in FlowJoinTests.cs to improve code formatting

* Update src/common/Elsa.Testing.Shared.Integration/WorkflowTestFixture.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/modules/Elsa.Workflows.Core/Activities/Flowchart/Activities/Flowchart.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-15 10:15:39 +01:00
..
ActivityDescriptorExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ActivityExecutionContextExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ActivityExecutionContextExtensions.InputEvaluation.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ActivityExecutionContextExtensions.InputOutput.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ActivityExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ActivityNodeExtensions.cs Add a more generic UIHandler to customize how inputAttributes can be handle by UI (#4688) 2023-12-26 18:56:29 +01:00
ActivityPropertyExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ActivityRegistryExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
BackgroundActivityExecutionContextExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
BehaviorCollectionExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
BookmarkExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
BreakBehaviorActivityExecutionContextExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
DictionaryExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ExpressionEvaluatorExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ExpressionExecutionContextExtensions.cs Refactor flowchart activity execution logic to improve modularity and add enhanced support for FlowJoin activity types. 2025-12-10 21:34:00 +01:00
InputExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ItemSourceActivityExecutionContextExtensions.cs Add Elsa Script DSL (#7076) 2025-11-25 19:57:50 +01:00
JsonElementExtensions.cs
MemoryBlockReferenceExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ModuleExtensions.cs Configures Flowchart Execution via DI (#7141) 2025-12-15 10:15:39 +01:00
ObjectExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
OutputExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
ServiceCollectionExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
TriggerExtensions.cs Refactor activity context management and state handling. 2025-01-28 20:24:53 +01:00
VariableCollectionExtensions.cs Add a more generic UIHandler to customize how inputAttributes can be handle by UI (#4688) 2023-12-26 18:56:29 +01:00
VariableExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
WorkflowBuilderExtensions.cs Update namespaces and correct merge artefacts 2024-10-11 20:41:49 +02:00
WorkflowExecutionContextExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
WorkflowExecutionResultExtensions.cs Enhance WorkflowTestFixture and RunJavaScript tests with additional examples and helper methods 2025-10-21 20:36:24 +02:00
WorkflowExtensions.cs Refactors extension methods to instance methods (#7089) 2025-11-25 14:53:18 +01:00
WorkflowRunnerExtensions.cs Update namespaces and correct merge artefacts 2024-10-11 20:41:49 +02:00