public void ConfigureConsumer <TEvent>() where TEvent : class, new() { _busControl.ConnectReceiveEndpoint(typeof(TEvent).Name + "-queue", configurator => { var createFactory = new MessageHandler <TEvent>(_serviceProvider.GetService <IMessageHandler <TEvent> >()); configurator.Consumer(typeof(MessageHandler <TEvent>), _ => createFactory); }); }
private static void ConfigureBus(IBusControl bus, Container container, FeatureConfiguration <MessageConsumptionFeatureOptions> featureConfiguration) { var queueName = featureConfiguration.FeatureOptions.QueueName; bus.ConnectReceiveEndpoint(queueName, configurator => { configurator.Consumer <CustomerAddedConsumer>(container); //configurator.Consumer<ReservationConsumer<ReservationPlaced>>(container); //configurator.Consumer<ReservationConsumer<ReservationUsed>>(container); //configurator.Consumer<ReservationConsumer<ReservationCancelled>>(container); //configurator.Consumer<InvoiceAddedConsumer>(container); //configurator.Consumer<InvoiceDueDateUpdatedConsumer>(container); //configurator.Consumer<InvoiceWorkFlowUpdatedConsumer>(container); //configurator.Consumer<VoucherAddedConsumer>(container); //configurator.Consumer<VoucherCheckOffConsumer>(container); //configurator.Consumer<CustomerAnonymizedConsumer>(container); //configurator.Consumer<ReservationAdditionalDataConsumer>(container); //if (featureConfiguration.FeatureOptions.IsCleanupActive) //{ // configurator.Consumer<CustomerDataCleanupConsumer>(container); //} //configurator.UseMessageRetry(r => r.Immediate(5)); }); }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { var paymentHandler = busControl.ConnectReceiveEndpoint(queueSettings.ReceiveQueueName, x => { x.Consumer <ProcessPaymentHandler>(serviceProvider); }); await paymentHandler.Ready; }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { var productChangeHandler = _busControl.ConnectReceiveEndpoint("order", x => { x.Consumer <OrderMessageConsumer>(); }); await productChangeHandler.Ready; }
private static void ConfigureBus(IBusControl bus, Container container, FeatureConfiguration <OrderMessageConsumptionFeatureOptions> featureConfiguration) { var queueName = featureConfiguration.FeatureOptions.QueueName; bus.ConnectReceiveEndpoint(queueName, configurator => { configurator.Consumer <OrderAddedConsumer>(container); //configurator.UseMessageRetry(r => r.Immediate(5)); }); }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { try { var mailChangeHandler = _busControl.ConnectReceiveEndpoint(_queueSettings.QueueName, endpoint => { endpoint.Consumer(() => new MailChangedConsumer(_serviceProvider)); }); await mailChangeHandler.Ready; } catch (Exception ex) { _logger.LogError("DataProcessor cannot be started.", ex); } }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { try { var hostReceiveEndpointHandler = _busControl.ConnectReceiveEndpoint("ProductListQueue", x => { x.Consumer <ProductIndexConsumer>(_serviceProvider); }); await hostReceiveEndpointHandler.Ready; } catch (Exception ex) { _logger.LogError("DWHConsumer error", ex); } }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { try { _logger.LogInformation("PaymentWorker started"); var hostReceiveEndpointHandler = _busControl.ConnectReceiveEndpoint("payments", x => { x.Consumer <PaymentCreatedConsumer>(_serviceProvider); }); await hostReceiveEndpointHandler.Ready; } catch (Exception ex) { _logger.LogError("PaymentWorker error", ex); } }
private void RegisterOnQueue(string queueName, Action <IReceiveEndpointConfigurator> registrationCb, QueueType queueType = QueueType.Regular) { queueName = $"{queueName}_{Dns.GetHostName()}"; if (queueType == QueueType.Error) { queueName = $"{queueName}_error"; } _busControl.ConnectReceiveEndpoint(queueName, ep => { ep.UseMessageRetry(retry => retry.Exponential( 10, TimeSpan.FromSeconds(2), TimeSpan.FromMinutes(5), TimeSpan.FromSeconds(10))); registrationCb(ep); }); }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { try { //Подписка на информацию шины данных var busSettings = _configuration.GetSection("BusSettings"); var userChangeHandler = _busControl.ConnectReceiveEndpoint(busSettings["QueueName"], x => { x.Consumer <Consumer>(_serviceProvider); }); await userChangeHandler.Ready; _logger.LogWarning("DataBusReceiverWorker запущен!"); } catch (Exception ex) { _logger.LogError("DataBusReceiverWorker не запущен.", ex); } }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { try { var dbContextService = _serviceProvider.GetService <IDataContext>(); dbContextService.EnsureDbCreated(); _logger.LogInformation("DWHConsumer started"); var hostReceiveEndpointHandler = _busControl.ConnectReceiveEndpoint("DWHProjectQueue", x => { x.Consumer <DWHConsumer>(_serviceProvider); }); await hostReceiveEndpointHandler.Ready; } catch (Exception ex) { _logger.LogError("DWHConsumer error", ex); } }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { try { var dbContextService = (IDataContext)_serviceProvider.GetService(typeof(IDataContext)); dbContextService.EnsureDbCreated(); _logger.LogInformation("DataProcessor started!"); var projectChangeHandler = _busControl.ConnectReceiveEndpoint(_queueSettings.QueueName, x => { x.Consumer <ProjectChangedConsumer>(_serviceProvider); }); await projectChangeHandler.Ready; } catch (Exception ex) { _logger.LogError("DataProcessor cannot be started.", ex); } }
public HostReceiveEndpointHandle ConnectReceiveEndpoint(IEndpointDefinition definition, IEndpointNameFormatter endpointNameFormatter, Action <IReceiveEndpointConfigurator> configureEndpoint = null) { return(_busControl.ConnectReceiveEndpoint(definition, endpointNameFormatter, configureEndpoint)); }