using System.Threading;
using xEventService.Models;
using System.Threading.Tasks;
namespace xEventService.Interfaces
{
///
/// RabbitMQ Producer Service Implementation ...
///
public interface IXRabbitMQProducerService : IXProducerServiceBase
{
///
/// Sending a Message to Default Exchange ...
///
///
/// an Instance of ...
///
///
/// Target Exchange Name. if empty, uses default from configuration ...
///
///
/// Routing Key for message routing ...
///
///
///
Task SendMessageAsync(
XEventMessage message,
string exchange = null,
string routingKey = null,
CancellationToken cancellationToken = default
);
}
}