static void Main(string[] args) { VerifyQueuesExistAndEmpty(); var publisher = new Publisher(PUBLISH_QUEUE, CLIENTS); QueueReader.BeginReceive(CLIENT_A, WriteToConsole); QueueReader.BeginReceive(CLIENT_B, WriteToConsole); QueueReader.BeginReceive(CLIENT_C, WriteToConsole); publisher.BeginReceive(); PUBLISH_QUEUE.Send(new Message(new PublishedMessage { Body = "Published information" })); Console.ReadLine(); CleanUp(); }
static void Main(string[] args) { VerifyQueuesExistAndEmpty(); var splitter = new Splitter(SPLITTER_QUEUE, PASSENGER_INFO_QUEUE, LUGGAGE_QUEUE); splitter.BeginReceive(); QueueReader.BeginReceive(PASSENGER_INFO_QUEUE, OnPassengerMessageReceived); QueueReader.BeginReceive(LUGGAGE_QUEUE, OnLuggageMessageReceived); var flightDetails = CreateFlightDetails(); SPLITTER_QUEUE.Send(new Message(flightDetails)); Console.ReadLine(); CleanUp(); }
static void Main(string[] args) { VerifyQueuesExistAndEmpty(); var router = new Router(ROUTER_QUEUE, CLIENTS); QueueReader.BeginReceive(CLIENT_A, WriteToConsole); QueueReader.BeginReceive(CLIENT_B, WriteToConsole); QueueReader.BeginReceive(CLIENT_C, WriteToConsole); router.BeginReceive(); var messages = new List <RoutedMessage> { new RoutedMessage { Sender = CLIENT_A.Path, Destination = CLIENT_B.Path, Body = "Message from A to B" }, new RoutedMessage { Sender = CLIENT_A.Path, Destination = CLIENT_C.Path, Body = "Message from A to C" }, new RoutedMessage { Sender = CLIENT_B.Path, Destination = CLIENT_A.Path, Body = "Message from B to A" }, new RoutedMessage { Sender = CLIENT_B.Path, Destination = CLIENT_C.Path, Body = "Message from B to C" }, new RoutedMessage { Sender = CLIENT_C.Path, Destination = CLIENT_A.Path, Body = "Message from C to A" }, new RoutedMessage { Sender = CLIENT_C.Path, Destination = CLIENT_B.Path, Body = "Message from C to B" }, }; foreach (var m in messages) { ROUTER_QUEUE.Send(new Message(m)); } Console.ReadLine(); CleanUp(); }
static void Main(string[] args) { // Kontroller at køerne er klar til at sende og modtage VerifyQueuesExistAndEmpty(); // Opret beskederne (requests) som skal sendes var messageToReplier1 = new Message(new Request("first")); var messageToReplier2 = new Message(new Request("second")); var messageToReplier3 = new Message(new Request("third")); // Start køerne op og sæt dem i "BeginReceive" (Se QueueReader klassen) QueueReader.BeginReceive(TO_REPLIER, OnRequestReceived); QueueReader.BeginReceive(TO_REQUESTER, OnReplyReceived); // Send "Requests" til "Replier" køen TO_REPLIER.Send(messageToReplier1); TO_REPLIER.Send(messageToReplier2); TO_REPLIER.Send(messageToReplier3); // Forhindr konsollen i at lukke Console.ReadLine(); CleanUp(); }
public void BeginReceive() { QueueReader.BeginReceive(publishQueue, OnMessageReceived); }
public void BeginReceive() { QueueReader.BeginReceive(routerQueue, OnMessageReceived); }