The ItemPriceCalculator
class can either price a single commerce item or price a list of commerce items. It first selects the priceList
to use based on the profilePriceListPropertyName
property. The ItemPriceCalculator
then delegates the pricing to different ItemSchemePriceCalculators
based on the item’s pricing scheme by the pricingSchemePropertyName
property.
The ItemPriceListCalculator
component is located in the ACC at /atg/commerce/pricing/calculators/ItemPriceListCalculator
. It has the following properties:
loggingIdentifier
: the ID that this class uses to identify itself in logs.pricingSchemePropertyName
: the property name in the repository for the pricing scheme.profilePriceListPropertyName
: the property name in the repository for the user’s price list.useDefaultPriceList
: If true andProfilePriceListPropertyName
is null, then the value of theautomaticallyUseDefaultPriceList
property of thePriceListManager
determines if the default price list is used. If false, then the default price list is never used.noPriceIsError
: If true, and the price list is null or there is no price in the price list, then an error is thrown. If false, and the price list is null, then nothing happens.priceListManager
: points to the location of thePriceListManager
.pricingSchemeNames
: the Map whose key is the allowed scheme names and whose value is the corresponding calculators.
For more information on this calculator. See the Price List Calculators section of the Using Price Lists chapter.