public class TaxPricingEngineImpl extends PricingEngineService implements TaxPricingEngine
Properties:
TaxPricingCalculator
,
TaxPriceInfo
PricingEngineService.EmptyItemPriceInfo
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string
|
ERR_CANNOT_CREATE_VETO_PROMOTION_ANALYSIS_MESSAGE, EXTRA_PARAM_QUALIFIERSERVICE, mGlobalPromotions, mPricingCalculatorServices
SERVICE_INFO_KEY
DEFAULT_LOG_TRACE_STATUS
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
Constructor and Description |
---|
TaxPricingEngineImpl() |
Modifier and Type | Method and Description |
---|---|
protected void |
applyCalculator(java.lang.Object pCalc,
TaxPriceInfo pTaxPriceQuote,
PricingContext pPricingContext,
java.util.Map pExtraParameters)
Calls the supplied calculator service to price an Order for tax.
|
protected java.util.Collection<RepositoryItem> |
applyPromotions(java.util.Collection pPricingModels,
TaxPriceInfo pTaxPriceQuote,
PricingContext pPricingContext,
java.util.Map pExtraParameters)
Apply the pricing models (promotions) to the Order being priced for tax.
|
void |
checkPromotionsForCloseness(TaxPriceInfo pPriceInfo,
Order pOrder,
java.util.Collection pPricingModels,
java.util.Locale pLocale,
RepositoryItem pProfile,
java.util.Map pExtraParameters)
Check to see if the order qualifies under any of the pricingModels'
"closenessQualifiers".
|
protected boolean |
didPromotionQualify(RepositoryItem pPricingModel,
PricingContext pPricingContext,
java.util.Map pExtraParameters)
Determines if a promotion qualified or not.
|
protected java.lang.String |
getCurrencyCode(Order pOrder,
java.util.Collection pPricingModels,
java.util.Locale pLocale,
RepositoryItem pProfile,
java.util.Map pExtraParameters)
Return the currency code that should be used in the context of this pricing request
|
TaxPricingCalculator[] |
getPostCalculators()
Gets the PricingCalculators which are run after any discounts are applied
|
TaxPricingCalculator[] |
getPreCalculators()
Gets the PricingCalculators which are run before any discounts are applied
|
atg.commerce.pricing.PromotionProcessingComponent[] |
getPrePromotionProcessing()
Returns property PrePromotionProcessing
|
protected java.util.List<AmountInfo> |
getPriceInfoDetails(PricingContext pPricingContext,
java.util.Map pExtraParameters)
Returns price info details for each item.
|
java.util.Collection |
getPricingModels(RepositoryItem pProfile)
Returns a List of pricing models (e.g.
|
protected java.lang.String |
getStackingRuleOrderLimitReachedMessageIdentifier()
Value for stacking rule order limit reached message identifier.
|
protected java.lang.String |
getStackingRulePromotionExcludedMessageIdentifier()
Value for stacking rule promotion excluded message identifier.
|
TaxPriceInfo |
priceTax(Order pOrder,
java.util.Collection pPricingModels,
java.util.Locale pLocale,
RepositoryItem pProfile,
java.util.Map pExtraParameters)
Tax an order within a context.
|
void |
setPostCalculators(TaxPricingCalculator[] pPostCalculators)
Sets the PricingCalculators which are run after any discounts are applied
|
void |
setPreCalculators(TaxPricingCalculator[] pPreCalculators)
Sets the PricingCalculators which are run before any discounts are applied
|
void |
setPrePromotionProcessing(atg.commerce.pricing.PromotionProcessingComponent[] pPrePromotionProcessing)
Sets property PrePromotionProcessing
|
addPromotion, addPromotionToList, applyPromotionProcessing, checkAndAddPromotions, checkAndMergePromotions, checkPromotionExpiration, createEmptyItemPriceInfo, createMaxCouponsPerOrderLimitExclusionMessage, createPriceInfo, createStackingRuleExclusionMessage, createVetoPromotionMessage, didPromotionApply, doStartService, doStopService, expirePromotion, findGlobalPromotions, generateMaxCouponsPerOrderInfo, generateStackingRuleInfo, getAdjustmentPricingModels, getAlwaysLoadGlobalPromotions, getAppliedPromotions, getCalculator, getCalculatorForCalculatorType, getCalculatorTypeCalculators, getCalculatorTypes, getClosenessQualifierEvaluator, getCurrencyCode, getDefaultLocale, getGlobalPromotions, getGlobalPromotionsQuery, getGlobalPromotionsSchedulableDate, getInitialPromotions, getLocale, getMaxNoOfCouponsPerOrderLimitReachedMessageIdentifier, getPriceInfoClass, getPricingCurrencyCode, getPricingModelComparator, getPricingModelEvaluationVetoers, getPricingModelHolderVetoers, getPricingModelProperties, getPricingTools, getProfileProperties, getPromotionItemDescriptors, getPromotionItemTypes, getPromotions, getPromotionsRepository, getPromotionTools, getQualifierService, getQualifierService, getQualifierService, getScheduler, getUpdateSchedule, getUserOnlyPromotions, isPromotionLinkedToCoupon, isUseMerge, isValidItemDescriptor, loadGlobalPromotions, performScheduledTask, prepareEvaluationVetoers, prepareHolderVetoers, pricingComplete, pricingStart, processCQPromotionAnalysisInformation, processDidPromotionApply, processDidPromotionApply, removeExpiredPromotions, resetEmptyItemPriceInfos, resolveCalculator, setAlwaysLoadGlobalPromotions, setCalculatorTypeCalculators, setClosenessQualifierEvaluator, setDefaultLocale, setGlobalPromotionsQuery, setGlobalPromotionsSchedulableDate, setPriceInfoClass, setPricingModelComparator, setPricingModelEvaluationVetoers, setPricingModelHolderVetoers, setPricingModelProperties, setPricingTools, setProfileProperties, setPromotionItemTypes, setPromotionsRepository, setPromotionTools, setQualifierService, setScheduler, setUpdateSchedule, setupMaxCouponsPerOrderCollection, setupStackingRuleCollections, setUseMerge, skipPromotion, skipPromotion, updateMaxCouponsPerOrderTracking, updateStackingRuleTracking, vetoPromotionsForEvaluation, wasPromotionSkipped, wasPromotionSkipped
addLogListener, createAdminServlet, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public void setPreCalculators(TaxPricingCalculator[] pPreCalculators)
public TaxPricingCalculator[] getPreCalculators()
public void setPrePromotionProcessing(atg.commerce.pricing.PromotionProcessingComponent[] pPrePromotionProcessing)
public atg.commerce.pricing.PromotionProcessingComponent[] getPrePromotionProcessing()
public void setPostCalculators(TaxPricingCalculator[] pPostCalculators)
public TaxPricingCalculator[] getPostCalculators()
public java.util.Collection getPricingModels(RepositoryItem pProfile)
getPricingModels
in interface PricingEngine
pProfile
- The user's profile from which the engine will extract promotionsprotected java.lang.String getCurrencyCode(Order pOrder, java.util.Collection pPricingModels, java.util.Locale pLocale, RepositoryItem pProfile, java.util.Map pExtraParameters) throws PricingException
PricingException
- if an error occurs while attempting to determine the currency codepublic TaxPriceInfo priceTax(Order pOrder, java.util.Collection pPricingModels, java.util.Locale pLocale, RepositoryItem pProfile, java.util.Map pExtraParameters) throws PricingException
priceTax
in interface TaxPricingEngine
pOrder
- The order to taxpPricingModels
- A Collection of RepositoryItems representing PricingModelspLocale
- The Locale to use for pricingpProfile
- The user's profilepExtraParameters
- A Map of extra parameters to be used in the pricing, may be nullPricingException
- if an error occurs while attempting to priceprotected java.util.Collection<RepositoryItem> applyPromotions(java.util.Collection pPricingModels, TaxPriceInfo pTaxPriceQuote, PricingContext pPricingContext, java.util.Map pExtraParameters) throws PricingException
pPricingModels
- Collection of PricingModel itemspTaxPriceQuote
- TaxPriceInfo for the Object being pricedpPricingContext
- PricingContextpExtraParameters
- Map of extra parameters, may be nullPricingException
protected void applyCalculator(java.lang.Object pCalc, TaxPriceInfo pTaxPriceQuote, PricingContext pPricingContext, java.util.Map pExtraParameters) throws PricingException
pCalc
- OrderPricingCalculator to callpTaxPriceQuote
- TaxPriceInfo for the OrderpPricingContext
- PricingContextpExtraParameters
- Map of extra parametersPricingException
public void checkPromotionsForCloseness(TaxPriceInfo pPriceInfo, Order pOrder, java.util.Collection pPricingModels, java.util.Locale pLocale, RepositoryItem pProfile, java.util.Map pExtraParameters) throws PricingException
pPriceInfo
- The TaxPriceInfo object associated with the order.pOrder
- The order to checkpPricingModels
- A Collection of RepositoryItems representing PricingModelspLocale
- The Locale to use for pricingpProfile
- The user's profilepExtraParameters
- A Map of extra parameters to be used in the pricing, may be nullPricingException
- if a problem occurred when checking for closenessprotected boolean didPromotionQualify(RepositoryItem pPricingModel, PricingContext pPricingContext, java.util.Map pExtraParameters) throws PricingException
true
if the promotion qualified,
false
otherwise.didPromotionQualify
in class PricingEngineService
pPricingModel
- promotion to checkpPricingContext
- PricingContextpExtraParameters
- Map of extra parameters, may be nulltrue
if the promotion qualified, false
otherwisePricingException
- if something went wrongprotected java.util.List<AmountInfo> getPriceInfoDetails(PricingContext pPricingContext, java.util.Map pExtraParameters)
getPriceInfoDetails
in class PricingEngineService
pPricingContext
- PricingContextpExtraParameters
- Map of extra parameters, may be nulltrue
if the promotion qualified, false
otherwiseprotected java.lang.String getStackingRuleOrderLimitReachedMessageIdentifier()
getStackingRuleOrderLimitReachedMessageIdentifier
in class PricingEngineService
protected java.lang.String getStackingRulePromotionExcludedMessageIdentifier()
getStackingRulePromotionExcludedMessageIdentifier
in class PricingEngineService