Example #1
0
        public IDisposable StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => Dispose();

            var status = internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage,
                configuration
                );

            if (status == StartConsumingStatus.Succeed)
            {
                eventBus.Publish(new StartConsumingSucceededEvent(this, queue));
            }
            else
            {
                eventBus.Publish(new StartConsumingFailedEvent(this, queue));
            }

            consumerCancellation = new ConsumerCancellation(Dispose);
            return(consumerCancellation);
        }
Example #2
0
        private void OnConsumerLost(IInternalConsumer internalConsumer)
        {
            shouldRecover = true; //we need only recovery in case of connection loss, it is not needed to set it subsequently false
            object temp;

            //We should dispose current internal consumer, as pending messages' ack/nack may shutdown it with unknown delivery tag
            internalConsumers.TryRemove(internalConsumer, out temp);
            internalConsumer.Dispose();
            StartConsumingInternal();
        }
Example #3
0
        public void StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => OnRemoveMeFromList();

            internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage);
        }
Example #4
0
        public void StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => OnRemoveMeFromList();

            internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage);
        }
Example #5
0
        public IDisposable StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => Dispose();

            internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage);

            return(new ConsumerCancellation(Dispose));
        }
Example #6
0
        public IDisposable StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => Dispose();

            internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage);

            return new ConsumerCancellation(Dispose);
        }
Example #7
0
        public void StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => OnRemoveMeFromList();

            internalConsumer.AckOrNackWasSent += context =>
                {
                    OnRemoveMeFromList();
                    Dispose();
                };

            internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage);
        }
Example #8
0
        public void StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => OnRemoveMeFromList();

            internalConsumer.AckOrNackWasSent += context =>
            {
                OnRemoveMeFromList();
                Dispose();
            };

            internalConsumer.StartConsuming(
                connection,
                queue,
                onMessage);
        }
Example #9
0
        /// <inheritdoc />
        public void StartConsuming()
        {
            internalConsumer = internalConsumerFactory.CreateConsumer();

            internalConsumer.Cancelled += consumer => Dispose();

            var status = internalConsumer.StartConsuming(
                queue,
                onMessage,
                configuration
                );

            if (status == StartConsumingStatus.Succeed)
            {
                eventBus.Publish(new StartConsumingSucceededEvent(this, queue));
            }
            else
            {
                eventBus.Publish(new StartConsumingFailedEvent(this, queue));
            }
        }