private static void RegisterGrafanaHttpClient(IServiceCollection collection, DeveloperConfig developerConfig) { if (developerConfig.Enabled && developerConfig.UseDevHttpClient) { collection.AddSingleton <IGrafanaHttpClient, DevGrafanaHttpClient>(); return; } collection.AddSingleton <IGrafanaHttpClient, GrafanaHttpClient>(); }
private static void RegisterGrafanaUrlBuilder(IServiceCollection collection, DeveloperConfig developerConfig) { if (developerConfig.Enabled && developerConfig.UseDevGrafanaUrlBuilder) { collection.AddSingleton <IGrafanaUrlBuilder, DevGrafanaUrlBuilder>(); return; } collection.AddSingleton <IGrafanaUrlBuilder, GrafanaUrlBuilder>(); }
private static void RegisterGrafanaCliConfig( IServiceCollection collection, IConfiguration configuration, DeveloperConfig developerConfig) { var grafanaCliConfig = new GrafanaCliConfig(); configuration.Bind("GrafanaCli", grafanaCliConfig); grafanaCliConfig.DevConfig = developerConfig; collection.AddSingleton(grafanaCliConfig); }
/// <summary> /// Get a specific developer by id /// </summary> /// <param name="id"></param> /// <returns></returns> /// // GET: api/developers/5 public HttpResponseMessage Get(int id) { DeveloperConfig devcon = new DeveloperConfig(); Developer develop = devcon.getDevelopers(id); HttpResponseMessage response = null; if (develop == null) { response = new HttpResponseMessage(HttpStatusCode.NotFound); } else { response = Request.CreateResponse(HttpStatusCode.OK, develop); } return(response); }
private static void SetupDIContainer(DeveloperConfig developerConfig = null) { var collection = new ServiceCollection(); if (developerConfig == null) { developerConfig = new DeveloperConfig(); } var config = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) .Build(); collection .AddSingleton <IFileAbstraction, FileAbstraction>() .AddSingleton <IDirectoryAbstraction, DirectoryAbstraction>() .AddSingleton <IEnvironmentAbstraction, EnvironmentAbstraction>() .AddSingleton <IFileSystemHelper, FileSystemHelper>() .AddSingleton <IPathAbstraction, PathAbstraction>() .AddSingleton <IGrafanaClient, GrafanaClient>() .AddSingleton <IPathBuilder, PathBuilder>() .AddSingleton <IJsonHelper, JsonHelper>() .AddSingleton(typeof(ILoggerAdapter <>), typeof(LoggerAdapter <>)) .AddLogging(loggingBuilder => { loggingBuilder.ClearProviders(); loggingBuilder.SetMinimumLevel(LogLevel.Trace); loggingBuilder.AddNLog(config); }); RegisterGrafanaCliConfig(collection, config, developerConfig); RegisterGrafanaUrlBuilder(collection, developerConfig); RegisterGrafanaHttpClient(collection, developerConfig); _provider = collection.BuildServiceProvider(); }
public DeveloperConfigBuilder() { _config = new DeveloperConfig(); }