static void Main(string[] args)
        {
            Console.WriteLine("Transaction Coordinator: Start Process - press any key");
            Console.ReadKey();

            IConfiguration configuration = new ConfigurationBuilder()
                                           .AddJsonFile("appsettings.json", true, true)
                                           .AddUserSecrets <Program>()
                                           .Build();

            string connectionString = configuration.GetValue <string>("ConnectionString");

            _queueClient = new QueueClient(connectionString, "BookingQueue");

            var messageHandlerOptions = new MessageHandlerOptions(ExceptionHandler);

            messageHandlerOptions.AutoComplete = false;

            _queueClient.RegisterMessageHandler(handleMessage, messageHandlerOptions);

            var serviceProvider = new ServiceCollection()
                                  .AddSingleton <IBookingRequestHandler, BookingRequestHandler>(srv =>
            {
                return(new BookingRequestHandler(connectionString, srv.GetService <IHttpClientFactory>()));
            })
                                  .AddHttpClient()
                                  .BuildServiceProvider();

            _httpClientFactory     = serviceProvider.GetService <IHttpClientFactory>();
            _bookingRequestHandler = serviceProvider.GetService <IBookingRequestHandler>();

            Console.WriteLine("Coordinator started...");
            Console.WriteLine("Press any key to exit");
            Console.ReadKey();
        }
Beispiel #2
0
 public BookMeetingConsumer(IBookingRequestHandler handler)
 {
     _handler = handler;
 }