private void RegisterServices(IServiceCollection services) { var commitmentsClientApiConfiguration = new CommitmentsClientApiConfiguration(); Configuration.GetSection(nameof(CommitmentsClientApiConfiguration)).Bind(commitmentsClientApiConfiguration); services.AddSingleton(commitmentsClientApiConfiguration); services.AddSingleton <ICommitmentsApiClientFactory, CommitmentsApiClientFactory>(); services.AddTransient(x => x.GetService <ICommitmentsApiClientFactory>().CreateClient()); services.AddTransient <CommitmentsService>(); var accountsApiConfiguration = new AccountApiConfiguration(); Configuration.GetSection(nameof(AccountApiConfiguration)).Bind(accountsApiConfiguration); services.AddSingleton <IAccountApiConfiguration>(accountsApiConfiguration); services.AddTransient <IAccountApiClient, AccountApiClient>(); services.AddTransient <EmployerService>(); var roatpApiConfiguration = new RoatpApiClientSettings(); Configuration.GetSection(nameof(RoatpApiClientSettings)).Bind(roatpApiConfiguration); services.AddSingleton(roatpApiConfiguration); services.AddSingleton <IRoatpApiHttpClientFactory, RoatpApiHttpClientFactory>(); services.AddTransient(x => x.GetService <IRoatpApiHttpClientFactory>().CreateClient()); services.AddTransient <IRoatpService, RoatpService>(); services.AddTransient <ProviderService>(); services.AddTransient <DataLockService>(); services.AddTransient <LearnerReportProvider>(); services.AddTransient <ITimeProvider, TimeProvider>(); }
public RoatpApiHttpClientFactory(RoatpApiClientSettings settings) { _settings = settings; }