コード例 #1
0
 @Override
 public void updatePaymentAndTransactionOnCompletion(
     final UUID accountId,
     final UUID paymentId,
     final TransactionType transactionType,
     final String currentPaymentStateName,
     final String lastSuccessPaymentStateName,
     final UUID transactionId,
     final TransactionStatus paymentStatus,
     final BigDecimal processedAmount,
     final Currency processedCurrency,
     final String gatewayErrorCode,
     final String gatewayErrorMsg,
     final InternalCallContext context) {
   synchronized (this) {
     final PaymentModelDao payment = payments.get(paymentId);
     if (payment != null) {
       payment.setStateName(currentPaymentStateName);
     }
     final PaymentTransactionModelDao transaction = transactions.get(transactionId);
     if (transaction != null) {
       transaction.setTransactionStatus(paymentStatus);
       transaction.setProcessedAmount(processedAmount);
       transaction.setProcessedCurrency(processedCurrency);
       transaction.setGatewayErrorCode(gatewayErrorCode);
       transaction.setGatewayErrorMsg(gatewayErrorMsg);
     }
   }
 }
コード例 #2
0
 @Override
 public PaymentModelDao getPaymentByExternalKey(
     final String externalKey, final InternalTenantContext context) {
   synchronized (this) {
     for (PaymentModelDao cur : payments.values()) {
       if (cur.getExternalKey().equals(externalKey)) {
         return cur;
       }
     }
   }
   return null;
 }
コード例 #3
0
 @Override
 public PaymentModelDao insertPaymentWithFirstTransaction(
     final PaymentModelDao payment,
     final PaymentTransactionModelDao paymentTransaction,
     final InternalCallContext context) {
   synchronized (this) {
     payments.put(payment.getId(), payment);
     transactions.put(paymentTransaction.getId(), paymentTransaction);
   }
   return payment;
 }