30 lines
883 B
C#
Raw Normal View History

using Cloud.Services.Broker.Support;
namespace Cloud.Services.Broker.Implement.Kafka
{
public class KafkaService : IBrokerService
{
private readonly KafkaProducer _producer;
private readonly KafkaConsumer _consumer;
public KafkaService(IConfiguration configuration)
{
_producer = new KafkaProducer(configuration);
_consumer = new KafkaConsumer(configuration);
}
2024-12-04 01:57:10 +04:00
public IEnumerable<T>? WaitMessages<T>(string topic)
where T : IBrokerResponse
=> _consumer.WaitMessages<T>(topic);
2024-12-04 01:57:10 +04:00
public async Task ProduceAsync(string topic, Command command)
=> await _producer.ProduceAsync("commands", command);
2024-12-04 01:57:10 +04:00
public void ChangeBrokerIp(string ip)
{
_consumer.ChangeBrokerIp(ip);
_producer.ChangeBrokerIp(ip);
}
}
}