Example #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Server");

            var bus = BusFactory.CreateRabbitMq((host, sbc) => {
                sbc.ReceiveEndpoint(host, "alert_queue", endpoint =>
                {
                    endpoint.Handler <AlertMessage>(async context =>
                    {
                        await Console.Out.WriteLineAsync($"Received: {context.Message.Text}");
                    });
                });
            });

            //Sending our cancelation token to keep starting forever!
            //As instrcuted here
            //https://github.com/MassTransit/MassTransit/issues/1158
            CancellationTokenSource cancelSource = new CancellationTokenSource();

            bus.StartAsync(cancelSource.Token);

            Console.WriteLine("Press Any key to leave...");

            Console.ReadLine();

            bus.StopAsync();

            Console.ReadKey();
        }
Example #2
0
        static void Main(string[] args)
        {
            while (true)
            {
                Console.Clear();
                Console.WriteLine("How many Alerts to send? (X to quit)");
                var input = Console.ReadLine();
                //Quit!
                if (input.ToUpper().Equals("X"))
                {
                    break;
                }
                if (int.TryParse(input, out int number))
                {
                    //Connect and start the bus
                    var bus = BusFactory.CreateRabbitMq();

                    //Sending our cancelation token to keep starting forever!
                    //As instrcuted here
                    //https://github.com/MassTransit/MassTransit/issues/1158
                    CancellationTokenSource cancelSource = new CancellationTokenSource();
                    bus.StartAsync(cancelSource.Token);

                    for (int i = 1; i <= number; i++)
                    {
                        var alert = new AlertMessage()
                        {
                            Text = "Alert " + i
                        };


                        //Publish
                        var publishTask = bus.Publish(alert);

                        Console.WriteLine($"{alert.Text} - SENT");
                    }

                    bus.StopAsync();
                }
            }
        }