Exemple #1
0
        void ConfigureConnectionInfrastructure(RabbitMqConnectionOptionsContainer optionsContainer)
        {
            Connection = _rabbitMqConnectionFactory.CreateRabbitMqConnection(optionsContainer?.Options?.ProducerOptions);
            if (Connection != null)
            {
                Connection.CallbackException += HandleConnectionCallbackException;
                if (Connection is IAutorecoveringConnection connection)
                {
                    connection.ConnectionRecoveryError += HandleConnectionRecoveryError;
                }
                Channel = Connection.CreateModel();
                Channel.CallbackException += HandleChannelCallbackException;
                Channel.BasicRecoverOk    += HandleChannelBasicRecoverOk;
            }

            ConsumingConnection = _rabbitMqConnectionFactory.CreateRabbitMqConnection(optionsContainer?.Options?.ConsumerOptions);
            if (ConsumingConnection != null)
            {
                ConsumingConnection.CallbackException += HandleConnectionCallbackException;
                if (Connection is IAutorecoveringConnection connection)
                {
                    connection.ConnectionRecoveryError += HandleConnectionRecoveryError;
                }
                ConsumingChannel = ConsumingConnection.CreateModel();
                ConsumingChannel.CallbackException += HandleChannelCallbackException;
                ConsumingChannel.BasicRecoverOk    += HandleChannelBasicRecoverOk;

                _consumer = _rabbitMqConnectionFactory.CreateConsumer(ConsumingChannel);
            }
        }
Exemple #2
0
        void ConfigureConnectionInfrastructure(RabbitMqConnectionOptionsContainer optionsContainer)
        {
            Connection = RabbitMqFactoryExtensions.CreateRabbitMqConnection(optionsContainer?.Options?.ProducerOptions);
            if (Connection != null)
            {
                Connection.CallbackException       += HandleConnectionCallbackException;
                Connection.ConnectionRecoveryError += HandleConnectionRecoveryError;
                Channel = Connection.CreateModel();
                Channel.CallbackException += HandleChannelCallbackException;
                Channel.BasicRecoverOk    += HandleChannelBasicRecoverOk;
            }

            ConsumingConnection = RabbitMqFactoryExtensions.CreateRabbitMqConnection(optionsContainer?.Options?.ConsumerOptions);
            if (ConsumingConnection != null)
            {
                ConsumingConnection.CallbackException       += HandleConnectionCallbackException;
                ConsumingConnection.ConnectionRecoveryError += HandleConnectionRecoveryError;
                ConsumingChannel = ConsumingConnection.CreateModel();
                ConsumingChannel.CallbackException += HandleChannelCallbackException;
                ConsumingChannel.BasicRecoverOk    += HandleChannelBasicRecoverOk;

                _consumer = new AsyncEventingBasicConsumer(ConsumingChannel);
            }
        }