using System;
using System.Threading;
using xEventService.Models;
using System.Threading.Tasks;
using xEventService.Constants;
namespace xEventService.Interfaces
{
public interface IXProducerServiceBase : IDisposable
{
///
/// Sending Message ...
///
/// an Instance of to Provides Kafka Messaging requirement ...
///
///
Task SendMessageAsync(
XEventRequest request,
CancellationToken cancellationToken = default
);
///
/// Sending a Message ...
///
/// an Instance of to Provides Kafka Messaging requirement ...
/// Topic for Sending Message ...
///
///
Task SendMessageAsync(
XEventMessage message,
string topic = XEventServiceConstants.XDefaultTopic,
CancellationToken cancellationToken = default
);
}
}