Class DefaultPaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
java.lang.Object
com.broadleafcommerce.billing.job.service.impl.DefaultPaymentAndRefundUpdaterService<P,Q>
- All Implemented Interfaces:
PaymentAndRefundUpdaterService<P,Q>
public class DefaultPaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
extends Object
implements PaymentAndRefundUpdaterService<P,Q>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected BillingProcessRequestService<BillingProcessingRequest,BillingProcessingRequestWithFullDetails> protected BillingEventPaymentService<BillingEventPayment,BillingEventPaymentWithEvent, BillingEventDTO, BillingEventPaymentWithTransaction> protected BillingPropertiesprotected QueryUtilprotected RefundEventService<RefundEvent,RefundEventWithDetails> protected NextBillingRetryDateCalculatorprotected BillingJobMessageSenderprotected com.broadleafcommerce.common.extension.TypeFactory -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanChecks if all the PaymentAccountProcessingRequests failureType is HARD_FAILUREbuildWithPayment(List<BillingProcessingRequest> requests, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) buildWithRefundDetail(List<BillingProcessingRequest> requests, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) findBillingProcessingRequestWithPaymentsByIds(List<String> ids, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) findBillingProcessingRequestWithRefundEventDetailByIds(List<String> ids, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected booleanpaymentResultedInHardFailure(PaymentFailureTypeEnum paymentFailureTypeEnum) protected BillingEventPaymentprocessFailureRequestStatus(P requestAndPayment) protected BillingEventPaymentprocessRetryPayment(@NonNull BillingEventPayment payment, @NonNull BillingRetrySchedule retrySchedule) voidsavePaymentsAndSendMessages(List<P> requestsAndPayments, ProcessBillingEventPaymentResults billingProcessResponseEvent, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) voidsaveRefundEventDetails(List<Q> processingRequestWithRefundEventDetails, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) voidsetPaymentFieldsBasedOnProcessingRequestStatus(List<P> requestsAndPayments, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) voidsetRefundEventDetailsBasedOnProcessingRequestResult(List<Q> processingRequestWithRefundEventDetails, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected booleanshouldRetryPayment(P requestAndPayment) 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.PaymentAndRefundUpdaterService
findBillingProcessingRequestWithPaymentsByIds, findBillingProcessingRequestWithRefundEventDetailByIds, savePaymentsAndSendMessages, saveRefundEventDetails, updatePayments, updateRefundEventDetails
-
Field Details
-
retryDateCalculator
-
billingProcessRequestService
@Autowired protected BillingProcessRequestService<BillingProcessingRequest,BillingProcessingRequestWithFullDetails> billingProcessRequestService -
paymentService
@Autowired protected BillingEventPaymentService<BillingEventPayment,BillingEventPaymentWithEvent, paymentServiceBillingEventDTO, BillingEventPaymentWithTransaction> -
sender
-
refundEventDetailService
@Autowired protected RefundEventDetailService<RefundEventDetail,RefundDetailsWithRefundAndBillingEvent> refundEventDetailService -
refundEventService
-
properties
-
typeFactory
@Autowired protected com.broadleafcommerce.common.extension.TypeFactory typeFactory -
queryUtil
-
-
Constructor Details
-
DefaultPaymentAndRefundUpdaterService
public DefaultPaymentAndRefundUpdaterService()
-
-
Method Details
-
findBillingProcessingRequestWithPaymentsByIds
public List<P> findBillingProcessingRequestWithPaymentsByIds(List<String> ids, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
findBillingProcessingRequestWithPaymentsByIdsin interfacePaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
-
setPaymentFieldsBasedOnProcessingRequestStatus
public void setPaymentFieldsBasedOnProcessingRequestStatus(List<P> requestsAndPayments, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
setPaymentFieldsBasedOnProcessingRequestStatusin interfacePaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
-
processFailureRequestStatus
-
shouldRetryPayment
-
processRetryPayment
protected BillingEventPayment processRetryPayment(@NonNull @NonNull BillingEventPayment payment, @NonNull @NonNull BillingRetrySchedule retrySchedule) -
savePaymentsAndSendMessages
@Transactional public void savePaymentsAndSendMessages(List<P> requestsAndPayments, ProcessBillingEventPaymentResults billingProcessResponseEvent, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
savePaymentsAndSendMessagesin interfacePaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
-
findBillingProcessingRequestWithRefundEventDetailByIds
public List<Q> findBillingProcessingRequestWithRefundEventDetailByIds(List<String> ids, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
findBillingProcessingRequestWithRefundEventDetailByIdsin interfacePaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
-
setRefundEventDetailsBasedOnProcessingRequestResult
public void setRefundEventDetailsBasedOnProcessingRequestResult(List<Q> processingRequestWithRefundEventDetails, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
setRefundEventDetailsBasedOnProcessingRequestResultin interfacePaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
-
saveRefundEventDetails
@Transactional public void saveRefundEventDetails(List<Q> processingRequestWithRefundEventDetails, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) - Specified by:
saveRefundEventDetailsin interfacePaymentAndRefundUpdaterService<P extends BillingProcessingRequestWithPayment,Q extends BillingProcessingRequestWithRefundDetail>
-
allPaymentAccountsAreHardFailures
Checks if all the PaymentAccountProcessingRequests failureType is HARD_FAILURE -
paymentResultedInHardFailure
-
buildWithPayment
protected List<P> buildWithPayment(List<BillingProcessingRequest> requests, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
buildWithRefundDetail
protected List<Q> buildWithRefundDetail(List<BillingProcessingRequest> requests, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
-