diff --git a/src/modules/Elsa.Workflows.Management/Services/WorkflowDefinitionManager.cs b/src/modules/Elsa.Workflows.Management/Services/WorkflowDefinitionManager.cs
index b1d463227..c6202d065 100644
--- a/src/modules/Elsa.Workflows.Management/Services/WorkflowDefinitionManager.cs
+++ b/src/modules/Elsa.Workflows.Management/Services/WorkflowDefinitionManager.cs
@@ -7,38 +7,21 @@ using Elsa.Workflows.Management.Notifications;
namespace Elsa.Workflows.Management.Services;
///
-public class WorkflowDefinitionManager : IWorkflowDefinitionManager
+public class WorkflowDefinitionManager(
+ IWorkflowDefinitionStore store,
+ INotificationSender notificationSender,
+ IWorkflowDefinitionPublisher workflowPublisher) : IWorkflowDefinitionManager
{
- private readonly IWorkflowDefinitionStore _store;
- private readonly INotificationSender _notificationSender;
- private readonly IWorkflowDefinitionPublisher _workflowPublisher;
- private readonly IIdentityGenerator _identityGenerator;
-
- ///
- /// Constructor.
- ///
- public WorkflowDefinitionManager(
- IWorkflowDefinitionStore store,
- INotificationSender notificationSender,
- IWorkflowDefinitionPublisher workflowPublisher,
- IIdentityGenerator identityGenerator)
- {
- _store = store;
- _notificationSender = notificationSender;
- _workflowPublisher = workflowPublisher;
- _identityGenerator = identityGenerator;
- }
-
///
public async Task DeleteByDefinitionIdAsync(string definitionId, CancellationToken cancellationToken = default)
{
- await _notificationSender.SendAsync(new WorkflowDefinitionDeleting(definitionId), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionDeleting(definitionId), cancellationToken);
var filter = new WorkflowDefinitionFilter
{
DefinitionId = definitionId
};
- var count = await _store.DeleteAsync(filter, cancellationToken);
- await _notificationSender.SendAsync(new WorkflowDefinitionDeleted(definitionId), cancellationToken);
+ var count = await store.DeleteAsync(filter, cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionDeleted(definitionId), cancellationToken);
return count;
}
@@ -49,7 +32,7 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
{
Id = id
};
- var definition = await _store.FindAsync(filter, cancellationToken);
+ var definition = await store.FindAsync(filter, cancellationToken);
if (definition == null)
return false;
@@ -61,15 +44,15 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
public async Task BulkDeleteByDefinitionIdsAsync(IEnumerable definitionIds, CancellationToken cancellationToken = default)
{
var definitionIdList = definitionIds.Distinct().ToList();
- await _notificationSender.SendAsync(new WorkflowDefinitionsDeleting(definitionIdList), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionsDeleting(definitionIdList), cancellationToken);
var filter = new WorkflowDefinitionFilter
{
DefinitionIds = definitionIdList,
IsReadonly = false
};
- var count = await _store.DeleteAsync(filter, cancellationToken);
+ var count = await store.DeleteAsync(filter, cancellationToken);
await EnsureLastVersionIsLatestAsync(definitionIdList, cancellationToken);
- await _notificationSender.SendAsync(new WorkflowDefinitionsDeleted(definitionIdList), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionsDeleted(definitionIdList), cancellationToken);
return count;
}
@@ -77,19 +60,19 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
public async Task BulkDeleteByIdsAsync(IEnumerable ids, CancellationToken cancellationToken = default)
{
var idList = ids.ToList();
- var definitions = await _store.FindSummariesAsync(new WorkflowDefinitionFilter
+ var definitions = await store.FindSummariesAsync(new WorkflowDefinitionFilter
{
Ids = idList
}, cancellationToken);
var definitionIds = definitions.Select(x => x.DefinitionId).Distinct().ToList();
- await _notificationSender.SendAsync(new WorkflowDefinitionVersionsDeleting(idList), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionVersionsDeleting(idList), cancellationToken);
var filter = new WorkflowDefinitionFilter
{
Ids = idList
};
- var count = await _store.DeleteAsync(filter, cancellationToken);
+ var count = await store.DeleteAsync(filter, cancellationToken);
await EnsureLastVersionIsLatestAsync(definitionIds, cancellationToken);
- await _notificationSender.SendAsync(new WorkflowDefinitionVersionsDeleted(idList), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionVersionsDeleted(idList), cancellationToken);
return count;
}
@@ -101,7 +84,7 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
DefinitionId = definitionId,
VersionOptions = VersionOptions.SpecificVersion(versionToDelete)
};
- var definitionToDelete = await _store.FindAsync(filter, cancellationToken);
+ var definitionToDelete = await store.FindAsync(filter, cancellationToken);
if (definitionToDelete == null)
return false;
@@ -114,22 +97,22 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
{
if (definitionToDelete.IsPublished)
{
- await _workflowPublisher.RetractAsync(definitionToDelete, cancellationToken);
+ await workflowPublisher.RetractAsync(definitionToDelete, cancellationToken);
}
- await _notificationSender.SendAsync(new WorkflowDefinitionVersionDeleting(definitionToDelete), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionVersionDeleting(definitionToDelete), cancellationToken);
var filter = new WorkflowDefinitionFilter
{
Id = definitionToDelete.Id
};
- var isDeleted = await _store.DeleteAsync(filter, cancellationToken) > 0;
+ var isDeleted = await store.DeleteAsync(filter, cancellationToken) > 0;
if (!isDeleted)
return false;
await EnsureLastVersionIsLatestAsync(definitionToDelete.DefinitionId, cancellationToken);
- await _notificationSender.SendAsync(new WorkflowDefinitionVersionDeleted(definitionToDelete), cancellationToken);
+ await notificationSender.SendAsync(new WorkflowDefinitionVersionDeleted(definitionToDelete), cancellationToken);
return isDeleted;
}
@@ -137,7 +120,7 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
///
public Task RevertVersionAsync(string definitionId, int version, CancellationToken cancellationToken = default)
{
- return _workflowPublisher.RevertVersionAsync(definitionId, version, cancellationToken);
+ return workflowPublisher.RevertVersionAsync(definitionId, version, cancellationToken);
}
private async Task EnsureLastVersionIsLatestAsync(IEnumerable definitionIds, CancellationToken cancellationToken)
@@ -157,12 +140,12 @@ public class WorkflowDefinitionManager : IWorkflowDefinitionManager
{
DefinitionId = definitionId
};
- var lastVersion = await _store.FindLastVersionAsync(filter, cancellationToken);
+ var lastVersion = await store.FindLastVersionAsync(filter, cancellationToken);
if (lastVersion is null)
return;
lastVersion.IsLatest = true;
- await _store.SaveAsync(lastVersion, cancellationToken);
+ await store.SaveAsync(lastVersion, cancellationToken);
}
}
\ No newline at end of file