public static void Main(string[] args) { ServiceConfigurations.ServiceConfigMapping[ServiceConfigurations.ServiceName.ProductionService].RealType = typeof(ProductionService.ProductionService); ServiceConfigurations.ServiceConfigMapping[ServiceConfigurations.ServiceName.OrderService].RealType = typeof(OrderService.OrderService); try { foreach (var dictItem in ServiceConfigurations.ServiceConfigMapping) { StartHosting(dictItem.Value); } foreach (var dictItem in ServiceConfigurations.ServiceConfigMapping) { var service = ServiceConfigurations.CreateEventingClient(dictItem.Key); service.InitEventListening(); } Console.ReadKey(); } catch (Exception ex) { Console.WriteLine("There is an issue with a service: " + ex.Message); Console.ReadKey(); } }
static void Main(string[] args) { Console.WriteLine("Iniciando console Aplication Engenhos Devops"); Console.WriteLine("Carregando configurações..."); var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile($"appsettings.json"); var configuration = builder.Build(); _configurations = new ServiceConfigurations(); new ConfigureFromConfigurationOptions <ServiceConfigurations>( configuration.GetSection("ServiceConfigurations")) .Configure(_configurations); _timer = new Timer( callback: TimerElapsed, state: null, dueTime: 0, period: 3000); // Tratando o encerramento da aplicação com // Control + C ou Control + Break Console.CancelKeyPress += (o, e) => { Console.WriteLine("Saindo..."); // Libera a continuação da thread principal waitHandle.Set(); }; waitHandle.WaitOne(); }
public WorkItemService(ServiceConfigurations settings) { var client = new MongoClient(settings.ConnectionString); var database = client.GetDatabase(settings.DatabaseName); _workItens = database.GetCollection <WorkItemResult>(settings.WorkItensCollectionName); }
public WcfServerConfigurator AddService <TService>(Action <WcfServiceConfigurator <TService> > service) where TService : class { var wcfServiceConfigurator = new WcfServiceConfigurator <TService>(); service(wcfServiceConfigurator); ServiceConfigurations.Add(wcfServiceConfigurator.GetConfiguration()); return(this); }
public Worker(ILogger <Worker> logger, IConfiguration configuration, IRestService clienteService) { _logger = logger; serviceConfiguration = new ServiceConfigurations(); _clienteService = clienteService; new ConfigureFromConfigurationOptions <ServiceConfigurations>( configuration.GetSection("ServiceConfigurations")) .Configure(serviceConfiguration); }
public void AddSetsLogger() { var plugin = Substitute.For <IPlugin>(); var logger = Substitute.For <ILogger>(); var configurations = new ServiceConfigurations(logger); configurations.Add(plugin); plugin.Logger.Should().Be(logger); }
public Worker(ILogger <Worker> logger, IConfiguration configuration) { _logger = logger; _serviceConfigurations = new ServiceConfigurations(); new ConfigureFromConfigurationOptions <ServiceConfigurations>( configuration.GetSection("ServiceConfigurations")) .Configure(_serviceConfigurations); }
public void Download(ServiceConfigurations serviceConfigurations) { var connectionInfo = new ConnectionInfo(serviceConfigurations.Host, serviceConfigurations.Username, new PasswordAuthenticationMethod(serviceConfigurations.Username, serviceConfigurations.Password)); using (var client = new SftpClient(connectionInfo)) { client.Connect(); DownloadDirectory(client, serviceConfigurations.Source, serviceConfigurations.Destination); } }
public WorkerService1(ILogger <WorkerService1> logger, IConfiguration configuration) { _logger = logger; _serviceConfigurations = new ServiceConfigurations(); new ConfigureFromConfigurationOptions <ServiceConfigurations>( configuration.GetSection("ServiceConfigurations")) .Configure(_serviceConfigurations); _logger.LogWarning($"Worker Service 1 Interval in Seconds: {_serviceConfigurations.WorkerService1_IntervalInSeconds}"); }
internal static ServiceConfigurations Find(Configuration config, ILogger logger) { logger.Information("Loading configuration", PluginDir); var configurations = new ServiceConfigurations(logger); AddInternalConfigurations(); AddExternalPlugins(); return(configurations); void AddInternalConfigurations() { logger.Information("Loading internal service configuration", PluginDir); var loader = Factory.CreateLoader(config, logger).Result; var addData = new SetData(loader, logger); configurations.Add(new Singletons()); configurations.Add(addData); if (config.EnablePrometheusMonitoring) { configurations.Add(new ServiceConfiguration.Prometheus()); } configurations.Add(new HealthCheck(addData, config.EnablePrometheusMonitoring)); configurations.Add(new Swagger()); configurations.Add(new ExceptionHandler()); } void AddExternalPlugins() { if (!config.EnableCustomPlugins) { return; } try { logger.Information("Loading external plugins from {path}", PluginDir); var conventions = new ConventionBuilder(); conventions.ForTypesDerivedFrom <IPlugin>().Export <IPlugin>().Shared(); var containerConfig = new ContainerConfiguration().WithAssembliesInPath(PluginDir, conventions); using var container = containerConfig.CreateContainer(); var externalPlugins = container.GetExports <IPlugin>(); configurations.AddRange(externalPlugins); } catch (Exception e) { logger.Warning(e, "Error loading plugins from {path}", PluginDir); } } }
public void ConfigureEndpointsOnAllPlugins() { var plugin1 = Substitute.For <IPlugin>(); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.ConfigureEndpoints(Substitute.For <IEndpointRouteBuilder>()); plugin1.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); plugin2.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); }
public void ConfigureServicesOnAllPlugins() { var plugin1 = Substitute.For <IPlugin>(); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.ConfigureServices(Substitute.For <IServiceCollection>()); plugin1.ReceivedWithAnyArgs().ConfigureServices(Arg.Any <IServiceCollection>()); plugin2.ReceivedWithAnyArgs().ConfigureServices(Arg.Any <IServiceCollection>()); }
public void AddRangeSetsLogger() { var plugin1 = Substitute.For <IPlugin>(); var plugin2 = Substitute.For <IPlugin>(); var logger = Substitute.For <ILogger>(); var configurations = new ServiceConfigurations(logger); configurations.AddRange(new [] { plugin1, plugin2 }); plugin1.Logger.Should().Be(logger); plugin2.Logger.Should().Be(logger); }
public StockQuoteService(ILogger <StockQuoteService> logger, IOptions <ServiceConfigurations> serviceConfigurations, INotification notification, IConfiguration args) { _serviceConfigurations = serviceConfigurations.Value; _logger = logger; _notification = notification; _ativo = args.GetValue <string>("ativo"); _saleValue = args.GetValue <string>("saleValue"); _purchaseValue = args.GetValue <string>("purchaseValue"); _apiClient = RestService.For <IStockQuoteApi>(_serviceConfigurations.Api.BaseUrl); }
private void RegisterDependencies() { var services = new ServiceCollection(); var configurations = new ServiceConfigurations(Configuration); services.AddSingleton <IRabbitConfigurations>(configurations); services.AddSingleton <IServiceConfigurations>(configurations); services.AddSingleton <IRabbitConsumer, RabbitConsumer>(); services.AddSingleton <IStockTickerManager, StockTickerManager>(); services.AddSingleton <IRedditConsumer, RedditConsumer>(); services.AddSingleton <IRabbitPublisher, RabbitPublisher>(); services.AddSingleton <ISentimentAnalysis, SentimentAnalysis>(); _serviceProvider = services.BuildServiceProvider(true); }
public void ConfigureAllPlugins() { var plugin1 = Substitute.For <IPlugin>(); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.Configure(Substitute.For <IApplicationBuilder>(), Substitute.For <IWebHostEnvironment>()); plugin1.ReceivedWithAnyArgs().Configure(Substitute.For <IApplicationBuilder>(), Substitute.For <IWebHostEnvironment>()); plugin2.ReceivedWithAnyArgs().Configure(Substitute.For <IApplicationBuilder>(), Substitute.For <IWebHostEnvironment>()); }
private void RegisterServices() { IServiceCollection services = new ServiceCollection(); var configurations = new ServiceConfigurations(Configuration); services.AddSingleton <IRabbitConfigurations>(configurations); services.AddSingleton <IServiceConfigurations>(configurations); services.AddSingleton <IRedditMonitoring, RedditMonitoring>(); services.AddSingleton <ITwitterMonitoring, TwitterMonitoring>(); services.AddSingleton <IRabbitPublisher, RabbitPublisher>(); services.AddSingleton <ITwitterClient>(new TwitterClient(BuildTwitterCreds(configurations))); services.AddHealthChecks(); _serviceProvider = services.BuildServiceProvider(true); }
public static ServiceCollection ConfigureServices() { var services = new ServiceCollection(); services.AddLogging(builder => { builder.AddSerilog(_logger, true); }); RepositoryDi.ConfigureServices(services, _configuration); InitializeElasticSearch(services, _configuration); ServiceConfigurations.ConfigureServices(services, _configuration); return(services); }
public void ConfigureEndpointsOnAllPluginsWhenOneThrowsException() { var plugin1 = Substitute.For <IPlugin>(); plugin1.When(p => p.ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>())) .Do(x => { throw new Exception("Fail Plugin1"); }); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.ConfigureEndpoints(Substitute.For <IEndpointRouteBuilder>()); plugin1.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); plugin2.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); }
private ServiceConfigurations BuscarConfiguracoes() { ServiceConfigurations serviceConfigurations = new ServiceConfigurations(); var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile($"appsettings.json"); var configuration = builder.Build(); new ConfigureFromConfigurationOptions <ServiceConfigurations>( configuration.GetSection("ServiceConfigurations")) .Configure(serviceConfigurations); return(serviceConfigurations); }
public Worker(IHostEnvironment env, IConfiguration configuration, ILogger <Worker> logger) { _logger = logger; var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true); builder.AddEnvironmentVariables(); configuration = builder.Build(); _serviceConfigurations = new ServiceConfigurations(); new ConfigureFromConfigurationOptions <ServiceConfigurations>( configuration.GetSection("ServiceConfigurations")) .Configure(_serviceConfigurations); }
public void ConfigureAllPluginsWhenOneThrowsException() { var plugin1 = Substitute.For <IPlugin>(); plugin1.When(p => p.Configure(Arg.Any <IApplicationBuilder>(), Arg.Any <IWebHostEnvironment>())) .Do(x => { throw new Exception("Fail Plugin1"); }); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.Configure(Substitute.For <IApplicationBuilder>(), Substitute.For <IWebHostEnvironment>()); plugin1.ReceivedWithAnyArgs().Configure(Substitute.For <IApplicationBuilder>(), Substitute.For <IWebHostEnvironment>()); plugin2.ReceivedWithAnyArgs().Configure(Substitute.For <IApplicationBuilder>(), Substitute.For <IWebHostEnvironment>()); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { //Automapper Configuration var config = new AutoMapper.MapperConfiguration(cfg => { cfg.AddProfile(new MappingProfile()); }); var mapper = config.CreateMapper(); services.AddSingleton(mapper); //Application Services and Repositories RepositoryConfiguration.Configure(services); ServiceConfigurations.Configure(services); services.AddDbContext <AllianzDBContext>(options => options.UseSqlServer( Configuration.GetConnectionString("DefaultConnection"))); services.AddIdentity <IdentityUser, IdentityRole>(options => options.SignIn.RequireConfirmedAccount = true) .AddEntityFrameworkStores <AllianzDBContext>(); services.AddControllersWithViews(); services.AddRazorPages(); }
public void ConfigureServices(IServiceCollection services) { services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>(); services.AddAutoMapper(typeof(Startup)); ServiceConfigurations.ConfigureIdentity(services, Configuration); ServiceConfigurations.ConfigureElmah(services, Configuration); ServiceConfigurations.ConfigureSerilog(services, Configuration); var emailConfig = Configuration .GetSection("EmailConfiguration") .Get <EmailConfiguration>(); //health checks services.AddHealthCheckService(Configuration); services.AddHealthChecksUI(); services.AddSingleton(emailConfig); services.AddControllersWithViews(); services.AddRazorPages(); services.AddTransient <IdentityManager>(); services.AddTransient <IEmailSender, EmailSender>(); // job schedule registrations services.AddSingleton <BackgroundWorker>(); }
public Context(IOptions <ServiceConfigurations> optionsAccs) { _options = optionsAccs.Value; _connection = GetConnection(); }
static void Main(string[] args) { var parts = Db.Parts; var modules = Db.Modules; var configurations = Db.Configurations; ServiceParts serviceParts = new ServiceParts(); ServiceModules serviceModules = new ServiceModules(); ServiceConfigurations serviceConfiguration = new ServiceConfigurations(); List <Part> cartP = new List <Part>(); List <Module> cartM = new List <Module>(); List <Configuration> cartC = new List <Configuration>(); while (true) { Console.Clear(); Console.WriteLine("Welcome!"); Console.WriteLine("Choose Action:"); Console.WriteLine("1. Part"); Console.WriteLine("2. Module"); Console.WriteLine("3. Configuration"); int input = int.Parse(Console.ReadLine()); if (input == 1) { while (true) { Console.Clear(); UiService.ChooseAction(); int input1 = int.Parse(Console.ReadLine()); if (input1 == 1) { var nesto = serviceParts.ShowProductsByPart(parts, cartP, cartM, cartC); if (!nesto) { break; } } else if (input1 == 2) { var nesto = serviceParts.ShowByPriceOfPart(parts, cartP, cartM, cartC); if (!nesto) { break; } } else if (input1 == 3) { var nesto = serviceParts.ShowByTypeOfPart(parts, cartP, cartM, cartC); if (!nesto) { break; } } else { Console.WriteLine("Enter valid action! Press any key."); Console.ReadLine(); continue; } } } else if (input == 2) { while (true) { UiService.ChooseAction(); int input1 = int.Parse(Console.ReadLine()); if (input1 == 1) { var nesto = serviceModules.ShowProductsByModules(modules, cartP, cartM, cartC); if (!nesto) { break; } } else if (input1 == 2) { var nesto = serviceModules.ShowByPriceOfModules(modules, cartP, cartM, cartC); if (!nesto) { break; } } else if (input1 == 3) { var nesto = serviceModules.ShowByTypeModules(modules, cartP, cartM, cartC); if (!nesto) { break; } } else { Console.WriteLine("Enter valid action! Press any key."); Console.ReadLine(); continue; } } } else if (input == 3) { while (true) { UiService.ChooseAction(); int input1 = int.Parse(Console.ReadLine()); if (input1 == 1) { var nesto = serviceConfiguration.ShowProductsByConfigurations(configurations, cartP, cartM, cartC); if (!nesto) { break; } } else if (input1 == 2) { var nesto = serviceConfiguration.ShowByPriceOfConfigurations(configurations, cartP, cartM, cartC); if (!nesto) { break; } } else if (input1 == 3) { var nesto = serviceConfiguration.ShowByPriceOfConfigurations(configurations, cartP, cartM, cartC); if (!nesto) { break; } } else { Console.WriteLine("Enter valid action! Press any key."); Console.ReadLine(); continue; } } } else { Console.WriteLine("Not a valid action!"); Console.WriteLine("Press any key to try again!"); Console.ReadLine(); continue; } } }
/// <summary> /// /// </summary> /// <param name="services"></param> protected override void RegisterTypes(IServiceCollection services) { base.RegisterTypes(services); ServiceConfigurations.RegisterTypes(services); }
public EmailService(IOptions <ServiceConfigurations> serviceConfigurations) { _serviceConfigurations = serviceConfigurations.Value; ValidateEmails(); }