Exemplo n.º 1
0
 internal Listener(IModel listenerChanel, EventingBasicConsumer consumer,
                   string queueName, EventHandler <BasicDeliverEventArgs> receivedHandler, Publisher responceSender, ResponseObjectSender objectSender)
 {
     this.ListenerChanel     = listenerChanel;
     this.consumer           = consumer;
     this.QueueName          = queueName;
     this.ReceivedHandler    = receivedHandler;
     this.responceSender     = responceSender;
     this.objectSender       = objectSender;
     this.consumer.Received += Consumer_Received;
 }
Exemplo n.º 2
0
        /// <summary>
        /// Creates and returns the Rabbit MQ Listener which can send call-backs
        /// </summary>
        /// <param name="hostName">Rabbit MQ host.</param>
        /// <param name="queueName"></param>
        /// <param name="receivedHandler"></param>
        /// <param name="objectSender"></param>
        /// <returns></returns>
        public static Listener CreateListener(string hostName, string queueName, EventHandler <BasicDeliverEventArgs> receivedHandler, ResponseObjectSender objectSender)
        {
            var connection    = ConnectionFactory.CreateConection(hostName);
            var requestChanel = ChanelFactory.CreateRequestChanel(queueName, connection);
            var sender        = PublisherFactory.CreateResponseSender(hostName, queueName, connection);
            var consumer      = ConsumerFactory.RequestConsumer(requestChanel, queueName);

            return(new Listener(requestChanel, consumer, queueName, receivedHandler, sender, objectSender));
        }