public bool InitializeQueues(ConsumerDel consumerFunction) { if (_connection != null) { _channel = _connection.CreateModel(); _channel.ExchangeDeclare(_stationName, ExchangeType.Direct); _channel.QueueDeclare(_publishQueueName, false, false, false); _channel.QueueDeclare(_consumeQueueName, false, false, false); _channel.QueueBind(_publishQueueName, _stationName, _publishQueueName); _channel.QueueBind(_consumeQueueName, _stationName, _consumeQueueName); _consumer = new EventingBasicConsumer(_channel); _consumer.Received += (ch, ea) => { var body = ea.Body; _channel.BasicAck(ea.DeliveryTag, false); consumerFunction(body); }; _consumerTag = _channel.BasicConsume(_consumeQueueName, false, _consumer); _initialized = true; } return(_initialized); }
public bool RegisterQueue(ConsumerDel callBackFunc) { if (_iMessaging != null) { if (_iMessaging.Connected) { return(_iMessaging.InitializeQueues(callBackFunc)); } } return(false); }