Exemple #1
0
        static void Main()
        {
            var logger = new MyLogger();

            logger.InfoWrite("In subscriber");
            var bus = RabbitHutch.CreateBus("host=Ubuntu-12");

            bus.SubscribeAsync <MyMessage>("SubscribeAsyncConsoleAppId", msg =>
                                           new WebClient().DownloadStringTaskAsync(new Uri("http://ubuntu-12/"))
                                           .ContinueWith(task =>
                                                         logger.InfoWrite("Received '{0}', Downloaded {1}", msg.Text, task.Result))
                                           );
        }
        static void Main()
        {
            var logger = new MyLogger();
            Func <MyRequest, MyResponse> respond = request =>
            {
                logger.InfoWrite("Received {0} ", request.Text);
                return(new MyResponse
                {
                    Text = "Responding to " + request.Text
                });
            };

            using (var bus = RabbitHutch.CreateBus("host=Ubuntu-12"))
            {
                bus.Respond(respond);
                Console.ReadKey();
            }
        }
        static void Main()
        {
            var logger = new MyLogger();

            using (var bus = RabbitHutch.CreateBus("host=Ubuntu-12"))
            {
                var myRequest = new MyRequest();

                using (var publishChannel = bus.OpenPublishChannel())
                {
                    for (var i = 0; i < 5; i++)
                    {
                        myRequest.Text = "Send to Response Server " + i;
                        publishChannel.Request <MyRequest, MyResponse>(myRequest, response =>
                                                                       logger.InfoWrite(
                                                                           "Got response: {0}", response.Text));
                        //Thread.Sleep(500);
                    }
                    Console.ReadKey();
                }
            }
        }