public static async Task ProcessMessage(TextWriter log, ILogger logger) { var forwarder = new BlobStorageForwarder(new MessagesBlobStorageRepository(logger), logger); var token = new CancellationToken(); var telemetryClient = new TelemetryClient(TelemetryConfiguration.Active); var bus = Bus.Factory.CreateUsingAzureServiceBus(cfg => { var connectionString = ConfigurationManager.ConnectionStrings["ServiceBusConnectionString"] .ConnectionString; cfg.Host(connectionString, configurator => { }); cfg.ReceiveEndpoint("BlobStorageForwarder", e => { e.Consumer(typeof(StatusUpdateConsumer), type => new StatusUpdateConsumer(forwarder, logger, telemetryClient)); }); }); await bus.StartAsync(token); }
internal StatusUpdateConsumer(BlobStorageForwarder forwarder, ILogger logger, TelemetryClient telemetryClient) { _forwarder = forwarder; _logger = logger; _telemetryClient = telemetryClient; }