Beispiel #1
0
        private void RaiseException(Exception ex, IQueueConsumerService queueConsumerService, ulong deliveryTag, QueueMetric queueMetric)
        {
            queueConsumerService.Model.BasicNack(deliveryTag, false, false);
            queueMetric.RoutingAction = RoutingAction.Failed;

            _logger.LogError($"Error raised from QueueService: {ex.Message}");
        }
Beispiel #2
0
 public Worker(ILogger <Worker> logger,
               IPageBehaviourService pageBehaviourService,
               IQueueConsumerService <PageBehaviour> queueConsumerService)
 {
     _logger = logger;
     _pageBehaviourService = pageBehaviourService;
     _queueConsumerService = queueConsumerService;
 }
Beispiel #3
0
        public void ProcessMessage(string message, IQueueConsumerService queueConsumerService, ulong deliveryTag, QueueMetric queueMetric)
        {
            var handlerFunc = ResolveHandler();

            if (handlerFunc.Invoke(message))
            {
                queueConsumerService.Model.BasicAck(deliveryTag, false);
                queueMetric.RoutingAction = RoutingAction.Processed;
                return;
            }

            this.RaiseException(new Exception("Message not processed."), queueConsumerService, deliveryTag, queueMetric);
        }
Beispiel #4
0
        public QueueService(IQueueConsumerService queueConsumerService, ConnectionFactory rabbitConnection, ILoggerFactory loggerFactory, IOptions <DataFlowServiceConfig> config)
        {
            _connectionFactory = rabbitConnection;

            _logger = loggerFactory.CreateLogger <QueueService>();

            _queueConsumerService                = queueConsumerService;
            _queueConsumerService.QueueName      = config.Value.InQueueName;
            _queueConsumerService.ExchangeName   = config.Value.ExchangeName;
            _queueConsumerService.ExchangeType   = config.Value.ExchangeType;
            _queueConsumerService.RoutingKeyName = config.Value.InRoutingKeyName;
            _queueConsumerService.Connect(_connectionFactory);
        }
Beispiel #5
0
        public QueueService(IQueueConsumerService queueConsumerService, ConnectionFactory rabbitConnection, ILoggerFactory loggerFactory)
        {
            _processing        = false;
            _connectionFactory = rabbitConnection;

            _queueConsumerService = queueConsumerService;
            _logger = loggerFactory.CreateLogger <QueueService>();

            _queueConsumerService.QueueName      = "test-queue";
            _queueConsumerService.ExchangeName   = "ExchangeName";
            _queueConsumerService.ExchangeType   = "direct";
            _queueConsumerService.RoutingKeyName = string.Empty;
            _queueConsumerService.Connect(_connectionFactory);
        }