Class OrderOperationServiceAutoConfiguration
- java.lang.Object
 - 
- com.broadleafcommerce.orderoperation.service.autoconfigure.OrderOperationServiceAutoConfiguration
 
 
- 
@Configuration @EnableConfigurationProperties({ExternalOrderProperties.class,SSLVerificationProperties.class,OrderGenerationProperties.class,ExternalCartProperties.class,ExternalOfferProperties.class,ExternalCampaignProperties.class,ExternalPaymentProperties.class}) public class OrderOperationServiceAutoConfiguration extends Object 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description static classOrderOperationServiceAutoConfiguration.OrderOperationServiceMessageHandlerAutoConfiguration 
- 
Constructor Summary
Constructors Constructor Description OrderOperationServiceAutoConfiguration() 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CancelReturnRequestValidatorcancelReturnRequestValidator()CartOrderFulfillmentGenerationService<com.broadleafcommerce.cart.client.domain.Cart,com.broadleafcommerce.order.client.domain.Order,com.broadleafcommerce.order.client.domain.OrderFulfillment>cartOrderFulfillmentGenerationService(FulfillmentProvider<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentProvider, FulfillmentSplittingService<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentSplittingService, com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderGenerationProperties orderGenerationProperties)CartOrderGenerationService<com.broadleafcommerce.cart.client.domain.Cart,com.broadleafcommerce.order.client.domain.Order>cartOrderGenerationService(OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderGenerationProperties properties)ConfirmReturnRequestValidatorconfirmReturnRequestValidator()OrderHistoryService<com.broadleafcommerce.order.client.domain.Order,OrderWithFulfillmentsAndReturns>orderHistoryService(com.broadleafcommerce.resource.security.utils.service.AuthenticationUtils authenticationUtils, com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, FulfillmentProvider<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentProvider, ReturnAuthorizationProvider<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationProvider)Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction>orderOperationsOauth2FilterFunctionSupplier(org.springframework.security.oauth2.client.registration.ClientRegistrationRepository clientRegistrations, SSLVerificationProperties sslVerificationProperties)We'll leave this with a general name as it can (and should) be reused in a flex package.ResourceLockProviderorderOperationsResourceLockProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalOrderProperties properties)org.springframework.web.reactive.function.client.WebClientorderOperationsWebClient(Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction> oauth2FilterSupplier, com.fasterxml.jackson.databind.ObjectMapper objectMapper, SSLVerificationProperties sslVerificationProperties)CampaignProviderorderOpsCampaignProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalCampaignProperties properties)CartProviderorderOpsCartProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)OfferProviderorderOpsOfferProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalOfferProperties properties, UserTargetGenerationService userTargetGenerationService)PaymentProviderorderOpsPaymentProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalPaymentProperties properties)UserTargetGenerationServiceorderOpsUserTargetGenerationService(com.broadleafcommerce.common.extension.TypeFactory typeFactory, com.broadleafcommerce.resource.security.utils.service.AuthenticationUtils authenticationUtils)PaymentAuthReversalServicepaymentAuthReversalService(OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, com.broadleafcommerce.common.extension.TypeFactory typeFactory, PaymentProvider paymentProvider)PaymentCaptureServicepaymentCaptureService(PaymentProvider paymentProvider)PaymentPriorityStrategypaymentPriorityStrategy()PaymentRefundServicepaymentRefundService(PaymentPriorityStrategy paymentPriorityStrategy, OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, ReturnAuthorizationProvider<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationProvider, PaymentProvider paymentProvider, com.broadleafcommerce.common.extension.TypeFactory typeFactory)ReturnConfirmationGenerationServicereturnConfirmationGenerationService(SplitRoundingHelper splitRoundingHelper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)ReturnGenerationServicereturnGenerationService(FulfillmentSplittingService<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentSplittingService, FulfillmentOperationHelper fulfillmentOperationHelper, SplitRoundingHelper splitRoundingHelper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)ReturnOperationServicereturnOperationService(com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, FulfillmentProvider<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentProvider, ReturnAuthorizationProvider<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationProvider, ReturnRequestValidator returnRequestValidator, ReturnGenerationService returnGenerationService, ReturnCreatedProducer returnCreatedProducer, ConfirmReturnRequestValidator confirmReturnRequestValidator, ReturnConfirmationGenerationService returnConfirmationGenerationService, ReturnConfirmedProducer returnConfirmedProducer, CancelReturnRequestValidator cancelReturnRequestValidator, ReturnSplittingService returnSplittingService, ReturnCancelledProducer returnCancelledProducer)ReturnRequestValidatorreturnRequestValidator()ReturnSplittingServicereturnSplittingService(com.broadleafcommerce.common.extension.TypeFactory typeFactory, ReturnGenerationService returnGenerationService) 
 - 
 
- 
- 
Method Detail
- 
orderOperationsOauth2FilterFunctionSupplier
@Bean(name="oAuth2FilterFunctionSupplier") @ConditionalOnMissingBean(name="oAuth2FilterFunctionSupplier") public Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction> orderOperationsOauth2FilterFunctionSupplier(org.springframework.security.oauth2.client.registration.ClientRegistrationRepository clientRegistrations, SSLVerificationProperties sslVerificationProperties)
We'll leave this with a general name as it can (and should) be reused in a flex package. TODO: possibly move this to a broadleaf oauth2 client dependency https://github.com/BroadleafCommerce/MicroPM/issues/1924- Parameters:
 clientRegistrations-sslVerificationProperties-- Returns:
 
 
- 
orderOperationsWebClient
@Bean @ConditionalOnMissingBean(name="orderOperationsWebClient") public org.springframework.web.reactive.function.client.WebClient orderOperationsWebClient(@Qualifier("oAuth2FilterFunctionSupplier") Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction> oauth2FilterSupplier, com.fasterxml.jackson.databind.ObjectMapper objectMapper, SSLVerificationProperties sslVerificationProperties) throws SSLException- Throws:
 SSLException
 
- 
orderOperationsResourceLockProvider
@Bean @ConditionalOnMissingBean public ResourceLockProvider orderOperationsResourceLockProvider(@Qualifier("orderOperationsWebClient") org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalOrderProperties properties)
 
- 
cartOrderGenerationService
@Bean @ConditionalOnMissingBean public CartOrderGenerationService<com.broadleafcommerce.cart.client.domain.Cart,com.broadleafcommerce.order.client.domain.Order> cartOrderGenerationService(OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderGenerationProperties properties)
 
- 
cartOrderFulfillmentGenerationService
@Bean @ConditionalOnMissingBean public CartOrderFulfillmentGenerationService<com.broadleafcommerce.cart.client.domain.Cart,com.broadleafcommerce.order.client.domain.Order,com.broadleafcommerce.order.client.domain.OrderFulfillment> cartOrderFulfillmentGenerationService(FulfillmentProvider<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentProvider, FulfillmentSplittingService<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentSplittingService, com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderGenerationProperties orderGenerationProperties)
 
- 
orderHistoryService
@Bean @ConditionalOnMissingBean public OrderHistoryService<com.broadleafcommerce.order.client.domain.Order,OrderWithFulfillmentsAndReturns> orderHistoryService(com.broadleafcommerce.resource.security.utils.service.AuthenticationUtils authenticationUtils, com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, FulfillmentProvider<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentProvider, ReturnAuthorizationProvider<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationProvider)
 
- 
returnSplittingService
@Bean @ConditionalOnMissingBean public ReturnSplittingService returnSplittingService(com.broadleafcommerce.common.extension.TypeFactory typeFactory, ReturnGenerationService returnGenerationService)
 
- 
returnRequestValidator
@Bean @ConditionalOnMissingBean public ReturnRequestValidator returnRequestValidator()
 
- 
confirmReturnRequestValidator
@Bean @ConditionalOnMissingBean public ConfirmReturnRequestValidator confirmReturnRequestValidator()
 
- 
cancelReturnRequestValidator
@Bean @ConditionalOnMissingBean public CancelReturnRequestValidator cancelReturnRequestValidator()
 
- 
returnOperationService
@Bean @ConditionalOnMissingBean public ReturnOperationService returnOperationService(com.broadleafcommerce.common.extension.TypeFactory typeFactory, OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, FulfillmentProvider<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentProvider, ReturnAuthorizationProvider<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationProvider, ReturnRequestValidator returnRequestValidator, ReturnGenerationService returnGenerationService, @Nullable ReturnCreatedProducer returnCreatedProducer, ConfirmReturnRequestValidator confirmReturnRequestValidator, ReturnConfirmationGenerationService returnConfirmationGenerationService, @Nullable ReturnConfirmedProducer returnConfirmedProducer, CancelReturnRequestValidator cancelReturnRequestValidator, ReturnSplittingService returnSplittingService, @Nullable ReturnCancelledProducer returnCancelledProducer)
 
- 
returnGenerationService
@Bean @ConditionalOnMissingBean public ReturnGenerationService returnGenerationService(FulfillmentSplittingService<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillmentSplittingService, FulfillmentOperationHelper fulfillmentOperationHelper, SplitRoundingHelper splitRoundingHelper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
 
- 
returnConfirmationGenerationService
@Bean @ConditionalOnMissingBean public ReturnConfirmationGenerationService returnConfirmationGenerationService(SplitRoundingHelper splitRoundingHelper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
 
- 
paymentCaptureService
@Bean @ConditionalOnMissingBean public PaymentCaptureService paymentCaptureService(PaymentProvider paymentProvider)
 
- 
paymentPriorityStrategy
@Bean @ConditionalOnMissingBean public PaymentPriorityStrategy paymentPriorityStrategy()
 
- 
paymentRefundService
@Bean @ConditionalOnMissingBean public PaymentRefundService paymentRefundService(PaymentPriorityStrategy paymentPriorityStrategy, OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, ReturnAuthorizationProvider<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizationProvider, PaymentProvider paymentProvider, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
 
- 
paymentAuthReversalService
@Bean @ConditionalOnMissingBean public PaymentAuthReversalService paymentAuthReversalService(OrderProvider<com.broadleafcommerce.order.client.domain.Order> orderProvider, com.broadleafcommerce.common.extension.TypeFactory typeFactory, PaymentProvider paymentProvider)
 
- 
orderOpsCartProvider
@Bean @ConditionalOnMissingBean public CartProvider orderOpsCartProvider(@Qualifier("orderOperationsWebClient") org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory)
 
- 
orderOpsUserTargetGenerationService
@Bean @ConditionalOnMissingBean public UserTargetGenerationService orderOpsUserTargetGenerationService(com.broadleafcommerce.common.extension.TypeFactory typeFactory, com.broadleafcommerce.resource.security.utils.service.AuthenticationUtils authenticationUtils)
 
- 
orderOpsOfferProvider
@Bean @ConditionalOnMissingBean public OfferProvider orderOpsOfferProvider(@Qualifier("orderOperationsWebClient") org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalOfferProperties properties, UserTargetGenerationService userTargetGenerationService)
 
- 
orderOpsCampaignProvider
@Bean @ConditionalOnMissingBean public CampaignProvider orderOpsCampaignProvider(@Qualifier("orderOperationsWebClient") org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalCampaignProperties properties)
 
- 
orderOpsPaymentProvider
@Bean @ConditionalOnMissingBean public PaymentProvider orderOpsPaymentProvider(@Qualifier("orderOperationsWebClient") org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalPaymentProperties properties)
 
 - 
 
 -