elsa-core/src/modules/Elsa.Http/Handlers/ConfigureWorkflowStateSerialization.cs
Sipke Schoorstra 225a99f39d
Bulk Import + Export of Workflow Definitions and Instances (#4643)
* Implement bulk export of workflow definitions

* Update Import endpoint with support for file uploads

* Update Import endpoint to return imported workflow count

* Implement workflow instance (bulk) export

* Implement workflow state, bookmark, workflow + activity execution export

* Remove globally imported usings
2023-11-22 14:31:48 +01:00

28 lines
1 KiB
C#

using Elsa.Http.Serialization;
using Elsa.Mediator.Contracts;
using Elsa.Workflows.Core.Notifications;
using Elsa.Workflows.Core.State;
using JetBrains.Annotations;
namespace Elsa.Http.Handlers;
/// <summary>
/// Configures the serialization of <see cref="WorkflowState"/> objects.
/// </summary>
[PublicAPI]
public class ConfigureWorkflowStateSerialization : INotificationHandler<SerializingWorkflowState>, INotificationHandler<SafeSerializerSerializing>
{
/// <inheritdoc />
public Task HandleAsync(SerializingWorkflowState notification, CancellationToken cancellationToken)
{
notification.SerializerOptions.Converters.Add(new HttpStatusCodeCaseForWorkflowInstanceConverter());
return Task.CompletedTask;
}
/// <inheritdoc />
public Task HandleAsync(SafeSerializerSerializing notification, CancellationToken cancellationToken)
{
notification.SerializerOptions.Converters.Add(new HttpStatusCodeCaseForWorkflowInstanceConverter());
return Task.CompletedTask;
}
}