public BankOfIrelandAcquiringBankService(IBankOfIrelandClient bankOfIrelandClient, IMapper <CardPaymentRequestDto, BankOfIrelandPaymentRequest> cardPaymentRequestMapper, IPaymentRepository paymentRepository) { _paymentRepository = paymentRepository; _cardPaymentRequestMapper = cardPaymentRequestMapper; _bankOfIrelandClient = bankOfIrelandClient; }
private PaymentController CreatePaymentController(Guid merchantId, IPaymentRepository paymentRepository, IBankOfIrelandClient bankOfIrelandClient, IDatetimeService datetimeService) { var bankOfIrelandPaymentRequestMapper = new BankOfIrelandPaymentRequestMapper(); var bankOfIrelandAcquiringBankService = new BankOfIrelandAcquiringBankService(bankOfIrelandClient, bankOfIrelandPaymentRequestMapper, paymentRepository); var acquirerBankSelectionService = new AcquirerBankSelectionService(); var createCardPaymentService = new CreateCardPaymentService(bankOfIrelandAcquiringBankService, paymentRepository, acquirerBankSelectionService); var cardPaymentResponseMapper = new CardPaymentResponseMapper(); var paymentService = new PaymentService(createCardPaymentService, cardPaymentResponseMapper, null, null, null); var cardValidator = new CardValidator(datetimeService); var controller = new PaymentController(LoggerHelper.CreateLogger <PaymentController>(), paymentService, cardValidator); controller.ControllerContext = ControllerContextFactory.CreateControllerContextForClient(merchantId); return(controller); }