elsa-core/src/modules/Elsa.Workflows.Api
Sipke Schoorstra ca78f73e0a
Introduce Log Persistence Strategy (#6057)
* Implement log persistence strategy management

Added interfaces, services, and strategies for log persistence. Introduced new endpoint to list available log persistence strategies. Updated configurations and dependency injections accordingly.

* Refactor log record methods to asynchronous

Updated methods for extracting and persisting log records to be asynchronous, enhancing performance and scalability. This change includes modifying interfaces and implementations for better async support in workflow execution logging.

* Remove commented code

* Support nullable values in ActivityState dictionaries

Update ActivityState to support nullable values by changing type to 'IDictionary<string, object?>'. Enhanced DefaultActivityExecutionMapper to handle multiple persistence strategies for logging inputs and outputs.

* Rename ShouldPersistAsync to GetPersistenceModeAsync

Refactor method names for log persistence strategies to improve readability and consistency. Added summary comments for clarification and removed redundant configurations from appsettings.json. Added implicit uses and updated namespaces for better maintainability.

* Refactor activity payload and output retrieval logic

Extract payload and output retrieval into `GetPayload` and `GetOutputs` methods respectively. This modularizes the code for better readability and maintainability, and allows for potential reusability of these methods in other parts of the codebase.

* Add new project reference and update PostgreSQL provider usage

Added a project reference to Elsa.Agents.Persistence.EntityFrameworkCore.PostgreSql in the test project file. Also modified the WorkflowServer setup to specify the assembly in the PostgreSQL provider configuration.

* Add agent persistence to WorkflowServer

Integrated agent support and persistence using PostgreSQL in WorkflowServer. This includes adding necessary project references and configuring agents in the workflow server setup.
2024-10-25 19:41:10 +02:00
..
Constants Global read-only and read-only workflows (#5406) 2024-05-27 10:06:39 +02:00
Contracts Global read-only and read-only workflows (#5406) 2024-05-27 10:06:39 +02:00
Endpoints Introduce Log Persistence Strategy (#6057) 2024-10-25 19:41:10 +02:00
Extensions Implement real time workflow update broadcasting using SignalR 2023-07-25 15:12:27 +02:00
Features Global read-only and read-only workflows (#5406) 2024-05-27 10:06:39 +02:00
Middleware Global read-only and read-only workflows (#5406) 2024-05-27 10:06:39 +02:00
Models Update endpoints for lazy loading (#5681) 2024-07-01 11:14:04 +02:00
Options Add ApiEndpointOptions and refactor imports 2024-07-07 16:09:50 +02:00
RealTime Merge remote-tracking branch 'origin/patch/3.2.x' 2024-07-18 18:25:49 +02:00
Requirements Global read-only and read-only workflows (#5406) 2024-05-27 10:06:39 +02:00
Serialization Global read-only and read-only workflows (#5406) 2024-05-27 10:06:39 +02:00
Services Rework Workflow Context Feature (#5861) 2024-08-06 22:36:24 +02:00
AssemblyInfo.cs Fix WorkflowExecutionContext bug (#4919) 2024-02-09 19:37:37 +01:00
Elsa.Workflows.Api.csproj Update System.Text.Json version reference (#6019) 2024-10-11 14:35:24 +02:00
Elsa.Workflows.Api.csproj.DotSettings Add ApiEndpointOptions and refactor imports 2024-07-07 16:09:50 +02:00
FodyWeavers.xml Prepare projects for packaging 2022-11-03 21:40:23 +01:00