feat(application): add IMessagingServiceClient abstraction

The client package will expose two interchangeable implementations (in-process and HTTP), so the contract moves into the application layer where both can depend on it. SendAsync returns the queued message id.
This commit is contained in:
2026-11-05 09:44:56 +01:00
parent 50b92115bb
commit f799cdf2c4

View File

@@ -0,0 +1,19 @@
#if NET
using DigitalData.MessagingService.Application.EmailSending.Commands;
namespace DigitalData.MessagingService.Application.Common.Interfaces;
/// <summary>
///
/// </summary>
public interface IMessagingServiceClient
{
/// <summary>
///
/// </summary>
/// <param name="command"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public Task<Guid> SendAsync(PublishEmailViaSmtpCommand command, CancellationToken cancellationToken = default);
}
#endif