Class ExternalCampaignProvider

    • Constructor Detail

      • ExternalCampaignProvider

        public ExternalCampaignProvider​(org.springframework.web.reactive.function.client.WebClient webClient,
                                        com.fasterxml.jackson.databind.ObjectMapper objectMapper,
                                        com.broadleafcommerce.common.extension.TypeFactory typeFactory,
                                        ExternalCampaignProperties properties)
    • Method Detail

      • retrieveTrackingIdForUsableCode

        public Optional<String> retrieveTrackingIdForUsableCode​(String code,
                                                                @Nullable
                                                                com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Description copied from interface: CampaignProvider
        Determine a tracking id for the provided code string, or else an empty string.
        Specified by:
        retrieveTrackingIdForUsableCode in interface CampaignProvider
        Parameters:
        code - The provided code from which to retrieve a tracking id.
        contextInfo - Context information around sandbox and multitenant state.
        Returns:
        A tracking id for the provided code string, or else an empty string.
      • validateCampaignCodeUsages

        public com.broadleafcommerce.promotion.campaign.client.web.context.CampaignCodeUsageValidationResult validateCampaignCodeUsages​(com.broadleafcommerce.cart.client.domain.Cart cart,
                                                                                                                                        List<String> campaignCodes,
                                                                                                                                        @Nullable
                                                                                                                                        com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
        Description copied from interface: CampaignProvider
        Retrieve validation information regarding the cart's usage of the provided campaign codes to determine if the usage is still valid.
        Specified by:
        validateCampaignCodeUsages in interface CampaignProvider
        Parameters:
        cart - The cart against which to validate code uses.
        campaignCodes - The codes to check for validity.
        contextInfo - Context information around sandbox and multitenant state.
        Returns:
        A validation result that holds information about which campaign code usages are invalid and why.
      • getServiceClient

        protected String getServiceClient()