public async Task DeleteAsync(string workflowDefinitionId, VersionOptions versionOptions, CancellationToken cancellationToken = default) { if (versionOptions.AllVersions) { await _workflowInstanceStore.DeleteManyAsync(new WorkflowDefinitionIdSpecification(workflowDefinitionId), cancellationToken); await _workflowDefinitionStore.DeleteManyAsync(new Persistence.Specifications.WorkflowDefinitions.WorkflowDefinitionIdSpecification(workflowDefinitionId), cancellationToken); } else { var definition = await _workflowDefinitionStore.FindByDefinitionIdAsync(workflowDefinitionId, versionOptions, cancellationToken); if (definition != null) { await DeleteAsync(definition, cancellationToken); } } }
public async Task <IActionResult> Handle(BulkDeleteWorkflowsRequest request, CancellationToken cancellationToken = default) { var count = await _workflowInstanceStore.DeleteManyAsync(new WorkflowInstanceIdsSpecification(request.WorkflowInstanceIds), cancellationToken); return(Ok(new { DeletedWorkflowCount = count })); }
public async Task <IActionResult> Handle(BulkDeleteWorkflowsRequest request, CancellationToken cancellationToken = default) { var count = await _workflowInstanceStore.DeleteManyAsync(new WorkflowInstanceIdsSpecification(request.WorkflowInstanceIds), cancellationToken); return(Json(new { DeletedWorkflowCount = count }, _serializerSettingsProvider.GetSettings())); }
public async Task <int> DeleteManyAsync(ISpecification <WorkflowInstance> specification, CancellationToken cancellationToken = default) { var instances = await FindManyAsync(specification, cancellationToken : cancellationToken).ToList(); var count = await _store.DeleteManyAsync(specification, cancellationToken); if (instances.Any()) { foreach (var instance in instances) { await _mediator.Publish(new WorkflowInstanceDeleted(instance), cancellationToken); } await _mediator.Publish(new ManyWorkflowInstancesDeleted(instances), cancellationToken); } return(count); }
public async Task DeleteAsync(string workflowDefinitionId, CancellationToken cancellationToken = default) { await _workflowInstanceStore.DeleteManyAsync(new WorkflowDefinitionIdSpecification(workflowDefinitionId), cancellationToken); await _workflowDefinitionStore.DeleteManyAsync(new Persistence.Specifications.WorkflowDefinitions.WorkflowDefinitionIdSpecification(workflowDefinitionId), cancellationToken); }
private async Task DeleteManyAsync(IEnumerable <string> workflowInstanceIds, CancellationToken cancellationToken) { var specification = new WorkflowInstanceIdsSpecification(workflowInstanceIds); await _workflowInstanceStore.DeleteManyAsync(specification, cancellationToken); }
private async Task DeleteManyAsync(ICollection <string> workflowInstanceIds, CancellationToken cancellationToken) { _logger.LogInformation("Deleting {WorkflowInstanceCount} workflow instances", workflowInstanceIds.Count); var specification = new WorkflowInstanceIdsSpecification(workflowInstanceIds); await _workflowInstanceStore.DeleteManyAsync(specification, cancellationToken); }