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); } }
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); } }