private void ReceiveFor(MessageListener messageListener) { //Action action = () => { try { DispatchingConsumer consumer = new DispatchingConsumer(this.Queue.Channel, messageListener, this.MessageTypes, this.AutoAcknowledged, this); this.Tag = this.Queue.Channel.BasicConsume(this.Queue.Name, this.AutoAcknowledged, consumer); } catch (Exception e) { throw new MessageException("Failed to initiate consumer.", e); } // }; // action.BeginInvoke(null, null); }
public void ReceiveAll(MessageListener messageListener) { this.ReceiveFor(messageListener); }
public void ReceiveOnly(string[] messageTypes, MessageListener messageListener) { if(messageTypes==null) { messageTypes = new string[0]; } this.MessageTypes = new List<string>(messageTypes); this.ReceiveFor(messageListener); }
public DispatchingConsumer(IModel model, MessageListener messageListener, IEnumerable<string> filteredMessageTypes, bool autoAcknowledged, MessageConsumer messageConsumer) : base(model) { this.MessageListener = messageListener; this.FilteredMessageTypes = filteredMessageTypes; this.AutoAcknowledged = autoAcknowledged; this.MessageConsumer = messageConsumer; }