/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/MassTransit.Abstractions/Middleware/EventExtensions.cs
41 строка
992 B
Chris Patterson
Integration of all external packages into MassTransit, split out into Abstractions, Middleware, and the core MassTransit assembly.
22 янв 2022, 18:24
22 янв 2022, 18:24
b5b4f50
Код
Авторство
О чём код?
namespace MassTransit { using System; using System.Threading.Tasks; using Contracts; using Middleware; public static class EventExtensions { public static Task PublishEvent<T>(this IPipe<EventContext> pipe, T message) where T : class { if (pipe == null) throw new ArgumentNullException(nameof(pipe)); if (message == null) throw new ArgumentNullException(nameof(message)); var context = new PublishEventContext<T>(message); return pipe.Send(context); } class PublishEventContext<T> : BasePipeContext, EventContext<T> where T : class { public PublishEventContext(T @event) { Event = @event; Timestamp = DateTime.UtcNow; } public DateTime Timestamp { get; } public T Event { get; } } } }