public IBusControl ConfigureBus(Action <IRabbitMqBusFactoryConfigurator, IRabbitMqHost> registrationAction = null) { var appConfigurationRoot = new AppConfigurationRootProvider(); var mqServerConfiguration = ServerConfigurationHelper.Get(); var busFactory = Bus.Factory.CreateUsingRabbitMq(cfg => { var host = cfg.Host(new Uri(mqServerConfiguration.Uri), hst => { hst.Username(mqServerConfiguration.Username); hst.Password(mqServerConfiguration.Password); }); registrationAction?.Invoke(cfg, host); }); return(busFactory); }
static void Main(string[] args) { var appConfigurationRoot = new AppConfigurationRootProvider().Get(); var serverConfigurationHelper = new ServerConfigurationHelper(appConfigurationRoot); var bus = new BusConfigurator(serverConfigurationHelper).ConfigureBus((cfg, host) => { cfg.ReceiveEndpoint(host, OrderNotificationConstants.OrderNotificationServiceQueue, e => { e.Consumer <OrderNotificationConsumer>(); }); }); bus.Start(); Console.WriteLine("Listening...", Color.Cyan); Console.ReadKey(); bus.Stop(); }