Skip to content

Commit 48ba0e0

Browse files
Revert "Allow to disable events publisher"
This reverts commit b43785b.
1 parent b43785b commit 48ba0e0

File tree

7 files changed

+12
-18
lines changed

7 files changed

+12
-18
lines changed

src/WorkflowCore/Models/WorkflowOptions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ public WorkflowOptions(IServiceCollection services)
3838
public bool EnableEvents { get; set; } = true;
3939
public bool EnableIndexes { get; set; } = true;
4040
public bool EnablePolling { get; set; } = true;
41-
public bool EnableLifeCycleEventsPublisher { get; set; } = true;
4241

4342
public void UsePersistence(Func<IServiceProvider, IPersistenceProvider> factory)
4443
{

src/WorkflowCore/ServiceCollectionExtensions.cs

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,7 @@ public static IServiceCollection AddWorkflow(this IServiceCollection services, A
3131

3232
services.AddSingleton<IWorkflowRegistry, WorkflowRegistry>();
3333
services.AddSingleton<WorkflowOptions>(options);
34-
35-
if (options.EnableLifeCycleEventsPublisher)
36-
{
37-
services.AddSingleton<ILifeCycleEventPublisher, LifeCycleEventPublisher>();
38-
services.AddTransient<IBackgroundTask>(sp => sp.GetService<ILifeCycleEventPublisher>());
39-
}
40-
else
41-
{
42-
services.AddTransient<ILifeCycleEventPublisher>(provider => null);
43-
}
34+
services.AddSingleton<ILifeCycleEventPublisher, LifeCycleEventPublisher>();
4435

4536
if (options.EnableWorkflows)
4637
{
@@ -62,6 +53,8 @@ public static IServiceCollection AddWorkflow(this IServiceCollection services, A
6253
services.AddTransient<IBackgroundTask, RunnablePoller>();
6354
}
6455

56+
services.AddTransient<IBackgroundTask>(sp => sp.GetService<ILifeCycleEventPublisher>());
57+
6558
services.AddTransient<IWorkflowErrorHandler, CompensateHandler>();
6659
services.AddTransient<IWorkflowErrorHandler, RetryHandler>();
6760
services.AddTransient<IWorkflowErrorHandler, TerminateHandler>();

src/WorkflowCore/Services/ErrorHandlers/CompensateHandler.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,17 @@ namespace WorkflowCore.Services.ErrorHandlers
88
{
99
public class CompensateHandler : IWorkflowErrorHandler
1010
{
11+
private readonly ILifeCycleEventPublisher _eventPublisher;
1112
private readonly IExecutionPointerFactory _pointerFactory;
1213
private readonly IDateTimeProvider _datetimeProvider;
1314
private readonly WorkflowOptions _options;
1415

1516
public WorkflowErrorHandling Type => WorkflowErrorHandling.Compensate;
1617

17-
public CompensateHandler(IExecutionPointerFactory pointerFactory, IDateTimeProvider datetimeProvider, WorkflowOptions options)
18+
public CompensateHandler(IExecutionPointerFactory pointerFactory, ILifeCycleEventPublisher eventPublisher, IDateTimeProvider datetimeProvider, WorkflowOptions options)
1819
{
1920
_pointerFactory = pointerFactory;
21+
_eventPublisher = eventPublisher;
2022
_datetimeProvider = datetimeProvider;
2123
_options = options;
2224
}

src/WorkflowCore/Services/ErrorHandlers/SuspendHandler.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public SuspendHandler(ILifeCycleEventPublisher eventPublisher, IDateTimeProvider
2121
public void Handle(WorkflowInstance workflow, WorkflowDefinition def, ExecutionPointer pointer, WorkflowStep step, Exception exception, Queue<ExecutionPointer> bubbleUpQueue)
2222
{
2323
workflow.Status = WorkflowStatus.Suspended;
24-
_eventPublisher?.PublishNotification(new WorkflowSuspended
24+
_eventPublisher.PublishNotification(new WorkflowSuspended
2525
{
2626
EventTimeUtc = _datetimeProvider.UtcNow,
2727
Reference = workflow.Reference,

src/WorkflowCore/Services/ErrorHandlers/TerminateHandler.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public void Handle(WorkflowInstance workflow, WorkflowDefinition def, ExecutionP
2323
workflow.Status = WorkflowStatus.Terminated;
2424
workflow.CompleteTime = _dateTimeProvider.UtcNow;
2525

26-
_eventPublisher?.PublishNotification(new WorkflowTerminated
26+
_eventPublisher.PublishNotification(new WorkflowTerminated
2727
{
2828
EventTimeUtc = _dateTimeProvider.UtcNow,
2929
Reference = workflow.Reference,

src/WorkflowCore/Services/ExecutionResultProcessor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ public void ProcessExecutionResult(WorkflowInstance workflow, WorkflowDefinition
7777
subsequent.Active = true;
7878
}
7979

80-
_eventPublisher?.PublishNotification(new StepCompleted
80+
_eventPublisher.PublishNotification(new StepCompleted
8181
{
8282
EventTimeUtc = _datetimeProvider.UtcNow,
8383
Reference = workflow.Reference,
@@ -102,7 +102,7 @@ public void ProcessExecutionResult(WorkflowInstance workflow, WorkflowDefinition
102102

103103
public void HandleStepException(WorkflowInstance workflow, WorkflowDefinition def, ExecutionPointer pointer, WorkflowStep step, Exception exception)
104104
{
105-
_eventPublisher?.PublishNotification(new WorkflowError
105+
_eventPublisher.PublishNotification(new WorkflowError
106106
{
107107
EventTimeUtc = _datetimeProvider.UtcNow,
108108
Reference = workflow.Reference,

src/WorkflowCore/Services/WorkflowExecutor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ private bool InitializeStep(WorkflowInstance workflow, WorkflowStep step, Workfl
123123
if (pointer.Status != PointerStatus.Running)
124124
{
125125
pointer.Status = PointerStatus.Running;
126-
_publisher?.PublishNotification(new StepStarted
126+
_publisher.PublishNotification(new StepStarted
127127
{
128128
EventTimeUtc = _datetimeProvider.UtcNow,
129129
Reference = workflow.Reference,
@@ -264,7 +264,7 @@ private async Task DetermineNextExecutionTime(WorkflowInstance workflow, Workflo
264264
await middlewareRunner.RunPostMiddleware(workflow, def);
265265
}
266266

267-
_publisher?.PublishNotification(new WorkflowCompleted
267+
_publisher.PublishNotification(new WorkflowCompleted
268268
{
269269
EventTimeUtc = _datetimeProvider.UtcNow,
270270
Reference = workflow.Reference,

0 commit comments

Comments
 (0)