private void ConfiguraVariaveisAmbiente(IServiceCollection services) { var configuracaoRabbitOptions = new ConfiguracaoRabbitOptions(); Configuration.GetSection(nameof(ConfiguracaoRabbitOptions)).Bind(configuracaoRabbitOptions, c => c.BindNonPublicProperties = true); var rabbitConn = new ConnectionFactory { HostName = configuracaoRabbitOptions.HostName, UserName = configuracaoRabbitOptions.UserName, Password = configuracaoRabbitOptions.Password, VirtualHost = configuracaoRabbitOptions.VirtualHost }; services.AddSingleton(rabbitConn); }
public static void AddRabbit(this IServiceCollection services, ConfiguracaoRabbitOptions configuracaoRabbitOptions) { var factory = new ConnectionFactory { HostName = configuracaoRabbitOptions.HostName, UserName = configuracaoRabbitOptions.UserName, Password = configuracaoRabbitOptions.Password, VirtualHost = configuracaoRabbitOptions.Virtualhost, AutomaticRecoveryEnabled = true, RequestedHeartbeat = TimeSpan.FromSeconds(30) }; var conexaoRabbit = factory.CreateConnection(); IModel _channel = conexaoRabbit.CreateModel(); services.AddSingleton(conexaoRabbit); services.AddSingleton(_channel); }
public WorkerRabbitMQ(IConnection conexaoRabbit, IServiceScopeFactory serviceScopeFactory, IMetricReporter metricReporter, ServicoTelemetria servicoTelemetria, ConsumoDeFilasOptions consumoDeFilasOptions, ConfiguracaoRabbitOptions configuracaoRabbitOptions, TelemetriaOptions telemetriaOptions, IMediator mediator) { this.conexaoRabbit = conexaoRabbit ?? throw new ArgumentNullException(nameof(conexaoRabbit)); this.serviceScopeFactory = serviceScopeFactory ?? throw new ArgumentNullException(nameof(serviceScopeFactory)); this.telemetriaOptions = telemetriaOptions ?? throw new ArgumentNullException(nameof(telemetriaOptions)); this.mediator = mediator ?? throw new ArgumentNullException(nameof(mediator)); this.metricReporter = metricReporter; this.servicoTelemetria = servicoTelemetria ?? throw new ArgumentNullException(nameof(servicoTelemetria)); this.consumoDeFilasOptions = consumoDeFilasOptions ?? throw new ArgumentNullException(nameof(consumoDeFilasOptions)); this.configuracaoRabbitOptions = configuracaoRabbitOptions ?? throw new ArgumentNullException(nameof(configuracaoRabbitOptions)); comandos = new Dictionary <string, ComandoRabbit>(); RegistrarUseCases(); }
private void ConfiguraVariaveisAmbiente(IServiceCollection services) { var variaveisGlobais = new VariaveisGlobaisOptions(); Configuration.GetSection(VariaveisGlobaisOptions.Secao).Bind(variaveisGlobais, c => c.BindNonPublicProperties = true); var consumoDeFilasOptions = new ConsumoDeFilasOptions(); Configuration.GetSection(nameof(ConsumoDeFilasOptions)).Bind(consumoDeFilasOptions, c => c.BindNonPublicProperties = true); var gsaSyncOptions = new GsaSyncOptions(); Configuration.GetSection(nameof(GsaSyncOptions)).Bind(gsaSyncOptions, c => c.BindNonPublicProperties = true); RabbitOptions = new ConfiguracaoRabbitOptions(); Configuration.GetSection(ConfiguracaoRabbitOptions.Secao).Bind(RabbitOptions, c => c.BindNonPublicProperties = true); services.AddSingleton(variaveisGlobais); services.AddSingleton(consumoDeFilasOptions); services.AddSingleton(gsaSyncOptions); services.AddSingleton(RabbitOptions); }