using FictionArchive.Common.Enums; using FictionArchive.Service.Shared.Contracts.Events; using MassTransit; namespace FictionArchive.Service.Shared.Extensions; public static class JobStatusPublisher { public static Task ReportJobStatus( this IPublishEndpoint endpoint, Guid jobId, string jobType, string displayName, JobStatus status, Guid? parentJobId = null, string? errorMessage = null, Dictionary? metadata = null) => endpoint.Publish(new JobStatusUpdate( jobId, parentJobId, jobType, displayName, status, errorMessage, metadata)); }