public ProviderVariationsApplication(IPublishingResiliencePolicies resiliencePolicies, ISpecificationsApiClient specificationsApiClient, IPoliciesApiClient policiesApiClient, ICacheProvider cacheProvider, IProfilingApiClient profilingApiClient, IReProfilingRequestBuilder reProfilingRequestBuilder, IReProfilingResponseMapper reProfilingResponseMapper) { Guard.ArgumentNotNull(resiliencePolicies, nameof(resiliencePolicies)); Guard.ArgumentNotNull(resiliencePolicies.SpecificationsApiClient, "resiliencePolicies.SpecificationsApiClient"); Guard.ArgumentNotNull(resiliencePolicies.PoliciesApiClient, "resiliencePolicies.PoliciesApiClient"); Guard.ArgumentNotNull(resiliencePolicies.CacheProvider, "resiliencePolicies.CacheProvider"); Guard.ArgumentNotNull(specificationsApiClient, nameof(specificationsApiClient)); Guard.ArgumentNotNull(policiesApiClient, nameof(policiesApiClient)); Guard.ArgumentNotNull(cacheProvider, nameof(cacheProvider)); Guard.ArgumentNotNull(profilingApiClient, nameof(profilingApiClient)); Guard.ArgumentNotNull(reProfilingRequestBuilder, nameof(reProfilingRequestBuilder)); Guard.ArgumentNotNull(reProfilingResponseMapper, nameof(reProfilingResponseMapper)); SpecificationsApiClient = specificationsApiClient; ResiliencePolicies = resiliencePolicies; PoliciesApiClient = policiesApiClient; CacheProvider = cacheProvider; ProfilingApiClient = profilingApiClient; ReProfilingRequestBuilder = reProfilingRequestBuilder; ReProfilingResponseMapper = reProfilingResponseMapper; }
public PublishedProviderProfilingService(IPublishedFundingRepository publishedFundingRepository, IPublishedProviderErrorDetection publishedProviderErrorDetection, IProfilingService profilingService, IPublishedProviderVersioningService publishedProviderVersioningService, ISpecificationsApiClient specificationsApiClient, IReProfilingRequestBuilder profilingRequestBuilder, IProfilingApiClient profiling, IPoliciesService policiesService, IReProfilingResponseMapper reProfilingResponseMapper, ILogger logger, IPublishingResiliencePolicies publishingResiliencePolicies) { Guard.ArgumentNotNull(publishedFundingRepository, nameof(publishedFundingRepository)); Guard.ArgumentNotNull(publishedProviderErrorDetection, nameof(publishedProviderErrorDetection)); Guard.ArgumentNotNull(profilingService, nameof(profilingService)); Guard.ArgumentNotNull(publishedProviderVersioningService, nameof(publishedProviderVersioningService)); Guard.ArgumentNotNull(specificationsApiClient, nameof(specificationsApiClient)); Guard.ArgumentNotNull(profilingRequestBuilder, nameof(profilingRequestBuilder)); Guard.ArgumentNotNull(profiling, nameof(profiling)); Guard.ArgumentNotNull(publishingResiliencePolicies?.PublishedFundingRepository, nameof(publishingResiliencePolicies.PublishedFundingRepository)); Guard.ArgumentNotNull(publishingResiliencePolicies?.SpecificationsApiClient, nameof(publishingResiliencePolicies.SpecificationsApiClient)); Guard.ArgumentNotNull(publishingResiliencePolicies?.ProfilingApiClient, nameof(publishingResiliencePolicies.ProfilingApiClient)); Guard.ArgumentNotNull(logger, nameof(logger)); Guard.ArgumentNotNull(policiesService, nameof(policiesService)); Guard.ArgumentNotNull(reProfilingResponseMapper, nameof(reProfilingResponseMapper)); _publishedFundingRepository = publishedFundingRepository; _publishedProviderErrorDetection = publishedProviderErrorDetection; _profilingService = profilingService; _publishedProviderVersioningService = publishedProviderVersioningService; _specificationsApiClient = specificationsApiClient; _profilingRequestBuilder = profilingRequestBuilder; _profiling = profiling; _publishingResiliencePolicy = publishingResiliencePolicies.PublishedFundingRepository; _specificationResiliencePolicy = publishingResiliencePolicies.SpecificationsApiClient; _profilingPolicy = publishingResiliencePolicies.ProfilingApiClient; _logger = logger; _policiesService = policiesService; _reProfilingResponseMapper = reProfilingResponseMapper; }