public static async Task HeartbeatProcessor(TextWriter log, ILogger logger) { _processor = new HeartbeatProcessor(new AzureTableStorageHeartbeatRepository(logger), new ConsoleNotificationAccess(logger)); var token = new CancellationToken(); var bus = Bus.Factory.CreateUsingAzureServiceBus(cfg => { var connectionString = ConfigurationManager.ConnectionStrings["ServiceBusConnectionString"] .ConnectionString; cfg.Host(connectionString, configurator => { }); cfg.ReceiveEndpoint("HeartbeatProcessor", e => { e.Consumer(typeof(StatusUpdateConsumer), type => new StatusUpdateConsumer(_processor, logger)); }); }); await bus.StartAsync(token); await _processor.Run(token); }
internal StatusUpdateConsumer(HeartbeatProcessor processor, ILogger logger) { _processor = processor; _logger = logger; }