diff --git a/src/modules/Elsa.Scheduling/Services/DefaultTriggerScheduler.cs b/src/modules/Elsa.Scheduling/Services/DefaultTriggerScheduler.cs index 31165173ac..71ce81450a 100644 --- a/src/modules/Elsa.Scheduling/Services/DefaultTriggerScheduler.cs +++ b/src/modules/Elsa.Scheduling/Services/DefaultTriggerScheduler.cs @@ -64,6 +64,12 @@ public async Task ScheduleAsync(IEnumerable triggers, Cancellatio foreach (var trigger in cronTriggers) { var payload = trigger.GetPayload(); + if(payload is null) + { + logger.LogWarning("Cron expression payload is empty. TriggerId: {TriggerId}. Skipping scheduling of this trigger", trigger.Id); + continue; + } + var cronExpression = payload.CronExpression; if (string.IsNullOrWhiteSpace(cronExpression)) diff --git a/src/modules/Elsa.Workflows.Runtime/Services/WorkflowDefinitionsReloader.cs b/src/modules/Elsa.Workflows.Runtime/Services/WorkflowDefinitionsReloader.cs index 9436324535..1ed6cf15b7 100644 --- a/src/modules/Elsa.Workflows.Runtime/Services/WorkflowDefinitionsReloader.cs +++ b/src/modules/Elsa.Workflows.Runtime/Services/WorkflowDefinitionsReloader.cs @@ -1,18 +1,11 @@ -using Elsa.Mediator.Contracts; -using Elsa.Workflows.Runtime.Models; -using Elsa.Workflows.Runtime.Notifications; - -namespace Elsa.Workflows.Runtime; +namespace Elsa.Workflows.Runtime; /// -public class WorkflowDefinitionsReloader(IWorkflowDefinitionStorePopulator workflowDefinitionStorePopulator, INotificationSender notificationSender) : IWorkflowDefinitionsReloader +public class WorkflowDefinitionsReloader(IRegistriesPopulator registriesPopulator) : IWorkflowDefinitionsReloader { /// public async Task ReloadWorkflowDefinitionsAsync(CancellationToken cancellationToken) { - var workflowDefinitions = await workflowDefinitionStorePopulator.PopulateStoreAsync(true, cancellationToken); - var reloadedWorkflowDefinitions = workflowDefinitions.Select(ReloadedWorkflowDefinition.FromDefinition).ToList(); - var notification = new WorkflowDefinitionsReloaded(reloadedWorkflowDefinitions); - await notificationSender.SendAsync(notification, cancellationToken); + await registriesPopulator.PopulateAsync(cancellationToken); } } \ No newline at end of file