Class DefaultBraintreeExternalCallService
java.lang.Object
com.broadleafcommerce.paymentgateway.service.AbstractExternalPaymentGatewayCall<BraintreePaymentRequest,com.broadleafcommerce.paymentgateway.domain.PaymentResponse>
com.broadleafcommerce.braintree.service.DefaultBraintreeExternalCallService
- All Implemented Interfaces:
BraintreeExternalCallService,com.broadleafcommerce.paymentgateway.service.FailureCountExposable,com.broadleafcommerce.paymentgateway.vendor.service.monitor.ServiceStatusDetectable<BraintreePaymentRequest>
public class DefaultBraintreeExternalCallService
extends com.broadleafcommerce.paymentgateway.service.AbstractExternalPaymentGatewayCall<BraintreePaymentRequest,com.broadleafcommerce.paymentgateway.domain.PaymentResponse>
implements BraintreeExternalCallService
The default implementation for
BraintreeExternalCallService.-
Field Summary
Fields inherited from class com.broadleafcommerce.paymentgateway.service.AbstractExternalPaymentGatewayCall
failureCount, isUp -
Constructor Summary
ConstructorsConstructorDescriptionDefaultBraintreeExternalCallService(com.broadleafcommerce.paymentgateway.util.PaymentResponseUtil paymentResponseUtil, BraintreeProvider braintreeProvider, ExternalBraintreeProviderProperties properties, BraintreeConfigurationProperties braintreeConfigurationProperties, List<ResponseTransformer> requestResponseTransformers, com.fasterxml.jackson.databind.ObjectMapper mapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
Method Summary
Modifier and TypeMethodDescriptionprotected com.broadleafcommerce.paymentgateway.domain.PaymentResponsebuildPaymentResponse(@NonNull BraintreePaymentRequest braintreePaymentRequest) com.broadleafcommerce.paymentgateway.domain.PaymentResponsecall(@NonNull BraintreePaymentRequest braintreePaymentRequest) Executes the payment request to the Braintree API.com.broadleafcommerce.paymentgateway.domain.PaymentResponsecommunicateWithVendor(@NonNull BraintreePaymentRequest braintreePaymentRequest) protected BraintreeResponseexecuteRequest(@NonNull BraintreePaymentRequest braintreePaymentRequest) protected BraintreeConfigurationPropertiesprotected BraintreeProviderprotected StringgetErrorClass(BraintreeResponse errorResponse) protected StringgetGatewayTransactionType(@NonNull BraintreePaymentRequest braintreePaymentRequest) protected com.fasterxml.jackson.databind.ObjectMapperprotected com.broadleafcommerce.paymentgateway.util.PaymentResponseUtilprotected ExternalBraintreeProviderPropertiesprotected List<ResponseTransformer>protected com.broadleafcommerce.common.extension.TypeFactoryprotected BraintreeResponsehandleExecuteCustomRequest(@NonNull BraintreePaymentRequest braintreePaymentRequest) protected voidhandleWebClientException(ProviderApiException apiException, com.broadleafcommerce.paymentgateway.domain.PaymentResponse paymentResponse, BraintreeResponse errorResponse) protected StringidentifyFailureType(String errorClass, String transactionReferenceId) protected ResponseTransformeridentifyRequestResponseTransformer(@NonNull String transactionType) protected com.broadleafcommerce.paymentgateway.domain.PaymentResponseprocessProviderApiException(@NonNull ProviderApiException apiException, @NonNull com.broadleafcommerce.paymentgateway.domain.PaymentResponse paymentResponse, @NonNull BraintreePaymentRequest braintreePaymentRequest) Methods inherited from class com.broadleafcommerce.paymentgateway.service.AbstractExternalPaymentGatewayCall
clearStatus, getServiceStatus, incrementFailure, process
-
Constructor Details
-
DefaultBraintreeExternalCallService
public DefaultBraintreeExternalCallService(com.broadleafcommerce.paymentgateway.util.PaymentResponseUtil paymentResponseUtil, BraintreeProvider braintreeProvider, ExternalBraintreeProviderProperties properties, BraintreeConfigurationProperties braintreeConfigurationProperties, List<ResponseTransformer> requestResponseTransformers, com.fasterxml.jackson.databind.ObjectMapper mapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-
-
Method Details
-
call
public com.broadleafcommerce.paymentgateway.domain.PaymentResponse call(@NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) Description copied from interface:BraintreeExternalCallServiceExecutes the payment request to the Braintree API.- Specified by:
callin interfaceBraintreeExternalCallService- Parameters:
braintreePaymentRequest- the payment request that should be executed for the specifiedtransaction type.- Returns:
- the payment response
-
getServiceName
- Specified by:
getServiceNamein interfacecom.broadleafcommerce.paymentgateway.vendor.service.monitor.ServiceStatusDetectable<BraintreePaymentRequest>
-
communicateWithVendor
public com.broadleafcommerce.paymentgateway.domain.PaymentResponse communicateWithVendor(@NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) - Specified by:
communicateWithVendorin classcom.broadleafcommerce.paymentgateway.service.AbstractExternalPaymentGatewayCall<BraintreePaymentRequest,com.broadleafcommerce.paymentgateway.domain.PaymentResponse>
-
getFailureReportingThreshold
- Specified by:
getFailureReportingThresholdin interfacecom.broadleafcommerce.paymentgateway.service.FailureCountExposable- Specified by:
getFailureReportingThresholdin classcom.broadleafcommerce.paymentgateway.service.AbstractExternalPaymentGatewayCall<BraintreePaymentRequest,com.broadleafcommerce.paymentgateway.domain.PaymentResponse>
-
buildPaymentResponse
protected com.broadleafcommerce.paymentgateway.domain.PaymentResponse buildPaymentResponse(@NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) -
getGatewayTransactionType
protected String getGatewayTransactionType(@NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) -
identifyRequestResponseTransformer
protected ResponseTransformer identifyRequestResponseTransformer(@NonNull @NonNull String transactionType) -
executeRequest
protected BraintreeResponse executeRequest(@NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) -
processProviderApiException
protected com.broadleafcommerce.paymentgateway.domain.PaymentResponse processProviderApiException(@NonNull @NonNull ProviderApiException apiException, @NonNull @NonNull com.broadleafcommerce.paymentgateway.domain.PaymentResponse paymentResponse, @NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) -
getErrorClass
-
handleWebClientException
protected void handleWebClientException(ProviderApiException apiException, com.broadleafcommerce.paymentgateway.domain.PaymentResponse paymentResponse, BraintreeResponse errorResponse) -
identifyFailureType
-
handleExecuteCustomRequest
protected BraintreeResponse handleExecuteCustomRequest(@NonNull @NonNull BraintreePaymentRequest braintreePaymentRequest) -
getPaymentResponseUtil
protected com.broadleafcommerce.paymentgateway.util.PaymentResponseUtil getPaymentResponseUtil() -
getBraintreeProvider
-
getProperties
-
getBraintreeConfigurationProperties
-
getRequestResponseTransformers
-
getMapper
protected com.fasterxml.jackson.databind.ObjectMapper getMapper() -
getTypeFactory
protected com.broadleafcommerce.common.extension.TypeFactory getTypeFactory()
-