Exemple #1
0
        public static string Subscriber(string queueName)
        {
            rabbitInfo = ConfigManager.ReadConfigValue();

            if (m_model == null || m_model.IsClosed)
            {
                InitiateConnection();
            }

            m_callback = TestCallBacmMethod;

            //Declaring exchange
            m_model.ExchangeDeclare("demoExchange", ExchangeType.Direct);

            //Declare queue
            m_model.QueueDeclare(queueName, true, false, false, null);

            //Bind queue to the exchange
            m_model.QueueBind(queueName, "demoExchange", "directexchange_key");

            Console.WriteLine("Subscribing Queue : " + queueName + Environment.NewLine);

            //Register consumin event
            var consumer = new EventingBasicConsumer(m_model);

            consumer.Received += AmqpMsgPublishReceived;
            return(m_model.BasicConsume(queueName, true, consumer));
        }
Exemple #2
0
        public static int Publisher(string queueName, string message)
        {
            rabbitInfo = ConfigManager.ReadConfigValue();


            InitiateConnection();

            m_model.BasicAcks += ReceiveDeliveryTagFromRabbitMq;

            m_model.ConfirmSelect();

            var props = m_model.CreateBasicProperties();

            props.Persistent = true;

            Console.WriteLine("Publishing message to the queue - " + queueName);

            m_model.BasicPublish(string.Empty, queueName, true, props, Encoding.Default.GetBytes(message));
            return(m_deliveryTagReceived);
        }