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();
        }
Beispiel #2
0
        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();
        }
Beispiel #5
0
 public void BeginReceive()
 {
     QueueReader.BeginReceive(publishQueue, OnMessageReceived);
 }
Beispiel #6
0
 public void BeginReceive()
 {
     QueueReader.BeginReceive(routerQueue, OnMessageReceived);
 }