public ApproveService(IPublishedProviderStatusUpdateService publishedProviderStatusUpdateService,
                              IPublishedFundingDataService publishedFundingDataService,
                              IPublishedProviderIndexerService publishedProviderIndexerService,
                              IPublishingResiliencePolicies publishingResiliencePolicies,
                              IPrerequisiteCheckerLocator prerequisiteCheckerLocator,
                              IJobManagement jobManagement,
                              ILogger logger,
                              ITransactionFactory transactionFactory,
                              IPublishedProviderVersionService publishedProviderVersionService,
                              IGeneratePublishedFundingCsvJobsCreationLocator generateCsvJobsLocator) : base(jobManagement, logger)
        {
            Guard.ArgumentNotNull(generateCsvJobsLocator, nameof(generateCsvJobsLocator));
            Guard.ArgumentNotNull(prerequisiteCheckerLocator, nameof(prerequisiteCheckerLocator));
            Guard.ArgumentNotNull(publishedProviderStatusUpdateService, nameof(publishedProviderStatusUpdateService));
            Guard.ArgumentNotNull(publishedFundingDataService, nameof(publishedFundingDataService));
            Guard.ArgumentNotNull(publishedProviderIndexerService, nameof(publishedProviderIndexerService));
            Guard.ArgumentNotNull(publishingResiliencePolicies, nameof(publishingResiliencePolicies));
            Guard.ArgumentNotNull(logger, nameof(logger));
            Guard.ArgumentNotNull(transactionFactory, nameof(transactionFactory));
            Guard.ArgumentNotNull(publishedProviderVersionService, nameof(publishedProviderVersionService));

            _publishedProviderStatusUpdateService = publishedProviderStatusUpdateService;
            _publishedFundingDataService          = publishedFundingDataService;
            _publishedProviderIndexerService      = publishedProviderIndexerService;
            _prerequisiteCheckerLocator           = prerequisiteCheckerLocator;
            _logger = logger;
            _generateCsvJobsLocator          = generateCsvJobsLocator;
            _transactionFactory              = transactionFactory;
            _publishedProviderVersionService = publishedProviderVersionService;
        }
        public PublishedProvidersController(IProviderFundingPublishingService providerFundingPublishingService,
                                            IPublishedProviderStatusService publishedProviderStatusService,
                                            IPublishedProviderVersionService publishedProviderVersionService,
                                            IPublishedProviderFundingService publishedProviderFundingService,
                                            IPublishedProviderFundingStructureService publishedProviderFundingStructureService,
                                            IDeletePublishedProvidersService deletePublishedProvidersService,
                                            IPublishedProviderUpdateDateService publishedProviderUpdateDateService,
                                            IFeatureToggle featureToggle)
        {
            Guard.ArgumentNotNull(providerFundingPublishingService, nameof(providerFundingPublishingService));
            Guard.ArgumentNotNull(publishedProviderStatusService, nameof(publishedProviderStatusService));
            Guard.ArgumentNotNull(publishedProviderVersionService, nameof(publishedProviderVersionService));
            Guard.ArgumentNotNull(publishedProviderFundingService, nameof(publishedProviderFundingService));
            Guard.ArgumentNotNull(publishedProviderFundingStructureService, nameof(publishedProviderFundingStructureService));
            Guard.ArgumentNotNull(deletePublishedProvidersService, nameof(deletePublishedProvidersService));
            Guard.ArgumentNotNull(publishedProviderUpdateDateService, nameof(publishedProviderUpdateDateService));
            Guard.ArgumentNotNull(featureToggle, nameof(featureToggle));

            _providerFundingPublishingService         = providerFundingPublishingService;
            _publishedProviderStatusService           = publishedProviderStatusService;
            _publishedProviderVersionService          = publishedProviderVersionService;
            _publishedProviderFundingService          = publishedProviderFundingService;
            _publishedProviderFundingStructureService = publishedProviderFundingStructureService;
            _deletePublishedProvidersService          = deletePublishedProvidersService;
            _publishedProviderUpdateDateService       = publishedProviderUpdateDateService;
            _featureToggle = featureToggle;
        }
Beispiel #3
0
        public void SetUp()
        {
            _providerFundingPublishingService         = Substitute.For <IProviderFundingPublishingService>();
            _publishedProviderStatusService           = Substitute.For <IPublishedProviderStatusService>();
            _publishedProviderVersionService          = Substitute.For <IPublishedProviderVersionService>();
            _publishedProviderFundingService          = Substitute.For <IPublishedProviderFundingService>();
            _publishedProviderFundingStructureService = Substitute.For <IPublishedProviderFundingStructureService>();
            _deletePublishedProvidersService          = Substitute.For <IDeletePublishedProvidersService>();

            _featureToggle = Substitute.For <IFeatureToggle>();

            _controller = new PublishedProvidersController(
                _providerFundingPublishingService,
                _publishedProviderStatusService,
                _publishedProviderVersionService,
                _publishedProviderFundingService,
                _publishedProviderFundingStructureService,
                _deletePublishedProvidersService,
                new Mock <IPublishedProviderUpdateDateService>().Object,
                _featureToggle
                );


            _fundingStreamId = NewRandomString();
            _fundPeriodId    = NewRandomString();
            _correlationId   = NewRandomString();
            _userId          = NewRandomString();
            _userName        = NewRandomString();

            HttpContext     context         = Substitute.For <HttpContext>();
            HttpRequest     request         = Substitute.For <HttpRequest>();
            ClaimsPrincipal claimsPrincipal = new ClaimsPrincipal(new ClaimsIdentity(new[]
            {
                new Claim(ClaimTypes.Sid, _userId),
                new Claim(ClaimTypes.Name, _userName)
            }));

            context.Request.Returns(request);
            request.HttpContext.Returns(context);
            context.User.Returns(claimsPrincipal);

            _controller.ControllerContext = new ControllerContext
            {
                HttpContext = context
            };

            request.Headers.Returns(new HeaderDictionary(new Dictionary <string, StringValues>
            {
                { "sfa-correlationId", new StringValues(_correlationId) }
            }));
        }
        public void SetUp()
        {
            _logger = Substitute.For <ILogger>();
            _publishedProviderVersionService    = Substitute.For <IPublishedProviderVersionService>();
            _publishedProviderVersioningService = Substitute.For <IPublishedProviderVersioningService>();
            _publishedProviderIndexerService    = Substitute.For <IPublishedProviderIndexerService>();
            IConfiguration configuration = Substitute.For <IConfiguration>();

            _publishedProviderContentPersistanceService = new PublishedProviderContentPersistanceService(
                _publishedProviderVersionService,
                _publishedProviderVersioningService,
                _publishedProviderIndexerService,
                _logger,
                new PublishingEngineOptions(configuration));
        }
Beispiel #5
0
        public void SetUp()
        {
            _logger        = Substitute.For <ILogger>();
            _jobManagement = Substitute.For <IJobManagement>();
            _jobsRunning   = Substitute.For <IJobsRunning>();
            _prerequisiteCheckerLocator = Substitute.For <IPrerequisiteCheckerLocator>();
            _prerequisiteCheckerLocator.GetPreReqChecker(PrerequisiteCheckerType.ApproveAllProviders)
            .Returns(new ApproveAllProvidersPrerequisiteChecker(_jobsRunning, _jobManagement, _logger));
            _prerequisiteCheckerLocator.GetPreReqChecker(PrerequisiteCheckerType.ApproveBatchProviders)
            .Returns(new ApproveBatchProvidersPrerequisiteChecker(_jobsRunning, _jobManagement, _logger));
            _publishedFundingDataService          = Substitute.For <IPublishedFundingDataService>();
            _publishedProviderStatusUpdateService = Substitute.For <IPublishedProviderStatusUpdateService>();
            _publishedProviderIndexerService      = Substitute.For <IPublishedProviderIndexerService>();
            _generateCsvJobsLocator        = Substitute.For <IGeneratePublishedFundingCsvJobsCreationLocator>();
            _transactionResiliencePolicies = new TransactionResiliencePolicies {
                TransactionPolicy = Policy.NoOpAsync()
            };
            _transactionFactory = new TransactionFactory(_logger, _transactionResiliencePolicies);
            _publishedProviderVersionService = Substitute.For <IPublishedProviderVersionService>();

            _approveService = new ApproveService(_publishedProviderStatusUpdateService,
                                                 _publishedFundingDataService,
                                                 _publishedProviderIndexerService,
                                                 new ResiliencePolicies
            {
                PublishedFundingRepository = Policy.NoOpAsync()
            },
                                                 _prerequisiteCheckerLocator,
                                                 _jobManagement,
                                                 _logger,
                                                 _transactionFactory,
                                                 _publishedProviderVersionService,
                                                 _generateCsvJobsLocator);

            _jobId         = NewRandomString();
            _correlationId = NewRandomString();
            _userId        = NewRandomString();
            _userName      = NewRandomString();

            _message = new Message();

            SetUserProperty("user-id", _userId);
            SetUserProperty("user-name", _userName);
            SetUserProperty("jobId", null);

            _publishedFundingDataService.GetPublishedProvidersForApproval(Arg.Any <string>(), Arg.Any <string[]>())
            .Returns(new[] { new PublishedProvider() });
        }
Beispiel #6
0
        public PublishedProviderContentPersistanceService(
            IPublishedProviderVersionService publishedProviderVersionService,
            IPublishedProviderVersioningService publishedProviderVersioningService,
            IPublishedProviderIndexerService publishedProviderIndexerService,
            ILogger logger,
            IPublishingEngineOptions publishingEngineOptions)
        {
            Guard.ArgumentNotNull(publishedProviderVersionService, nameof(publishedProviderVersionService));
            Guard.ArgumentNotNull(logger, nameof(logger));
            Guard.ArgumentNotNull(publishedProviderIndexerService, nameof(publishedProviderIndexerService));
            Guard.ArgumentNotNull(publishingEngineOptions, nameof(publishingEngineOptions));
            Guard.ArgumentNotNull(publishedProviderVersioningService, nameof(publishedProviderVersioningService));

            _publishedProviderIndexerService    = publishedProviderIndexerService;
            _publishedProviderVersionService    = publishedProviderVersionService;
            _publishedProviderVersioningService = publishedProviderVersioningService;
            _logger = logger;
            _publishingEngineOptions = publishingEngineOptions;
        }
        public void Setup()
        {
            _publishedProviderId  = NewRandomString();
            _publishedProviderIds = new[] { _publishedProviderId };

            _publishedFundingStatusUpdateService = Substitute.For <IPublishedFundingStatusUpdateService>();
            _publishingResiliencePolicies        = new ResiliencePolicies
            {
                PublishedFundingRepository           = Policy.NoOpAsync(),
                CalculationsApiClient                = Policy.NoOpAsync(),
                SpecificationsApiClient              = Policy.NoOpAsync(),
                SpecificationsRepositoryPolicy       = Policy.NoOpAsync(),
                PublishedIndexSearchResiliencePolicy = Policy.NoOpAsync()
            };
            _specificationsApiClient           = Substitute.For <ISpecificationsApiClient>();
            _specificationService              = new SpecificationService(_specificationsApiClient, _publishingResiliencePolicies);
            _specificationFundingStatusService = Substitute.For <ISpecificationFundingStatusService>();
            _jobsRunning = Substitute.For <IJobsRunning>();
            _logger      = Substitute.For <ILogger>();
            _publishedFundingChangeDetectorService       = Substitute.For <IPublishedFundingChangeDetectorService>();
            _publishedFundingGenerator                   = Substitute.For <IPublishedFundingGenerator>();
            _publishedProviderContentsGeneratorResolver  = Substitute.For <IPublishedProviderContentsGeneratorResolver>();
            _publishedFundingContentsPersistanceService  = Substitute.For <IPublishedFundingContentsPersistanceService>();
            _publishedProviderContentsPersistanceService = Substitute.For <IPublishedProviderContentPersistanceService>();
            _publishedProviderStatusUpdateService        = Substitute.For <IPublishedProviderStatusUpdateService>();
            _publishedFundingSearchRepository            = Substitute.For <ISearchRepository <PublishedFundingIndex> >();
            _calculationsApiClient      = Substitute.For <ICalculationsApiClient>();
            _providerService            = Substitute.For <IProviderService>();
            _jobManagement              = Substitute.For <IJobManagement>();
            _prerequisiteCheckerLocator = Substitute.For <IPrerequisiteCheckerLocator>();
            _prerequisiteCheckerLocator.GetPreReqChecker(PrerequisiteCheckerType.ReleaseAllProviders)
            .Returns(new PublishAllPrerequisiteChecker(_specificationFundingStatusService, _jobsRunning, _jobManagement, _logger));
            _prerequisiteCheckerLocator.GetPreReqChecker(PrerequisiteCheckerType.ReleaseBatchProviders)
            .Returns(new PublishBatchPrerequisiteChecker(_specificationFundingStatusService, _jobsRunning, _jobManagement, _logger));
            _generateCsvJobsLocator = Substitute.For <IGeneratePublishedFundingCsvJobsCreationLocator>();
            _mapper             = Substitute.For <IMapper>();
            _transactionFactory = new TransactionFactory(_logger, new TransactionResiliencePolicies {
                TransactionPolicy = Policy.NoOpAsync()
            });
            _publishedProviderVersionService = Substitute.For <IPublishedProviderVersionService>();
            _publishedFundingDataService     = Substitute.For <IPublishedFundingDataService>();
            _policiesService                       = Substitute.For <IPoliciesService>();
            _organisationGroupGenerator            = Substitute.For <IOrganisationGroupGenerator>();
            _publishedFundingChangeDetectorService = Substitute.For <IPublishedFundingChangeDetectorService>();
            _publishedFundingDateService           = Substitute.For <IPublishedFundingDateService>();
            _publishedFundingDataService           = Substitute.For <IPublishedFundingDataService>();
            _createPublishIntegrityJob             = Substitute.For <ICreatePublishIntegrityJob>();

            _publishedFundingService = new PublishedFundingService(_publishedFundingDataService,
                                                                   _publishingResiliencePolicies,
                                                                   _policiesService,
                                                                   _organisationGroupGenerator,
                                                                   _publishedFundingChangeDetectorService,
                                                                   _publishedFundingDateService,
                                                                   _mapper,
                                                                   _logger);

            _publishService = new PublishService(_publishedFundingStatusUpdateService,
                                                 _publishingResiliencePolicies,
                                                 _specificationService,
                                                 _prerequisiteCheckerLocator,
                                                 _publishedFundingChangeDetectorService,
                                                 _publishedFundingGenerator,
                                                 _publishedProviderContentsGeneratorResolver,
                                                 _publishedFundingContentsPersistanceService,
                                                 _publishedProviderContentsPersistanceService,
                                                 _publishedProviderStatusUpdateService,
                                                 _providerService,
                                                 _publishedFundingSearchRepository,
                                                 _calculationsApiClient,
                                                 _logger,
                                                 _jobManagement,
                                                 _generateCsvJobsLocator,
                                                 _transactionFactory,
                                                 _publishedProviderVersionService,
                                                 _publishedFundingService,
                                                 _publishedFundingDataService,
                                                 _policiesService,
                                                 _createPublishIntegrityJob
                                                 );
        }
Beispiel #8
0
        public RefreshService(IPublishedProviderStatusUpdateService publishedProviderStatusUpdateService,
                              IPublishedFundingDataService publishedFundingDataService,
                              IPublishingResiliencePolicies publishingResiliencePolicies,
                              ISpecificationService specificationService,
                              IProviderService providerService,
                              ICalculationResultsService calculationResultsService,
                              IPublishedProviderDataGenerator publishedProviderDataGenerator,
                              IPublishedProviderDataPopulator publishedProviderDataPopulator,
                              ILogger logger,
                              ICalculationsApiClient calculationsApiClient,
                              IPrerequisiteCheckerLocator prerequisiteCheckerLocator,
                              IPublishProviderExclusionCheck providerExclusionCheck,
                              IFundingLineValueOverride fundingLineValueOverride,
                              IJobManagement jobManagement,
                              IPublishedProviderIndexerService publishedProviderIndexerService,
                              IVariationService variationService,
                              ITransactionFactory transactionFactory,
                              IPublishedProviderVersionService publishedProviderVersionService,
                              IPoliciesService policiesService,
                              IGeneratePublishedFundingCsvJobsCreationLocator generateCsvJobsLocator,
                              IReApplyCustomProfiles reApplyCustomProfiles,
                              IPublishingEngineOptions publishingEngineOptions,
                              IPublishedProviderErrorDetection detection,
                              IBatchProfilingService batchProfilingService) : base(jobManagement, logger)
        {
            Guard.ArgumentNotNull(generateCsvJobsLocator, nameof(generateCsvJobsLocator));
            Guard.ArgumentNotNull(publishedProviderStatusUpdateService, nameof(publishedProviderStatusUpdateService));
            Guard.ArgumentNotNull(publishedFundingDataService, nameof(publishedFundingDataService));
            Guard.ArgumentNotNull(publishingResiliencePolicies, nameof(publishingResiliencePolicies));
            Guard.ArgumentNotNull(specificationService, nameof(specificationService));
            Guard.ArgumentNotNull(providerService, nameof(providerService));
            Guard.ArgumentNotNull(calculationResultsService, nameof(calculationResultsService));
            Guard.ArgumentNotNull(publishedProviderDataGenerator, nameof(publishedProviderDataGenerator));
            Guard.ArgumentNotNull(publishedProviderDataPopulator, nameof(publishedProviderDataPopulator));
            Guard.ArgumentNotNull(calculationsApiClient, nameof(calculationsApiClient));
            Guard.ArgumentNotNull(providerExclusionCheck, nameof(providerExclusionCheck));
            Guard.ArgumentNotNull(fundingLineValueOverride, nameof(fundingLineValueOverride));
            Guard.ArgumentNotNull(jobManagement, nameof(jobManagement));
            Guard.ArgumentNotNull(publishedProviderIndexerService, nameof(publishedProviderIndexerService));
            Guard.ArgumentNotNull(variationService, nameof(variationService));
            Guard.ArgumentNotNull(transactionFactory, nameof(transactionFactory));
            Guard.ArgumentNotNull(publishedProviderVersionService, nameof(publishedProviderVersionService));
            Guard.ArgumentNotNull(policiesService, nameof(policiesService));
            Guard.ArgumentNotNull(logger, nameof(logger));
            Guard.ArgumentNotNull(prerequisiteCheckerLocator, nameof(prerequisiteCheckerLocator));
            Guard.ArgumentNotNull(reApplyCustomProfiles, nameof(reApplyCustomProfiles));
            Guard.ArgumentNotNull(detection, nameof(detection));
            Guard.ArgumentNotNull(publishingResiliencePolicies.CalculationsApiClient, nameof(publishingResiliencePolicies.CalculationsApiClient));
            Guard.ArgumentNotNull(publishingResiliencePolicies.PublishedFundingRepository, nameof(publishingResiliencePolicies.PublishedFundingRepository));
            Guard.ArgumentNotNull(publishingEngineOptions, nameof(publishingEngineOptions));
            Guard.ArgumentNotNull(batchProfilingService, nameof(batchProfilingService));

            _publishedProviderStatusUpdateService = publishedProviderStatusUpdateService;
            _publishedFundingDataService          = publishedFundingDataService;
            _specificationService           = specificationService;
            _providerService                = providerService;
            _calculationResultsService      = calculationResultsService;
            _publishedProviderDataGenerator = publishedProviderDataGenerator;
            _publishedProviderDataPopulator = publishedProviderDataPopulator;
            _logger = logger;
            _calculationsApiClient      = calculationsApiClient;
            _prerequisiteCheckerLocator = prerequisiteCheckerLocator;
            _providerExclusionCheck     = providerExclusionCheck;
            _fundingLineValueOverride   = fundingLineValueOverride;
            _variationService           = variationService;
            _generateCsvJobsLocator     = generateCsvJobsLocator;
            _reApplyCustomProfiles      = reApplyCustomProfiles;
            _detection                       = detection;
            _batchProfilingService           = batchProfilingService;
            _publishedProviderIndexerService = publishedProviderIndexerService;

            _publishingResiliencePolicy  = publishingResiliencePolicies.PublishedFundingRepository;
            _calculationsApiClientPolicy = publishingResiliencePolicies.CalculationsApiClient;
            _jobManagement      = jobManagement;
            _transactionFactory = transactionFactory;
            _publishedProviderVersionService = publishedProviderVersionService;
            _policiesService         = policiesService;
            _publishingEngineOptions = publishingEngineOptions;
        }
        public PublishService(IPublishedFundingStatusUpdateService publishedFundingStatusUpdateService,
                              IPublishingResiliencePolicies publishingResiliencePolicies,
                              ISpecificationService specificationService,
                              IPrerequisiteCheckerLocator prerequisiteCheckerLocator,
                              IPublishedFundingChangeDetectorService publishedFundingChangeDetectorService,
                              IPublishedFundingGenerator publishedFundingGenerator,
                              IPublishedProviderContentsGeneratorResolver publishedProviderContentsGeneratorResolver,
                              IPublishedFundingContentsPersistanceService publishedFundingContentsPersistanceService,
                              IPublishedProviderContentPersistanceService publishedProviderContentsPersistanceService,
                              IPublishedProviderStatusUpdateService publishedProviderStatusUpdateService,
                              IProviderService providerService,
                              ISearchRepository <PublishedFundingIndex> publishedFundingSearchRepository,
                              ICalculationsApiClient calculationsApiClient,
                              ILogger logger,
                              IJobManagement jobManagement,
                              IGeneratePublishedFundingCsvJobsCreationLocator generateCsvJobsLocator,
                              ITransactionFactory transactionFactory,
                              IPublishedProviderVersionService publishedProviderVersionService,
                              IPublishedFundingService publishedFundingService,
                              IPublishedFundingDataService publishedFundingDataService,
                              IPoliciesService policiesService,
                              ICreatePublishIntegrityJob createPublishIntegrityJob) : base(jobManagement, logger)
        {
            Guard.ArgumentNotNull(generateCsvJobsLocator, nameof(generateCsvJobsLocator));
            Guard.ArgumentNotNull(publishedFundingStatusUpdateService, nameof(publishedFundingStatusUpdateService));
            Guard.ArgumentNotNull(publishingResiliencePolicies, nameof(publishingResiliencePolicies));
            Guard.ArgumentNotNull(specificationService, nameof(specificationService));
            Guard.ArgumentNotNull(prerequisiteCheckerLocator, nameof(prerequisiteCheckerLocator));
            Guard.ArgumentNotNull(publishedFundingChangeDetectorService, nameof(publishedFundingChangeDetectorService));
            Guard.ArgumentNotNull(publishedFundingGenerator, nameof(publishedFundingGenerator));
            Guard.ArgumentNotNull(publishedFundingGenerator, nameof(publishedProviderContentsGeneratorResolver));
            Guard.ArgumentNotNull(publishedFundingContentsPersistanceService, nameof(publishedFundingContentsPersistanceService));
            Guard.ArgumentNotNull(publishedProviderContentsPersistanceService, nameof(publishedProviderContentsPersistanceService));
            Guard.ArgumentNotNull(publishedProviderStatusUpdateService, nameof(publishedProviderStatusUpdateService));
            Guard.ArgumentNotNull(publishedFundingSearchRepository, nameof(publishedFundingSearchRepository));
            Guard.ArgumentNotNull(providerService, nameof(providerService));
            Guard.ArgumentNotNull(publishedFundingService, nameof(publishedFundingService));
            Guard.ArgumentNotNull(calculationsApiClient, nameof(calculationsApiClient));
            Guard.ArgumentNotNull(publishingResiliencePolicies.CalculationsApiClient, nameof(publishingResiliencePolicies.CalculationsApiClient));
            Guard.ArgumentNotNull(logger, nameof(logger));
            Guard.ArgumentNotNull(jobManagement, nameof(jobManagement));
            Guard.ArgumentNotNull(publishingResiliencePolicies.PublishedIndexSearchResiliencePolicy, nameof(publishingResiliencePolicies.PublishedIndexSearchResiliencePolicy));
            Guard.ArgumentNotNull(transactionFactory, nameof(transactionFactory));
            Guard.ArgumentNotNull(publishedProviderVersionService, nameof(publishedProviderVersionService));
            Guard.ArgumentNotNull(publishedFundingDataService, nameof(publishedFundingDataService));
            Guard.ArgumentNotNull(policiesService, nameof(policiesService));
            Guard.ArgumentNotNull(createPublishIntegrityJob, nameof(createPublishIntegrityJob));

            _publishedFundingStatusUpdateService = publishedFundingStatusUpdateService;
            _publishedFundingDataService         = publishedFundingDataService;
            _specificationService       = specificationService;
            _prerequisiteCheckerLocator = prerequisiteCheckerLocator;
            _publishedFundingGenerator  = publishedFundingGenerator;
            _publishedProviderContentsGeneratorResolver  = publishedProviderContentsGeneratorResolver;
            _publishedFundingContentsPersistanceService  = publishedFundingContentsPersistanceService;
            _publishedProviderContentsPersistanceService = publishedProviderContentsPersistanceService;
            _publishedProviderStatusUpdateService        = publishedProviderStatusUpdateService;
            _publishedFundingSearchRepository            = publishedFundingSearchRepository;
            _logger = logger;
            _calculationsApiClient       = calculationsApiClient;
            _calculationsApiClientPolicy = publishingResiliencePolicies.CalculationsApiClient;
            _generateCsvJobsLocator      = generateCsvJobsLocator;
            _jobManagement = jobManagement;
            _publishedIndexSearchResiliencePolicy = publishingResiliencePolicies.PublishedIndexSearchResiliencePolicy;
            _transactionFactory = transactionFactory;
            _publishedProviderVersionService = publishedProviderVersionService;
            _providerService           = providerService;
            _publishedFundingService   = publishedFundingService;
            _policiesService           = policiesService;
            _createPublishIntegrityJob = createPublishIntegrityJob;
        }