Beispiel #1
0
        public async Task <IActionResult> Post([FromBody] Transaction transaction)
        {
            string resultId = string.Empty;

            try
            {
                resultId = await _paymentProvider.Pay(transaction);
            }
            catch (ApiException error)
            {
                _logger.LogError(error.Message, error);

                if (error.StatusCode == 400)
                {
                    return(BadRequest("Invalid data provided"));
                }

                throw new ApplicationException("Unexpected exception occured while processing your request");
            }

            return(Ok(resultId));
        }
Beispiel #2
0
 public static string ProcessPayment(IPaymentProvider paymentProvider)
 {
     return(paymentProvider.Pay());
 }
Beispiel #3
0
 public void Pay(decimal money)
 {
     _provider.Pay(money);
 }