IMessageBus.cs
430 bytes
| 1 | namespace SplitApp.Shared.Messaging; |
|---|---|
| 2 | |
| 3 | public interface IMessageBus |
| 4 | { |
| 5 | Task PublishEventAsync<TEvent>(TEvent @event, CancellationToken cancellationToken = default) |
| 6 | where TEvent : IIntegrationEvent; |
| 7 | |
| 8 | Task<TResponse> RequestAsync<TRequest, TResponse>( |
| 9 | TRequest request, |
| 10 | TimeSpan timeout, |
| 11 | CancellationToken cancellationToken = default) |
| 12 | where TRequest : IIntegrationRequest<TResponse>; |
| 13 | } |
| 14 | |