Ejemplo n.º 1
0
        static async Task Main(string[] args)
        {
            const string serviceId = "action-2";

            var builder = new ConfigurationBuilder()
                          .AddJsonFile("appsettings.json")
                          .AddEnvironmentVariables();
            var configuration = builder.Build();

            var web1 = new WebApi1Client(ServiceHttpTransportParameters.FromConfig(configuration, "web1"));
            var af2  = new AzureFunctionsBusServiceClient(ServiceBusTransportParameters.FromConfig(configuration, "af2"));

            var services = new ServiceCollection();

            ConfigureServices(services);

            services.AddSingleton(web1);
            services.AddSingleton(af2);
            IServiceProvider provider = services.BuildServiceProvider();

            var microservice = new MessageBusMicroservice(new MicroserviceOptions <MessageBusMicroserviceOptions>()
            {
                ServiceId        = serviceId,
                CommandsRegistry = provider.GetRequiredService <IMicroserviceCommandsRegistry>(),
                TransportOptions = new MessageBusMicroserviceOptions
                {
                    EntryPointParameters = EntryPointParameters.FromConfig(configuration, serviceId)
                }
            });

            microservice.Start();

            Console.WriteLine($"Service '{serviceId}' is working, press any key to exit...");
            Console.ReadKey();
        }
Ejemplo n.º 2
0
        static async Task Main(string[] args)
        {
            var builder = new ConfigurationBuilder()
                          .AddJsonFile("appsettings.json")
                          .AddEnvironmentVariables();
            var configuration = builder.Build();

            var postProcessClient = new PostProcessOrderClient(ServiceBusTransportParameters.FromConfig(configuration, "post-process-group"));

            WritePrompt();

            while (true)
            {
                Console.Write("> ");
                var line = Console.ReadLine()?.ToLower();

                if (line == "q")
                {
                    break;
                }

                switch (line)
                {
                case "h":
                    WritePrompt();
                    break;

                case { } s when int.TryParse(s, out var id):
                    Console.WriteLine($"Sending command for order id = {id}");

                    await postProcessClient.PostProcessOrder(id);

                    Console.WriteLine($"Command sent, time = {DateTime.Now}");
                    break;
                }
            }

            Console.WriteLine("Terminating...");
        }
Ejemplo n.º 3
0
 public PostProcessOrderClient(ServiceBusTransportParameters transportParameters) : base(
         new ServiceBusTransport(transportParameters))
 {
 }
Ejemplo n.º 4
0
 public AzureFunctionsBusServiceClient(ServiceBusTransportParameters transportParameters)
     : base(new ServiceBusTransport(transportParameters))
 {
 }