public RequiredLevyAmountFundingSourceService( IPaymentProcessor processor, IMapper mapper, IDataCache <CalculatedRequiredLevyAmount> requiredPaymentsCache, ILevyFundingSourceRepository levyFundingSourceRepository, ILevyBalanceService levyBalanceService, IPaymentLogger paymentLogger, IDataCache <bool> monthEndCache, IDataCache <LevyAccountModel> levyAccountCache, IDataCache <List <EmployerProviderPriorityModel> > employerProviderPriorities, IDataCache <List <string> > refundSortKeysCache, IDataCache <List <TransferPaymentSortKeyModel> > transferPaymentSortKeysCache, IDataCache <List <RequiredPaymentSortKeyModel> > requiredPaymentSortKeysCache, IGenerateSortedPaymentKeys generateSortedPaymentKeys) { this.processor = processor ?? throw new ArgumentNullException(nameof(processor)); this.mapper = mapper ?? throw new ArgumentNullException(nameof(mapper)); this.requiredPaymentsCache = requiredPaymentsCache ?? throw new ArgumentNullException(nameof(requiredPaymentsCache)); this.levyFundingSourceRepository = levyFundingSourceRepository ?? throw new ArgumentNullException(nameof(levyFundingSourceRepository)); this.levyBalanceService = levyBalanceService ?? throw new ArgumentNullException(nameof(levyBalanceService)); this.paymentLogger = paymentLogger ?? throw new ArgumentNullException(nameof(paymentLogger)); this.monthEndCache = monthEndCache ?? throw new ArgumentNullException(nameof(monthEndCache)); this.levyAccountCache = levyAccountCache ?? throw new ArgumentNullException(nameof(levyAccountCache)); this.employerProviderPriorities = employerProviderPriorities ?? throw new ArgumentNullException(nameof(employerProviderPriorities)); this.refundSortKeysCache = refundSortKeysCache ?? throw new ArgumentNullException(nameof(refundSortKeysCache)); this.transferPaymentSortKeysCache = transferPaymentSortKeysCache ?? throw new ArgumentNullException(nameof(transferPaymentSortKeysCache)); this.requiredPaymentSortKeysCache = requiredPaymentSortKeysCache ?? throw new ArgumentNullException(nameof(requiredPaymentSortKeysCache)); this.generateSortedPaymentKeys = generateSortedPaymentKeys ?? throw new ArgumentNullException(nameof(generateSortedPaymentKeys)); }
protected SubmissionEventHandler(IActorProxyFactory proxyFactory, ILevyFundingSourceRepository repository, IPaymentLogger logger, IExecutionContext executionContext, ILevyMessageRoutingService levyMessageRoutingService) { this.proxyFactory = proxyFactory ?? throw new ArgumentNullException(nameof(proxyFactory)); this.repository = repository ?? throw new ArgumentNullException(nameof(repository)); this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); this.executionContext = executionContext ?? throw new ArgumentNullException(nameof(executionContext)); this.levyMessageRoutingService = levyMessageRoutingService ?? throw new ArgumentNullException(nameof(levyMessageRoutingService)); }
public ManageLevyAccountBalanceService(IAccountApiClient accountApiClient, IPaymentLogger logger, ILevyAccountBulkCopyRepository levyAccountBulkWriter, ILevyFundingSourceRepository levyFundingSourceRepository, int batchSize, IEndpointInstanceFactory endpointInstanceFactory) { this.accountApiClient = accountApiClient ?? throw new ArgumentNullException(nameof(accountApiClient)); this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); this.levyAccountBulkWriter = levyAccountBulkWriter ?? throw new ArgumentNullException(nameof(levyAccountBulkWriter)); this.levyFundingSourceRepository = levyFundingSourceRepository ?? throw new ArgumentNullException(nameof(levyFundingSourceRepository)); this.batchSize = batchSize; this.endpointInstanceFactory = endpointInstanceFactory ?? throw new ArgumentNullException(nameof(endpointInstanceFactory)); }
public LevyFundedService( ActorService actorService, ActorId actorId, IPaymentLogger paymentLogger, ITelemetry telemetry, ILifetimeScope lifetimeScope, ILevyFundingSourceRepository levyFundingSourceRepository) : base(actorService, actorId) { this.paymentLogger = paymentLogger; this.telemetry = telemetry; this.lifetimeScope = lifetimeScope; this.levyFundingSourceRepository = levyFundingSourceRepository; }
public ManageLevyAccountBalanceService(ILevyFundingSourceRepository repository, IAccountApiClient accountApiClient, IPaymentLogger logger, ILevyAccountBulkCopyRepository levyAccountBulkWriter, int batchSize, IEndpointInstanceFactory endpointInstanceFactory) { this.repository = repository; this.accountApiClient = accountApiClient; this.logger = logger; this.levyAccountBulkWriter = levyAccountBulkWriter; this.batchSize = batchSize; this.endpointInstanceFactory = endpointInstanceFactory; retryPolicy = Policy.Handle <Exception>().WaitAndRetryAsync(5, i => TimeSpan.FromMinutes(1)); }
public FundingSourceEventGenerationService( IPaymentLogger logger, IFundingSourceDataContext dataContext, ILevyBalanceService levyBalanceService, ILevyFundingSourceRepository levyFundingSourceRepository, IDataCache <LevyAccountModel> levyAccountCache, ICalculatedRequiredLevyAmountPrioritisationService calculatedRequiredLevyAmountPrioritisationService, IFundingSourcePaymentEventBuilder fundingSourcePaymentEventBuilder ) { this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); this.dataContext = dataContext ?? throw new ArgumentNullException(nameof(dataContext)); this.levyBalanceService = levyBalanceService ?? throw new ArgumentNullException(nameof(levyBalanceService)); this.levyFundingSourceRepository = levyFundingSourceRepository ?? throw new ArgumentNullException(nameof(levyFundingSourceRepository)); this.levyAccountCache = levyAccountCache ?? throw new ArgumentNullException(nameof(levyAccountCache)); this.calculatedRequiredLevyAmountPrioritisationService = calculatedRequiredLevyAmountPrioritisationService ?? throw new ArgumentNullException(nameof(calculatedRequiredLevyAmountPrioritisationService)); this.fundingSourcePaymentEventBuilder = fundingSourcePaymentEventBuilder ?? throw new ArgumentNullException(nameof(fundingSourcePaymentEventBuilder)); }
public SubmissionFailedEventHandler(IActorProxyFactory proxyFactory, ILevyFundingSourceRepository repository, IPaymentLogger logger, IExecutionContext executionContext, ILevyMessageRoutingService levyMessageRoutingService) : base(proxyFactory, repository, logger, executionContext, levyMessageRoutingService) { }
public PeriodEndService(ILevyFundingSourceRepository repository, IPaymentLogger logger) { this.repository = repository ?? throw new ArgumentNullException(nameof(repository)); this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); }