Class DefaultTabbyWebhookHandler
java.lang.Object
com.broadleafcommerce.tabby.service.webhook.DefaultTabbyWebhookHandler
- All Implemented Interfaces:
com.broadleafcommerce.paymentgateway.service.PaymentGatewayTypeAware
,com.broadleafcommerce.paymentgateway.service.PaymentGatewayWebhookHandler
,TabbyWebhookHandler
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDefaultTabbyWebhookHandler
(TabbyConfigurationProperties configurationProperties, com.broadleafcommerce.common.extension.TypeFactory typeFactory, com.fasterxml.jackson.databind.ObjectMapper objectMapper) -
Method Summary
Modifier and TypeMethodDescriptionprotected String
buildGatewayTransactionId
(@NonNull String tabbyPaymentId, @NonNull TabbyPaymentStatus targetPaymentStatus) protected TabbyWebhookEvent
convertRequestBody
(@NonNull String requestBody) protected com.broadleafcommerce.paymentgateway.domain.PaymentResponse
convertToPaymentResponse
(@NonNull TabbyWebhookEvent tabbyWebhookEvent, @NonNull String requestBody) org.apache.commons.lang3.tuple.Pair<com.broadleafcommerce.paymentgateway.domain.TransactionIdentifier,
com.broadleafcommerce.paymentgateway.domain.PaymentResponse> convertToPaymentResponse
(@NonNull org.springframework.http.HttpHeaders headers, @NonNull String requestBody, @NonNull Map<String, String> parameters) protected String
getApplicationId
(@NonNull Map<String, String> parameters) protected TabbyConfigurationProperties
protected String
getGatewayTransactionId
(@NonNull TabbyWebhookEvent tabbyWebhookEvent) protected String
getGatewayTransactionType
(@NonNull TabbyWebhookEvent tabbyWebhookEvent) protected com.fasterxml.jackson.databind.ObjectMapper
protected String
getTenantId
(@NonNull Map<String, String> parameters) protected javax.money.MonetaryAmount
getTransactionAmount
(@NonNull TabbyWebhookEvent tabbyWebhookEvent) protected com.broadleafcommerce.paymentgateway.domain.TransactionIdentifier
getTransactionIdentifier
(@NonNull TabbyWebhookEvent tabbyWebhookEvent, @NonNull Map<String, String> parameters) protected com.broadleafcommerce.paymentgateway.domain.enums.TransactionType
getTransactionType
(@NonNull TabbyWebhookEvent tabbyWebhookEvent) protected com.broadleafcommerce.common.extension.TypeFactory
protected String
getWebhookType
(@NonNull TabbyWebhookEvent tabbyWebhookEvent) protected boolean
isSignatureValid
(@NonNull org.springframework.http.HttpHeaders headers, @NonNull Map<String, String> parameters) protected boolean
isSupportedEvent
(@NonNull TabbyWebhookEvent webhookEvent) boolean
shouldHandleRequest
(@NonNull org.springframework.http.HttpHeaders headers, @NonNull String requestBody, @NonNull Map<String, String> parameters) void
validate
(@NonNull org.springframework.http.HttpHeaders headers, @NonNull String requestBody, @NonNull Map<String, String> parameters) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.broadleafcommerce.paymentgateway.service.PaymentGatewayWebhookHandler
buildFailedWebhookResponse, buildSuccessfulWebhookResponse, convertToPaymentResponse, getEventId, shouldHandleRequest, validate
-
Field Details
-
WEBHOOK_SIGNATURE_HEADER
- See Also:
-
-
Constructor Details
-
DefaultTabbyWebhookHandler
public DefaultTabbyWebhookHandler(TabbyConfigurationProperties configurationProperties, com.broadleafcommerce.common.extension.TypeFactory typeFactory, com.fasterxml.jackson.databind.ObjectMapper objectMapper)
-
-
Method Details
-
validate
public void validate(@NonNull @NonNull org.springframework.http.HttpHeaders headers, @NonNull @NonNull String requestBody, @NonNull @NonNull Map<String, String> parameters) - Specified by:
validate
in interfacecom.broadleafcommerce.paymentgateway.service.PaymentGatewayWebhookHandler
-
shouldHandleRequest
public boolean shouldHandleRequest(@NonNull @NonNull org.springframework.http.HttpHeaders headers, @NonNull @NonNull String requestBody, @NonNull @NonNull Map<String, String> parameters) - Specified by:
shouldHandleRequest
in interfacecom.broadleafcommerce.paymentgateway.service.PaymentGatewayWebhookHandler
-
convertToPaymentResponse
public org.apache.commons.lang3.tuple.Pair<com.broadleafcommerce.paymentgateway.domain.TransactionIdentifier,com.broadleafcommerce.paymentgateway.domain.PaymentResponse> convertToPaymentResponse(@NonNull @NonNull org.springframework.http.HttpHeaders headers, @NonNull @NonNull String requestBody, @NonNull @NonNull Map<String, String> parameters) - Specified by:
convertToPaymentResponse
in interfacecom.broadleafcommerce.paymentgateway.service.PaymentGatewayWebhookHandler
-
getSupportedWebhookNotificationTypes
- Specified by:
getSupportedWebhookNotificationTypes
in interfacecom.broadleafcommerce.paymentgateway.service.PaymentGatewayWebhookHandler
-
getGatewayType
- Specified by:
getGatewayType
in interfacecom.broadleafcommerce.paymentgateway.service.PaymentGatewayTypeAware
-
getApplicationId
-
getTenantId
-
isSignatureValid
-
convertRequestBody
-
isSupportedEvent
-
getTransactionIdentifier
protected com.broadleafcommerce.paymentgateway.domain.TransactionIdentifier getTransactionIdentifier(@NonNull @NonNull TabbyWebhookEvent tabbyWebhookEvent, @NonNull @NonNull Map<String, String> parameters) -
convertToPaymentResponse
protected com.broadleafcommerce.paymentgateway.domain.PaymentResponse convertToPaymentResponse(@NonNull @NonNull TabbyWebhookEvent tabbyWebhookEvent, @NonNull @NonNull String requestBody) -
getTransactionAmount
protected javax.money.MonetaryAmount getTransactionAmount(@NonNull @NonNull TabbyWebhookEvent tabbyWebhookEvent) -
getTransactionType
protected com.broadleafcommerce.paymentgateway.domain.enums.TransactionType getTransactionType(@NonNull @NonNull TabbyWebhookEvent tabbyWebhookEvent) -
getGatewayTransactionType
-
getGatewayTransactionId
-
getWebhookType
-
buildGatewayTransactionId
protected String buildGatewayTransactionId(@NonNull @NonNull String tabbyPaymentId, @NonNull @NonNull TabbyPaymentStatus targetPaymentStatus) -
getConfigurationProperties
-
getTypeFactory
protected com.broadleafcommerce.common.extension.TypeFactory getTypeFactory() -
getObjectMapper
protected com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
-