Interface PaymentPriorityStrategy
- All Known Implementing Classes:
DefaultPaymentPriorityStrategy
public interface PaymentPriorityStrategy
A helper component that has understanding of which
PaymentSummaries
take
precedence and should be applied first in various operations such as payment capture, reverse
authorize, and refund.- Author:
- Samarth Dhruva (samarthd), Sunny Yu
-
Method Summary
Modifier and TypeMethodDescriptiondefault List<PaymentSummary>
sortByPaymentGatewayPriorityForCancelFulfillment
(List<PaymentSummary> payments, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Given a list ofPaymentSummaries
, sorts them in order of which should be refunded or reversed first when the fulfillment is cancelled.sortByPaymentGatewayPriorityForCapture
(List<PaymentSummary> payments, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Given a list ofPaymentSummaries
, sorts them in order of which should be executed first.sortByPaymentGatewayPriorityForRefund
(List<PaymentSummary> payments, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Given a list ofPaymentSummaries
, sorts them in order of which should be executed first.sortByRefundPriority
(List<PaymentSummary> payments) Deprecated.
-
Method Details
-
sortByPaymentGatewayPriorityForCapture
List<PaymentSummary> sortByPaymentGatewayPriorityForCapture(List<PaymentSummary> payments, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Given a list ofPaymentSummaries
, sorts them in order of which should be executed first.- Parameters:
payments
- the payments to sortcontextInfo
- context information surrounding sandboxing and multitenant state- Returns:
- a new list representing the sorted result. Will be empty if
payments
is null or empty.
-
sortByPaymentGatewayPriorityForRefund
List<PaymentSummary> sortByPaymentGatewayPriorityForRefund(List<PaymentSummary> payments, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Given a list ofPaymentSummaries
, sorts them in order of which should be executed first.- Parameters:
payments
- the payments to sortcontextInfo
- context information surrounding sandboxing and multitenant state- Returns:
- a new list representing the sorted result. Will be empty if
payments
is null or empty.
-
sortByPaymentGatewayPriorityForCancelFulfillment
default List<PaymentSummary> sortByPaymentGatewayPriorityForCancelFulfillment(@Nullable List<PaymentSummary> payments, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Given a list ofPaymentSummaries
, sorts them in order of which should be refunded or reversed first when the fulfillment is cancelled. The default implementation is added for backward compatibility, and this method should also be implemented when this interface is implemented.- Parameters:
payments
- the payments to sortcontextInfo
- context information surrounding sandboxing and multitenant state- Returns:
- a new list representing the sorted result. Will be empty if
payments
is null or empty.
-
sortByRefundPriority
Deprecated.since 1.7.2, in favor ofsortByPaymentGatewayPriorityForRefund(List, ContextInfo)
Given a list ofPaymentSummaries
, sorts them in order of which should be refunded first.- Parameters:
payments
- the payments to sort- Returns:
- a new list representing the sorted result. Will be empty if
payments
is null or empty.
-
sortByPaymentGatewayPriorityForRefund(List, ContextInfo)