Add retract client API
This commit is contained in:
parent
4c2ae330f2
commit
13db9bc1ac
|
|
@ -82,19 +82,19 @@ public static class DependencyInjectionExtensions
|
|||
|
||||
private static RefitSettings CreateRefitSettings(IServiceProvider serviceProvider)
|
||||
{
|
||||
JsonSerializerOptions jsonSerializerSettings = new()
|
||||
JsonSerializerOptions serializerOptions = new()
|
||||
{
|
||||
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
|
||||
};
|
||||
|
||||
jsonSerializerSettings.Converters.Add(new JsonStringEnumConverter());
|
||||
jsonSerializerSettings.Converters.Add(new VersionOptionsJsonConverter());
|
||||
jsonSerializerSettings.Converters.Add(new ActivityJsonConverterFactory(serviceProvider));
|
||||
jsonSerializerSettings.Converters.Add(new ExpressionJsonConverterFactory());
|
||||
serializerOptions.Converters.Add(new JsonStringEnumConverter());
|
||||
serializerOptions.Converters.Add(new VersionOptionsJsonConverter());
|
||||
serializerOptions.Converters.Add(new ActivityJsonConverterFactory(serviceProvider));
|
||||
serializerOptions.Converters.Add(new ExpressionJsonConverterFactory());
|
||||
|
||||
var settings = new RefitSettings
|
||||
{
|
||||
ContentSerializer = new SystemTextJsonContentSerializer(jsonSerializerSettings)
|
||||
ContentSerializer = new SystemTextJsonContentSerializer(serializerOptions)
|
||||
};
|
||||
|
||||
return settings;
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
using System.Net.Mime;
|
||||
using Elsa.Api.Client.Models;
|
||||
using Elsa.Api.Client.Resources.WorkflowDefinitions.Models;
|
||||
using JetBrains.Annotations;
|
||||
|
|
@ -69,14 +70,16 @@ public interface IWorkflowDefinitionsApi
|
|||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
[Post("/workflow-definitions/{definitionId}/publish")]
|
||||
Task<WorkflowDefinition> PublishAsync(string definitionId, CancellationToken cancellationToken = default);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Retracts a workflow definition.
|
||||
/// </summary>
|
||||
/// <param name="definitionId">The ID of the workflow definition to retract.</param>
|
||||
/// <param name="request">An empty object to satisfy the request body requirement.</param>
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
[Post("/workflow-definitions/{definitionId}/retract")]
|
||||
Task<WorkflowDefinition> RetractAsync(string definitionId, CancellationToken cancellationToken = default);
|
||||
[Headers(MediaTypeNames.Application.Json)]
|
||||
Task<WorkflowDefinition> RetractAsync(string definitionId, RetractWorkflowDefinitionRequest request, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Deletes many workflow definitions.
|
||||
|
|
@ -110,4 +113,13 @@ public interface IWorkflowDefinitionsApi
|
|||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
[Get("/workflow-definitions/{definitionId}/export?versionOptions={versionOptions}")]
|
||||
Task<IApiResponse<Stream>> ExportAsync(string definitionId, VersionOptions? versionOptions = default, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Imports a workflow definition.
|
||||
/// </summary>
|
||||
/// <param name="model">The model containing the workflow definition to import.</param>
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
/// <returns>The imported workflow definition.</returns>
|
||||
[Post("/workflow-definitions/import")]
|
||||
Task<WorkflowDefinition> ImportAsync(WorkflowDefinitionModel model, CancellationToken cancellationToken = default);
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
namespace Elsa.Api.Client.Resources.WorkflowDefinitions.Models;
|
||||
|
||||
/// <summary>
|
||||
/// Request to retract a workflow definition.
|
||||
/// </summary>
|
||||
public record RetractWorkflowDefinitionRequest();
|
||||
Loading…
Reference in a new issue