Class DefaultPaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
java.lang.Object
com.broadleafcommerce.billing.job.service.impl.DefaultPaymentProcessingResultHandlerService<P,Q>
- All Implemented Interfaces:
PaymentProcessingResultHandlerService<P,Q>
public class DefaultPaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
extends Object
implements PaymentProcessingResultHandlerService<P,Q>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected BillingJobPropertiesprotected DeadLetterMessageSenderprotected PaymentTransactionDetailService<Q>protected QueryUtilprotected BillingJobMessageSenderprotected com.broadleafcommerce.common.extension.TypeFactory -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanChecks if any of the PaymentAccountProcessingRequests failureType isPaymentFailureTypeEnum.SOFT_FAILUREprotected PaymentAccountProcessedEventcreatePaymentAccountProcessedEvent(BillingProcessingRequest processingRequest) protected booleanprotected booleanprotected booleanisChargeTransactionType(BillingProcessingRequest billingProcessRequest) protected booleanprotected voidprotected booleanpaymentAccountResultedInSoftFailure(PaymentFailureTypeEnum paymentFailureType) protected voidvoidprocessDataFailures(List<P> dataFailures, PaymentProcessingResultHandlerDTO dto) voidprocessDuplicateRequests(List<P> duplicates, PaymentProcessingResultHandlerDTO dto) voidprocessExceptions(List<P> dataFailures, PaymentProcessingResultHandlerDTO dto) voidprocessFailedRequests(List<P> failedRequests, PaymentProcessingResultHandlerDTO dto) voidprocessGatewayErrors(List<P> gatewayErrors, PaymentProcessingResultHandlerDTO dto) voidprocessSuccessfulRequests(List<P> successfulRequests, PaymentProcessingResultHandlerDTO dto) voidsaveObjectsAndSendMessages(PaymentProcessingResultHandlerDTO dto, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) saveRequestAndTransactionDetails(P request, Q transactionDetail, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected booleanshouldSendPaymentAccountProcessedEvent(P request) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.broadleafcommerce.billing.job.service.PaymentProcessingResultHandlerService
saveObjectsAndSendMessages, saveRequestAndTransactionDetails
-
Field Details
-
billingJobProperties
-
bprService
@Autowired protected BillingProcessRequestService<P extends BillingProcessingRequest,BillingProcessingRequestWithFullDetails> bprService -
paymentTransactionDetailService
@Autowired protected PaymentTransactionDetailService<Q extends PaymentTransactionDetail> paymentTransactionDetailService -
sender
-
deadLetterMessageSender
-
typeFactory
@Autowired protected com.broadleafcommerce.common.extension.TypeFactory typeFactory -
queryUtil
-
-
Constructor Details
-
DefaultPaymentProcessingResultHandlerService
public DefaultPaymentProcessingResultHandlerService()
-
-
Method Details
-
saveRequestAndTransactionDetails
@Transactional public P saveRequestAndTransactionDetails(P request, Q transactionDetail, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
saveRequestAndTransactionDetailsin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
processSuccessfulRequests
public void processSuccessfulRequests(List<P> successfulRequests, PaymentProcessingResultHandlerDTO dto) - Specified by:
processSuccessfulRequestsin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
processFailedRequests
- Specified by:
processFailedRequestsin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
processGatewayErrors
- Specified by:
processGatewayErrorsin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
processDuplicateRequests
- Specified by:
processDuplicateRequestsin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
processDataFailures
- Specified by:
processDataFailuresin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
processExceptions
- Specified by:
processExceptionsin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
saveObjectsAndSendMessages
@Transactional public void saveObjectsAndSendMessages(PaymentProcessingResultHandlerDTO dto, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
saveObjectsAndSendMessagesin interfacePaymentProcessingResultHandlerService<P extends BillingProcessingRequest,Q extends PaymentTransactionDetail>
-
shouldSendPaymentAccountProcessedEvent
-
createPaymentAccountProcessedEvent
protected PaymentAccountProcessedEvent createPaymentAccountProcessedEvent(BillingProcessingRequest processingRequest) -
hasMoreAccounts
-
moveToNextAccount
-
isEligibleForGatewayErrorRetries
-
hasMoreGatewayRetries
-
prepareForGatewayErrorRetry
-
isChargeTransactionType
-
anyPaymentAccountsResultedInSoftFailure
Checks if any of the PaymentAccountProcessingRequests failureType isPaymentFailureTypeEnum.SOFT_FAILURE -
getAllPaymentAccountIdsWithSoftFailure
-
paymentAccountResultedInSoftFailure
-