Exemplo n.º 1
0
 public MessageConsumer(
     IConsumerManager consumerManager,
     ILogHandler logHandler)
 {
     this.consumerManager = consumerManager;
     this.logHandler      = logHandler;
 }
Exemplo n.º 2
0
 public RabbitTunnelWithPriorityQueuesSupport(IConsumerManager consumerManager,
                                              IRabbitWatcher watcher,
                                              IRouteFinder routeFinder,
                                              IDurableConnection connection,
                                              ISerializer serializer,
                                              ICorrelationIdGenerator correlationIdGenerator,
                                              bool setPersistent)
     : base(consumerManager, watcher, routeFinder, connection, serializer, correlationIdGenerator, setPersistent)
 {
     _priorityConsumerManager = new PriorityConsumerManager(watcher, consumerManager.MessageHandlerFactory, serializer);
 }
Exemplo n.º 3
0
 public KafkaBus(
     IDependencyResolver dependencyResolver,
     IConsumerManager consumerManager,
     ILogHandler logHandler,
     KafkaConfiguration configuration)
 {
     this.dependencyResolver = dependencyResolver;
     this.configuration      = configuration;
     this.consumerManager    = consumerManager;
     this.logHandler         = logHandler;
 }
Exemplo n.º 4
0
        public ConsumerMainEventHandlers(
            IConsumerEventHandlersFactory consumerEventHandlersFactory,
            IConsumerManager consumerManager,
            IRmqLogger logger)
        {
            this.consumerManager = consumerManager;
            this.logger          = logger;

            consumerRegisterEventHandler = consumerEventHandlersFactory.CreateRegisterEventHandler();
            consumerReceiveEventHandelr  = consumerEventHandlersFactory.CreateReceiveEventHandelr();
            consumerCommonEventHandelr   = consumerEventHandlersFactory.CreateCommonEventHandelr();

            Init();
        }
Exemplo n.º 5
0
 public KafkaBus2(
     IDependencyResolver dependencyResolver,
     IConsumerManager consumerManager,
     IProducerAccessor accessor,
     IConfiguration config,
     IConsumerClient ConsumerClient,
     ILogHandler logHandler)
 {
     this.dependencyResolver = dependencyResolver;
     this.consumerManager    = consumerManager;
     this.logHandler         = logHandler;
     this.Producers          = accessor;
     this.config             = config;
     this.ConsumerClient     = ConsumerClient;
 }
Exemplo n.º 6
0
 public KafkaBus(
     IDependencyResolver dependencyResolver,
     IConsumerManager consumerManager,
     IProducerAccessor accessor,
     ILogHandler logHandler,
     //IConfiguration config,
     KafkaConfiguration configuration)
 {
     this.dependencyResolver = dependencyResolver;
     this.configuration      = configuration;
     this.consumerManager    = consumerManager;
     this.logHandler         = logHandler;
     this.Producers          = accessor;
     //this.config = config;
 }
        public RabbitLightContext(IServiceProvider sp, ContextConfig config)
        {
            _config = config;
            _config.Validate();
            _logger = CreateLogger <RabbitLightContext>();

            StartMonitor();

            var consumerPool = new ConsumerConnectionPool(_config.ConnConfig, CreateLogger <ConsumerConnectionPool>());

            _consumerManager = new ConsumerManager(sp, consumerPool, _config);

            var publisherPool = new PublisherConnectionPool(_config.ConnConfig, CreateLogger <PublisherConnectionPool>());

            Publisher = new Publisher.Publisher(publisherPool);

            ILogger <T> CreateLogger <T>() => sp.GetService <ILoggerFactory>()?.CreateLogger <T>();
        }
Exemplo n.º 8
0
        public KafkaConsumer(
            ConsumerConfiguration configuration,
            IConsumerManager consumerManager,
            ILogHandler logHandler,
            IConsumerWorkerPool consumerWorkerPool)
        {
            this.configuration      = configuration;
            this.consumerManager    = consumerManager;
            this.logHandler         = logHandler;
            this.consumerWorkerPool = consumerWorkerPool;

            var kafkaConfig = configuration.GetKafkaConfig();

            this.consumerBuilder = new ConsumerBuilder <byte[], byte[]>(kafkaConfig);

            this.consumerBuilder.SetPartitionsAssignedHandler((consumer, partitions) => this.OnPartitionAssigned(consumer, partitions));
            this.consumerBuilder.SetPartitionsRevokedHandler((consumer, partitions) => this.OnPartitionRevoked(partitions));
        }
Exemplo n.º 9
0
        public KafkaConsumer(
            ConsumerConfiguration configuration,
            IConsumerManager consumerManager,
            ILogHandler logHandler,
            IConsumerWorkerPool consumerWorkerPool,
            IDependencyResolver dependencyResolver,
            CancellationToken busStopCancellationToken)
        {
            this.Configuration            = configuration;
            this.consumerManager          = consumerManager;
            this.logHandler               = logHandler;
            this.consumerWorkerPool       = consumerWorkerPool;
            this.dependencyResolver       = dependencyResolver;
            this.busStopCancellationToken = busStopCancellationToken;

            var kafkaConfig = configuration.GetKafkaConfig();

            this.consumerBuilder = new ConsumerBuilder <byte[], byte[]>(kafkaConfig);

            this.consumerBuilder
            .SetPartitionsAssignedHandler((consumer, partitions) => this.OnPartitionAssigned(partitions))
            .SetPartitionsRevokedHandler((consumer, partitions) => this.OnPartitionRevoked(partitions))
            .SetErrorHandler(
                (p, error) =>
            {
                if (error.IsFatal)
                {
                    this.logHandler.Error("Kafka Consumer Fatal Error", null, new { Error = error });
                }
                else
                {
                    this.logHandler.Warning("Kafka Consumer Error", new { Error = error });
                }
            })
            .SetStatisticsHandler(
                (consumer, statistics) =>
            {
                foreach (var handler in configuration.StatisticsHandlers)
                {
                    handler.Invoke(statistics);
                }
            });
        }
        public KafkaConsumer(
            ConsumerConfiguration configuration,
            IConsumerManager consumerManager,
            ILogHandler logHandler,
            IConsumerWorkerPool consumerWorkerPool,
            CancellationToken busStopCancellationToken)
        {
            this.configuration            = configuration;
            this.consumerManager          = consumerManager;
            this.logHandler               = logHandler;
            this.consumerWorkerPool       = consumerWorkerPool;
            this.busStopCancellationToken = busStopCancellationToken;

            var kafkaConfig = configuration.GetKafkaConfig();

            this.consumerBuilder = new ConsumerBuilder <byte[], byte[]>(kafkaConfig);

            this.consumerBuilder
            .SetPartitionsAssignedHandler((consumer, partitions) => this.OnPartitionAssigned(consumer, partitions))
            .SetPartitionsRevokedHandler((consumer, partitions) => this.OnPartitionRevoked(partitions))
            .SetErrorHandler((p, error) => this.logHandler.Error("Kafka Consumer Error", null, new { Error = error }));
        }
Exemplo n.º 11
0
        /// <summary>
        /// Create a tunnel by <see cref="IConsumerManager"/>, <see cref="IRouteFinder"/>, <see cref="IDurableConnection"/>, <see cref="ISerializer"/> and <see cref="ICorrelationIdGenerator"/>
        /// </summary>
        /// <param name="consumerManager"></param>
        /// <param name="watcher"></param>
        /// <param name="routeFinder"></param>
        /// <param name="connection"></param>
        /// <param name="serializer"></param>
        /// <param name="correlationIdGenerator"></param>
        /// <param name="setPersistent"></param>
        public RabbitTunnel(IConsumerManager consumerManager,
                            IRabbitWatcher watcher,
                            IRouteFinder routeFinder,
                            IDurableConnection connection,
                            ISerializer serializer,
                            ICorrelationIdGenerator correlationIdGenerator,
                            bool setPersistent)
        {
            if (consumerManager == null)
            {
                throw new ArgumentNullException("consumerManager");
            }
            if (watcher == null)
            {
                throw new ArgumentNullException("watcher");
            }
            if (connection == null)
            {
                throw new ArgumentNullException("connection");
            }
            if (correlationIdGenerator == null)
            {
                throw new ArgumentNullException("correlationIdGenerator");
            }

            _consumerManager        = consumerManager;
            _watcher                = watcher;
            _connection             = connection;
            _correlationIdGenerator = correlationIdGenerator;
            _observers              = new ConcurrentBag <IObserver <ISerializer> >();

            SetRouteFinder(routeFinder);
            SetSerializer(serializer);
            SetPersistentMode(setPersistent);

            _connection.Connected    += OpenTunnel;
            _connection.Disconnected += CloseTunnel;
            _subscribeActions         = new ConcurrentDictionary <Guid, Action>();
        }
Exemplo n.º 12
0
 public ValuesController(IConsumerManager consumerManager)
 {
     _consumerManager = consumerManager;
 }
Exemplo n.º 13
0
 /// <summary>
 /// Creates a new <see cref="AppSettings"/> instance.
 /// </summary>
 /// <param name="logger"></param>
 /// <param name="consumerManager"></param>
 public AppService(ILogger logger, IConsumerManager consumerManager)
 {
     _logger          = logger?.ForContext <AppService>() ?? throw new System.ArgumentNullException(nameof(logger));
     _consumerManager = consumerManager ?? throw new System.ArgumentNullException(nameof(consumerManager));
 }
 public RabbitTunnelWithPriorityQueuesSupportForTest(IConsumerManager consumerManager, IRabbitWatcher watcher, IRouteFinder routeFinder, IDurableConnection connection, ISerializer serializer, ICorrelationIdGenerator correlationIdGenerator, bool setPersistent)
     : base(consumerManager, watcher, routeFinder, connection, serializer, correlationIdGenerator, setPersistent)
 {
 }
Exemplo n.º 15
0
 public RabbitTunnelForTest(IConsumerManager consumerManager, IRabbitWatcher watcher, IRouteFinder routeFinder, IDurableConnection connection, ISerializer serializer, ICorrelationIdGenerator correlationIdGenerator, bool setPersistent) 
     : base(consumerManager, watcher, routeFinder, connection, serializer, correlationIdGenerator, setPersistent)
 {
 }
 public ParticipantManager(IConsumerManager consumerManager)
 {
     _consumerManager = consumerManager;
 }
Exemplo n.º 17
0
 public ChannelManager(Channel <string, string> channel, IProducerManagerCreator producerManagerCreator, IConsumerManagerCreator consumerManagerCreator)
 {
     this.channel    = channel;
     producerManager = producerManagerCreator.Create(channel.Writer);
     consumerManager = consumerManagerCreator.Create(channel.Reader);
 }