diff --git a/src/EAVFW.Extensions.WorkflowEngine/Endpoints/WorkflowEndpointOptions.cs b/src/EAVFW.Extensions.WorkflowEngine/Endpoints/WorkflowEndpointOptions.cs index dd05cd5..46528cd 100644 --- a/src/EAVFW.Extensions.WorkflowEngine/Endpoints/WorkflowEndpointOptions.cs +++ b/src/EAVFW.Extensions.WorkflowEngine/Endpoints/WorkflowEndpointOptions.cs @@ -15,5 +15,7 @@ public class WorkflowEndpointOptions public Func RunFactory { get; set; } public string WorkflowEntityName { get; set; } + + public Func InitializePluginJobRunnerAsync { get; set; } = (sp, entityType) => Task.CompletedTask; } } diff --git a/src/EAVFW.Extensions.WorkflowEngine/HangFirePluginJobRunner.cs b/src/EAVFW.Extensions.WorkflowEngine/HangFirePluginJobRunner.cs index ab13e7f..d51da14 100644 --- a/src/EAVFW.Extensions.WorkflowEngine/HangFirePluginJobRunner.cs +++ b/src/EAVFW.Extensions.WorkflowEngine/HangFirePluginJobRunner.cs @@ -2,6 +2,7 @@ using EAVFramework.Endpoints; using EAVFramework.Plugins; using EAVFramework.Shared; +using EAVFW.Extensions.WorkflowEngine.Endpoints; using Hangfire; using Hangfire.Server; using Microsoft.EntityFrameworkCore.ChangeTracking; @@ -62,8 +63,9 @@ public async Task ExecuteAsync(string entityType, RecordKeys keys, HangFirePlugi try { _logger.LogInformation("Starting execution of async plugin"); + var options = _serviceProvider.GetRequiredService>(); - await data.Plugin.InitializePluginJobRunnerAsync(_serviceProvider, entityType); + await options.Value.InitializePluginJobRunnerAsync(_serviceProvider, entityType); var db = _serviceProvider.GetRequiredService>();