public DefaultToposProducer(IMessageSerializer messageSerializer, IProducerImplementation producerImplementation, ILoggerFactory loggerFactory) { if (loggerFactory == null) { throw new ArgumentNullException(nameof(loggerFactory)); } _logger = loggerFactory.GetLogger(typeof(DefaultToposProducer)); _messageSerializer = messageSerializer ?? throw new ArgumentNullException(nameof(messageSerializer)); _producerImplementation = producerImplementation ?? throw new ArgumentNullException(nameof(producerImplementation)); }