public PlatformConnectionUpdateHandler(IAppManager appManager, IPlatformDataManager platformDataManager, IDocumentStore documentStore, IOptions <RebusConfiguration> rebusOptions, IBus bus, IMessageContext messageContext, ILogger <PlatformConnectionUpdateHandler> logger) { _appManager = appManager; _platformDataManager = platformDataManager; _documentStore = documentStore; _rebusConfiguration = rebusOptions.Value; _bus = bus; _messageContext = messageContext; _logger = logger; }
public FetchDataForPlatformConnectionHandler(IFreelancerDataFetcher freelancerDataFetcher, IGigPlatformDataFetcher gigPlatformDataFetcher, IOptions <RebusConfiguration> rebusOptions, IDocumentStore documentStore, IBus bus, IMessageContext messageContext, ILogger <FetchDataForPlatformConnectionHandler> logger) { _freelancerDataFetcher = freelancerDataFetcher; _gigPlatformDataFetcher = gigPlatformDataFetcher; _rebusConfiguration = rebusOptions.Value; _documentStore = documentStore; _bus = bus; _messageContext = messageContext; _logger = logger; }
protected void Application_Start() { SetupLogging(); log.InfoFormat("Application starting"); AreaRegistration.RegisterAllAreas(); BundleConfig.RegisterBundles(BundleTable.Bundles); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); container = new ContainerInitialiser().Create(); RebusConfiguration.Init(container); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { // Setup config var defaultConnection = Configuration.GetConnectionString("DefaultConnection"); var rebusConfig = new RebusConfiguration( Configuration["Rebus:Transport"], Configuration["Rebus:Subscription"], Configuration["Rebus:DefaultQueue"]); // Configure and register Rebus services.AddRebus(configure => configure .Logging(l => l.Console()) .Transport(t => t.UseSqlServer(defaultConnection, rebusConfig.Transport, rebusConfig.Transport)) .Subscriptions(s => s.StoreInSqlServer(defaultConnection, rebusConfig.Subscription))); services.AddMvc(); }
static void Main() { LogUtility.Initialise(); log = LogUtility.ForCurrentType(); var autoResetEvent = new AutoResetEvent(false); Console.CancelKeyPress += (sender, eventArgs) => { // cancel the cancellation to allow the program to shutdown cleanly eventArgs.Cancel = true; autoResetEvent.Set(); }; using (var container = new ContainerInitialiser().Create()) { RebusConfiguration.Init(container); Console.WriteLine("Application has started. Ctrl-C to end"); autoResetEvent.WaitOne(); log.InfoFormat("Shutting down service"); } }
static void Main(string[] args) { // 0. Setup configuration var configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json") .Build(); var defaultConnection = configuration.GetConnectionString("DefaultConnection"); var rebusConfig = new RebusConfiguration( configuration["Rebus:Transport"], configuration["Rebus:Subscription"], configuration["Rebus:DefaultQueue"]); // 1. Service registration pipeline... var services = new ServiceCollection(); services.AutoRegisterHandlersFromAssemblyOf <MessageHandler>(); // 1.1. Configure Rebus services.AddRebus(configure => configure .Logging(l => l.None()) .Transport(t => t.UseSqlServer(defaultConnection, rebusConfig.Transport, rebusConfig.DefaultQueue)) .Subscriptions(s => s.StoreInSqlServer(defaultConnection, rebusConfig.Subscription)) .Routing(r => r.TypeBased().Map <MessageTransport>(rebusConfig.DefaultQueue))); // 2. Application starting pipeline... var provider = services.BuildServiceProvider(); provider.UseRebus(); var bus = provider.GetRequiredService <IBus>(); Task.WaitAll(bus.Subscribe <MessageTransport>()); Console.ReadKey(); }
static void Main() { LogUtility.Initialise(); log = LogUtility.ForCurrentType(); var autoResetEvent = new AutoResetEvent(false); Console.CancelKeyPress += (sender, eventArgs) => { // cancel the cancellation to allow the program to shutdown cleanly eventArgs.Cancel = true; autoResetEvent.Set(); }; using (var container = new ContainerInitialiser().Create()) { RebusConfiguration.Init(container); Console.WriteLine("Application has started. Ctrl-C to end"); autoResetEvent.WaitOne(); log.InfoFormat("Shutting down service"); } using (var container = new ContainerInitialiser().Create()) { log.DebugFormat("Initialised container"); var starter = container.Resolve <IBusStarter>(); starter.Start(); DomainEvents.Configure(e => starter.Bus.Publish(e)); // main blocks here waiting for ctrl-C autoResetEvent.WaitOne(); log.InfoFormat("Shutting down"); } }