SaaS CMS has officially launched! Learn more now.

Class ConditionAwareItemDiscountProcessor<TEntryPromotion>

Base class for a promotion processor that stores condition items when evaluating its promotions.

Inheritance
System.Object
PromotionProcessorBase<TEntryPromotion>
ConditionAwareItemDiscountProcessor<TEntryPromotion>
Implements
Namespace: EPiServer.Commerce.Marketing.Promotions
Assembly: EPiServer.Business.Commerce.dll
Version: 11.8.3
Syntax
public abstract class ConditionAwareItemDiscountProcessor<TEntryPromotion> : GetItemDiscountProcessorBase<TEntryPromotion>, IPromotionProcessor where TEntryPromotion : EntryPromotion
Type Parameters
Name Description
TEntryPromotion

An entry-level promotion.

Constructors

ConditionAwareItemDiscountProcessor(CollectionTargetEvaluator, FulfillmentEvaluator, LocalizationService, Func<TEntryPromotion, DiscountItems>, Func<TEntryPromotion, MonetaryReward>, Func<TEntryPromotion, PurchaseQuantity>, RedemptionDescriptionFactory)

Declaration
protected ConditionAwareItemDiscountProcessor(CollectionTargetEvaluator targetEvaluator, FulfillmentEvaluator fulfillmentEvaluator, LocalizationService localizationService, Func<TEntryPromotion, DiscountItems> targetGetter, Func<TEntryPromotion, MonetaryReward> discountGetter, Func<TEntryPromotion, PurchaseQuantity> conditionGetter, RedemptionDescriptionFactory redemptionDescriptionFactory)
Parameters
Type Name Description
CollectionTargetEvaluator targetEvaluator

The service that is used to evaluate the target properties.

FulfillmentEvaluator fulfillmentEvaluator

The service that is used to evaluate the fulfillment status of the promotion.

EPiServer.Framework.Localization.LocalizationService localizationService

The localization service.

System.Func<TEntryPromotion, DiscountItems> targetGetter

Delegate to get the discount targets from the promotion.

System.Func<TEntryPromotion, MonetaryReward> discountGetter

Delegate to get the discount from the promotion.

System.Func<TEntryPromotion, PurchaseQuantity> conditionGetter

Delegate to get the condition from the promotion.

RedemptionDescriptionFactory redemptionDescriptionFactory

Factory for creating RedemptionDescriptions.

Methods

CanBeFulfilled(TEntryPromotion, PromotionProcessorContext)

Declaration
protected override bool CanBeFulfilled(TEntryPromotion promotionData, PromotionProcessorContext context)
Parameters
Type Name Description
TEntryPromotion promotionData
PromotionProcessorContext context
Returns
Type Description
System.Boolean
Overrides
EPiServer.Commerce.Marketing.Promotions.GetItemDiscountProcessorBase<TEntryPromotion>.CanBeFulfilled(TEntryPromotion, EPiServer.Commerce.Marketing.PromotionProcessorContext)

GetFulfillmentStatus(TEntryPromotion, PromotionProcessorContext)

Declaration
protected override FulfillmentStatus GetFulfillmentStatus(TEntryPromotion promotionData, PromotionProcessorContext context)
Parameters
Type Name Description
TEntryPromotion promotionData
PromotionProcessorContext context
Returns
Type Description
FulfillmentStatus
Overrides
EPiServer.Commerce.Marketing.Promotions.GetItemDiscountProcessorBase<TEntryPromotion>.GetFulfillmentStatus(TEntryPromotion, EPiServer.Commerce.Marketing.PromotionProcessorContext)

GetRedemptions(TEntryPromotion, PromotionProcessorContext, IEnumerable<String>)

Declaration
protected override IEnumerable<RedemptionDescription> GetRedemptions(TEntryPromotion promotionData, PromotionProcessorContext context, IEnumerable<string> applicableCodes)
Parameters
Type Name Description
TEntryPromotion promotionData
PromotionProcessorContext context
System.Collections.Generic.IEnumerable<System.String> applicableCodes
Returns
Type Description
System.Collections.Generic.IEnumerable<RedemptionDescription>
Overrides
EPiServer.Commerce.Marketing.Promotions.GetItemDiscountProcessorBase<TEntryPromotion>.GetRedemptions(TEntryPromotion, EPiServer.Commerce.Marketing.PromotionProcessorContext, System.Collections.Generic.IEnumerable<System.String>)

Implements