public KafkaMessageProducer(KafkaMessagingGatewayConfiguration globalConfiguration, KafkaMessagingProducerConfiguration producerConfiguration) { var serialiser = new StringSerializer(Encoding.UTF8); var config = globalConfiguration.ToConfig(); config = config.Concat(producerConfiguration.ToConfig()); _producer = new Producer <Null, string>(config, null, serialiser); }
public KafkaMessageConsumer(string groupId, string topic, KafkaMessagingGatewayConfiguration globalConfiguration, KafkaMessagingConsumerConfiguration consumerConfiguration) { var config = globalConfiguration.ToConfig(); config = config.Concat(consumerConfiguration.ToConfig()); config = config.Concat(new[] { new KeyValuePair <string, object>("group.id", groupId) }); _consumer = new Consumer <Null, string>(config, null, new StringDeserializer(Encoding.UTF8)); _consumer.OnPartitionsAssigned += (_, partitions) => OnPartionsAssigned(partitions); _consumer.OnPartitionsRevoked += (_, partitions) => OnPartionsRevoked(partitions); if (_logger.Value.IsErrorEnabled()) { _consumer.OnError += (_, error) => _logger.Value.Error($"BrokerError: Member id: {_consumer.MemberId}, error: {error}"); _consumer.OnConsumeError += (_, error) => _logger.Value.Error($"ConsumeError: Member Id: {_consumer.MemberId}, error: {error}"); } _consumer.Subscribe(new [] { topic }); }