Update Azure Service Bus workers upon workflow definition deletion

This commit is contained in:
Sipke Schoorstra 2021-11-25 01:12:31 +01:00
parent 116ede9260
commit 5729f460e4
3 changed files with 5 additions and 2 deletions

View file

@ -5,11 +5,12 @@ using Rebus.Handlers;
namespace Elsa.Activities.AzureServiceBus.Consumers
{
public class RestartServiceBusQueuesConsumer : IHandleMessages<WorkflowDefinitionPublished>, IHandleMessages<WorkflowDefinitionRetracted>
public class RestartServiceBusQueuesConsumer : IHandleMessages<WorkflowDefinitionPublished>, IHandleMessages<WorkflowDefinitionRetracted>, IHandleMessages<WorkflowDefinitionDeleted>
{
private readonly IServiceBusQueuesStarter _serviceBusQueuesStarter;
public RestartServiceBusQueuesConsumer(IServiceBusQueuesStarter serviceBusQueuesStarter) => _serviceBusQueuesStarter = serviceBusQueuesStarter;
public Task Handle(WorkflowDefinitionPublished message) => _serviceBusQueuesStarter.CreateWorkersAsync();
public Task Handle(WorkflowDefinitionRetracted message) => _serviceBusQueuesStarter.CreateWorkersAsync();
public Task Handle(WorkflowDefinitionDeleted message) => _serviceBusQueuesStarter.CreateWorkersAsync();
}
}

View file

@ -5,11 +5,12 @@ using Rebus.Handlers;
namespace Elsa.Activities.AzureServiceBus.Consumers
{
public class RestartServiceBusTopicsConsumer : IHandleMessages<WorkflowDefinitionPublished>, IHandleMessages<WorkflowDefinitionRetracted>
public class RestartServiceBusTopicsConsumer : IHandleMessages<WorkflowDefinitionPublished>, IHandleMessages<WorkflowDefinitionRetracted>, IHandleMessages<WorkflowDefinitionDeleted>
{
private readonly IServiceBusTopicsStarter _serviceBusTopicsStarter;
public RestartServiceBusTopicsConsumer(IServiceBusTopicsStarter serviceBusTopicsStarter) => _serviceBusTopicsStarter = serviceBusTopicsStarter;
public Task Handle(WorkflowDefinitionPublished message) => _serviceBusTopicsStarter.CreateWorkersAsync();
public Task Handle(WorkflowDefinitionRetracted message) => _serviceBusTopicsStarter.CreateWorkersAsync();
public Task Handle(WorkflowDefinitionDeleted message) => _serviceBusTopicsStarter.CreateWorkersAsync();
}
}

View file

@ -43,6 +43,7 @@ namespace Elsa.Activities.AzureServiceBus.Extensions
options.AddPubSubConsumer<RestartServiceBusQueuesConsumer, WorkflowDefinitionPublished>("WorkflowDefinitionEvents");
options.AddPubSubConsumer<RestartServiceBusQueuesConsumer, WorkflowDefinitionRetracted>("WorkflowDefinitionEvents");
options.AddPubSubConsumer<RestartServiceBusQueuesConsumer, WorkflowDefinitionDeleted>("WorkflowDefinitionEvents");
options.AddPubSubConsumer<RestartServiceBusTopicsConsumer, WorkflowDefinitionPublished>("WorkflowDefinitionEvents");
options.AddPubSubConsumer<RestartServiceBusTopicsConsumer, WorkflowDefinitionRetracted>("WorkflowDefinitionEvents");