Beispiel #1
0
        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>();
        }
Beispiel #2
0
 public RoatpApiHttpClientFactory(RoatpApiClientSettings settings)
 {
     _settings = settings;
 }