/// <summary> /// Triggered when messages are read from the main queue /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MainQueue_Rx(object sender, RoutingFrame e) { //var objRouter = QueueProvider.GetSenderQueue(QueueType.Publisher, e.SourceID, false); //var objRequest = new ConsumerRequest(QueueProvider.GetSenderQueue(QueueType.Publisher, e.SourceID, false), e); var objPublisherQueue = QueueProvider.GetSenderQueue(QueueType.Publisher, e.SourceID, false); var objRouter = new ConsumerRouter(ID, objPublisherQueue, e); MessagingFactory.Processor.Process(objRouter, e.Data); //RequestManager.Send(objRequest); }
/// <summary> /// Triggered when messages are read from the queue for this worker /// /// Responses are forwarded to the RequestManager, any other messages /// are handled by the IMessageProcessor /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ConsumerQueue_Rx(object sender, RoutingFrame e) { //RequestManager.Receive(e); if (e.FrameType == RoutingFrameType.Control) { ControlFactory.Processor.Process(new ConsumerRouter(ID, QueueProvider.GetSenderQueue(QueueType.Publisher, e.SourceID, false), e), e); } else { var objRouter = new ConsumerRouter(ID, QueueProvider.GetSenderQueue(QueueType.Publisher, e.SourceID, false), e); RequestManager.Receive(objRouter, e); } }
//public string SourceID { get { return Router.Request.DestinationID; } } //public string DestinationID { get { return Router.Publisher.QueueName; } } public SubscriptionRouter(ConsumerRouter pRouter, SenderQueue pExchange) { Router = pRouter; Exchange = pExchange; }