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));
 }
 public TransferFundingSourceEventGenerationService(
     IPaymentLogger paymentLogger,
     IMapper mapper,
     IDataCache <bool> monthEndCache,
     IDataCache <LevyAccountModel> levyAccountCache,
     ILevyBalanceService levyBalanceService,
     IFundingSourcePaymentEventBuilder fundingSourcePaymentEventBuilder,
     ILevyTransactionBatchStorageService levyTransactionBatchStorageService
     )
 {
     this.paymentLogger      = paymentLogger ?? throw new ArgumentNullException(nameof(paymentLogger));
     this.mapper             = mapper ?? throw new ArgumentNullException(nameof(mapper));
     this.monthEndCache      = monthEndCache ?? throw new ArgumentNullException(nameof(monthEndCache));
     this.levyAccountCache   = levyAccountCache ?? throw new ArgumentNullException(nameof(levyAccountCache));
     this.levyBalanceService = levyBalanceService ?? throw new ArgumentNullException(nameof(levyBalanceService));
     this.fundingSourcePaymentEventBuilder   = fundingSourcePaymentEventBuilder ?? throw new ArgumentNullException(nameof(fundingSourcePaymentEventBuilder));
     this.levyTransactionBatchStorageService = levyTransactionBatchStorageService ?? throw new ArgumentNullException(nameof(levyTransactionBatchStorageService));
 }
 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 TransferPaymentProcessor(ILevyBalanceService levyBalanceService)
 {
     this.levyBalanceService = levyBalanceService ?? throw new ArgumentNullException(nameof(levyBalanceService));
 }
Exemplo n.º 5
0
 public LevyPaymentProcessor(ILevyBalanceService levyBalanceService)
 {
     this.levyBalanceService = levyBalanceService;
 }