All Classes and Interfaces

Class
Description
This class allows for reuse of active date logic within the offer service.
AlternateLifecycleOfferAuditSummaryRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Provides an alternate path for handling persistence for OfferAuditSummary.
AlternateLifecycleSharedCodeAuditSummaryRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Provides an alternate path for handling persistence for SharedCodeAuditSummary.
Simple stucture to store an amount and qty.
Many entities have customizable dynamic attributes, and this class is intended to hold such values.
Transforms a Map of String keys and JpaAttribute values into a JSON object String and vice versa.
Configuration properties for controlling which audit checks run for the various flows.
This object is used to control which audit validations are run in DefaultOfferAndOfferCodeUsabilityService.getOfferAndOfferCodeUsabilityInfo(List, List, List, CustomerContext, ContextInfo) Many flows within PromotionServices can call audit validations as part of the flow.
 
 
Constants for working with the cache invalidation messages for the Promotion service.
 
Lightweight cacheable structure to simply hold the tracking ids relationship to offer
The main domain that the Broadleaf Campaign service is based around.
Spring cloud data channel description for messaging input.
Configuration properties for special behavior on campaign code generation.
Configuration properties for special behavior on campaign code generation for vouchers.
Validator used to run checks against campaign codes to determine which codes are still usable.
Spring Boot default property overrides for this service
 
Campaign-specific configuration for validation.
 
 
 
 
CampaignRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Repository for persistent counter-parts of com.broadleafcommerce.promotion.campaign.domain.Campaign.
Base service API for Campaign.
 
 
Validations for Campaign.
Represents a candidate fulfillment group for which an Offer has been applied.
DTO containing information necessary for determining if an Offer that can apply to one or more EnhancedFulfillmentGroups is part of the best permutation of all offers applicable to that group.
DTO containing information necessary for determining if an Offer that can apply to an EnhancedLineItem is part of the best permutation of all offers applicable to that line item.
 
DTO containing the candidate offers broken out into groups based on an offer's Discount.getTargetType() }.
Utility for creating each of the different CandidateXOffer types: CandidateOrderOffer, CandidateItemOffer, CandidateFulfillmentGroupOffer.
DTO containing information necessary for determining if an Offer that can apply to an EnhancedOrder is part of the best permutation of all offers applicable to that order.
Determines for a given character what the available replacement characters are.
Spring cloud data channel description for messaging input.
 
DTO holding the resulting information about the code generation.
Performs operations on a CodeGenerator, such as validation and code generation.
Corresponds to the status of a CodeGenerator
 
A code generation bucket provides a way to generate large numbers of random codes while minimizing collisions in the database.
 
Validation ran on a CodeGenerator before create.
CodeGeneratorRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Repository for persistent counter-parts of com.broadleafcommerce.promotion.campaign.domain.CodeGenerator.
Base service API for com.broadleafcommerce.promotion.campaign.domain.CodeGenerator.
Validations for CodeGenerator.
Represents a collection of overrides to other combinability and stacking settings.
Enumerates the combinability override options for an CombinabilityOverride.
Enumerates the combinability options for an Offer.
DTO containing a permutation for each offer type
This class is used by the OfferProcessingContext to build a tree of compatible offers of the same type.
This class is used by the OfferProcessingContext to build a tree of compatible permutations.
 
Configuration properties for defining the names of the customer fields that can be targeted by UserTarget.targetTypes.
CustomizedCampaignRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Provides advanced functionality for Campaigns that require manually implemented queries rather than through Spring Data.
CustomizedMarketingMessageRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Adds customized methods for dealing with MarketingMessage persistence.
CustomizedOfferCodeRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Provides advanced functionality for OfferCodes that require manually implemented queries rather than through Spring Data.
CustomizedOfferRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Advanced functionality related to offer maintenance and filtering.
 
 
 
 
Default Export.getTarget() values that are supported for processing.
 
Service responsible for enforcing idempotency checks on a message before executing an operation against the message.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Represents reserved UserTarget targetValues that have special meaning in Broadleaf.
 
Determines the default user type that offers can target.
 
Encapsulates all of the fields relevant to an offer's discount.
When processing order adjustments, we need to be able to prorate the adjustment to the relevant line items.
Interface to abstract whether the discount and amount come from a Discount or DiscountTier
Enumerates the methods whereby to apply an offer's discount to a target.
Parameters used in the DefaultOfferApplicationService to calculate the potential discount of a CandidateItemOffer for an EnhancedLineItem.
Enumerates the kinds of entities to which an Discount.getAmount() mount offer's discount} can apply.
Represents a tier and amount combination for an offer's discount.
Converter used for converting a String List type to a JSON String before persistence.
Enumerates the options for when an offer's discount is be applied.
 
 
 
 
 
DTO containing prorated price adjustment information for a EnhancedLineItem caused by a CandidateItemOffer targeting it (see Offer.getTargetItemCriteria()) or using it as a qualifier (see Offer.getItemQualifierCriteria()).
 
DTO containing price adjustment information for an EnhancedFulfillmentGroup caused by a CandidateFulfillmentGroupOffer targeting it.
DTO containing results of the evaluation of a permutation of item offers.
A service for calculating, determining, and applying the best fulfillment offers.
For OfferService.warmCache() and OfferCodeService.warmCache(), return the status of completion of the cache warming process.
Describes how the system should consider full cache of offer related entities.
Service responsible for enforcing idempotency checks on a message before executing an operation against the message.
IdSeekPageIterator<T extends com.broadleafcommerce.data.tracking.core.Trackable>
Iterator that performs "seek" pagination.
Encapsulates all criteria used either to determine if an item is a qualifier or a target.
Encapsulates a single rule the forms a part of an ItemCriteria.
DTO containing price adjustment information for a EnhancedLineItem caused by a CandidateItemOffer targeting it.
DTO containing results of the evaluation of a permutation of item offers.
A service for calculating, determining, and applying the best order item offers.
Compares CandidateItemOffers using Offer.priority then CandidateItemOffer.potentialSavingsQtyOne.
Compares CandidateItemOffers using Offer.priority then CandidateItemOffer.weightedPercentSaved.
Enumerates the possible ways in which an order item's use by offers can be restricted depending on whether it meets an offer's item qualifier criteria or target item criteria.
 
 
Persistent counter-part to an Attribute for use with a JPA datastore.
 
Jpa DB counter-part of CampaignRepository.
Persistent counter-part to campaign tracking information for use with a Jpa datastore.
 
 
JPA counter-part of CodeGeneratorRepository.
Persistent counter-part to a CombinabilityOverride for use with a Jpa datastore.
 
 
 
 
 
Persistent counter-part to a DiscountTier for use with a Jpa datastore.
Persistent counter-part to an ItemCriteriaRule for use with a Jpa datastore.
Persistent counter-part to a MarketingMessage for use with a Jpa datastore.
 
Persistent counter-part to a Offer for use with a Jpa datastore.
Persistent counter-part to OfferAuditDetail for use with a Jpa datastore.
 
 
JPA counter-part of OfferAuditSummaryRepository.
 
JPA implementation of OfferCodeRepository.
 
 
 
 
 
Persistent counter-part to UserTarget for use with a Jpa datastore.
 
 
DTO containing information about the effects of all the offer's applicable to an EnhancedLineItem either treating it as a Offer.getTargetItemCriteria() target} or a Offer.getItemQualifierCriteria() qualifier}.
Enumerates the kinds of LineItems that exist.
A MarketingMessage encapsulates information necessary for displaying a marketing message related to an Offer next to items affected by the offer in different contexts.
Enumeration that determines the locations in which an offer's marketing message should appear.
This service is responsible for finding all the active Offers related to a EnhancedLineItem in order to provide the ItemMarketingMessageResolver to retrieve every relevant MarketingMessage.
MarketingMessageRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Repository for persistent counter-parts of MarketingMessages.
A DTO used to make requests to the MarketingMessageResolver, which finds MarketingMessages.
Service API to retrieve MarketingMessages for a MarketingMessageRequest based on the Offers the messages belong to, the MarketingMessageLocationType, and the MarketingMessageTargetType.
A DTO to return a list of MarketingMessages.
 
A DTO to return a list of MarketingMessages.
MarketingMessage is a subresource of Offer, so most of these endpoints fall under the same base URL as OffersEndpoint.
Base service API for MarketingMessage.
Enumerates the types of items a marketing message can target.
Validations for MarketingMessage.
Denotes the status of max usage for a given offer.
Helper class to calculate rounding of monetary unit amounts from offer adjustments.
An Offer encapsulates information required to provide specialized discount pricing for orders, order items, or related entities This includes not just the discount amount but also important factors such as whether the discount is a percent off, amount off, or fixed price type and whether it should be applied immediately or provided as future credit to the user.
 
Validator used to run checks against offers and offer codes to determine which offers and codes are still usable.
This service adds adjustments to the order
Captures audit relevant data when an offer was applied to an order.
OfferAuditDetailRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
 
 
 
Validation for OfferAuditDetail
Summary of relevant audit data for an offer.
OfferAuditSummaryRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
 
Configuration for engaging default Broadleaf support for Apache Ignite cache
Properties that influence cache settings for the pricing service
This service determines what offers are candidates for a provided order and context.
Spring cloud data channel description for messaging input.
 
 
This class builds convenience structures that represent the code and related offer settings that are used by the offer engine processing.
 
The endpoint to read or start exports for OfferCodes that belong to an Offer or Campaign.
An ExportProcessor for exports of OfferCode.
 
 
 
 
 
OfferCodeRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
Repository for persistent counter-parts of OfferCode.
 
 
Validations for OfferCode.
This structure allows permutations by offer type to be grouped based on how they are combined with other types and to easily check whether a given set of permutations is compatible with a permutation from another offer type.
A structure containing the combinability data for a single offer.
This component attempts to populate the ContextInfo.getDefaultCurrency()
Spring Boot default property overrides for this service
Additional info for all the offers treating an EnhancedLineItem as a target.
 
 
OfferEngineResponseBuilder<P extends com.broadleafcommerce.promotion.offer.client.web.context.info.ProratedItemOfferAdjustment>
Tool to build a OrderResponse from the information provided via an EnhancedOrder.
This serves as the entry and exist points for the offer engine, which takes in an order and context then determines what offers can apply before calculating the best possible permutation of offers and applying them.
Offer-specific configuration for validation.
A special UserType for a Set collection of JpaItemCriteriaRule.
 
Responsible for managing offer and offerCode lifecycle in regard to max usage status.
 
 
 
Utility methods used by the offer processing engine extracted for ease of testing.
This object manages the full list of permutations for a given execution of the offer engine and provides methods to determine the correct mix of offers for the final result.
 
DTO containing information about the order items used by an Offer as item qualifiers.
OfferRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
 
Properties related to offer rounding behaviors.
 
 
 
 
Configuration properties for Offer Services.
 
 
DTO containing a set of compatible offers of the same type and that share the same combinability with regard to other types.
Service API for OfferAuditSummary, supported by OfferAuditSummaryRepository.
Details of system offer usage to record offer audit entities.
Helper methods around users for offers.
Validations for Offer.
 
This class contains methods with usage shared by ItemOfferProcessor and OrderOfferProcessor.
DTO containing price adjustment information for an EnhancedOrder caused by a CandidateOrderOffer targeting it.
DTO containing results of the evaluation of a permutation of order offers.
A service for calculating, determining, and applying the best order offers.
Properties related to offer rounding behaviors for order typed offers.
DTO containing relevant totals such as the order subtotal, discountable subtotals, and other totals needed to determine the best offer.
 
This service is responsible for calculating the potential savings for Offer target items if that offer is was the only offer applied.
Spring cloud data channel description for messaging input.
Internal Spring event to notify listeners of a state change on an entity in order to influence cache invalidation activities.
An event listener that triggers when a promotion service related entity that is eligible for cache is mutated.
Provides supporting functionality related to cache invalidation components based on the PromotionCacheInvalidationHelper.getSupportedProjectionTypes() registered.
Pojo defining the types supported for cache invalidation, as well as the send delay for cache invalidation messages (may be zero delay, in which case sending is immediate).
Factory responsible for creating cache invalidation messages via the NotificationHandler
 
 
 
Initialize the NotificationState for PromotionCacheInvalidationProducer.TYPE.
Spring cloud data channel description for messaging output.
 
Calculates all of an Order's order and fulfillment LineItems' ProratedItemOfferAdjustments.
Enumeration to determine whether an offer's discount is divided amongst different types of order items: Whether just "targets" or also "qualifiers".
This service is responsible for marking an order's order items as either targets or qualifiers for a given CandidateItemOffer.
Comparator for LineItemOfferDetails being used as qualifiers for offers.
An event listener that triggers when an order is successfully submitted.
 
 
 
 
Summary of relevant audit data for a shared code.
 
SharedCodeAuditSummaryRepository<D extends com.broadleafcommerce.data.tracking.core.Trackable>
 
Encapsulates all of the fields relevant to an offer's subscription compatibility.
 
Comparator for LineItemOfferDetails being used as targets of offers.
DTO containing the total potential savings info for all of an order's order items due to the application of a single CandidateItemOffer.
Determines how the Offer.maxUsesPerUserStrategy will be applied.
Abstraction of a user that offers can target.
A request DTO for generating voucher codes.
Validator used to run checks against voucher offers to determine which offers are still usable.