Exemplo n.º 1
0
 public DefaultKafkaConsumerClientFactory(
     IOptions <KafkaOptions> kafkaOptions,
     IOptions <KafkaConsumerOptions> options,
     ILogger <DefaultKafkaConsumer> logger)
 {
     _logger  = logger;
     _options = options.Value;
     _options.BrokerServers = _options.BrokerServers == null || _options.BrokerServers.Length <= 0
         ? kafkaOptions.Value.BrokerServers
         : _options.BrokerServers;
 }
Exemplo n.º 2
0
        public KafkaUnderlyingConfigBuilder Append(KafkaConsumerOptions options)
        {
            if (options.BrokerServers == null || options.BrokerServers.Length <= 0)
            {
                throw new ArgumentNullException(nameof(options.BrokerServers));
            }
            if (options.Topics == null || options.Topics.Length <= 0)
            {
                throw new ArgumentNullException(nameof(options.BrokerServers));
            }
            PreConditions.NotNullOrEmpty(options.Group, nameof(options.Group));

            Append("bootstrap.servers", options.BrokerServers.Aggregate((x, y) => $"{x},{y}"));
            Append("allow.auto.create.topics", options.AllowAutoCreateTopic);
            Append("group.id", options.Group);
            Append("auto.offset.reset", options.BootstrapOffsetOptions.AutoResetType);
            Append("enable.auto.commit", options.AutoCommitOptions.Enable);
            Append("auto.commit.interval.ms", options.AutoCommitOptions.IntervalMilliseconds);

            return(this);
        }