|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectatg.nucleus.logging.VariableArgumentApplicationLoggingImpl
atg.nucleus.GenericService
atg.commerce.pricing.PricingEngineService
atg.commerce.pricing.TaxPricingEngineImpl
public class TaxPricingEngineImpl
A TaxPricingEngine implementation which computes the tax for an order. It accomplishes this task by invoking a series of TaxPricingCalculators which incrementally compute the tax price:
Properties:
TaxPricingCalculator,
TaxPriceInfo| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class atg.commerce.pricing.PricingEngineService |
|---|
PricingEngineService.EmptyItemPriceInfo |
| Field Summary | |
|---|---|
static java.lang.String |
CLASS_VERSION
Class version string |
| Fields inherited from class atg.commerce.pricing.PricingEngineService |
|---|
EXTRA_PARAM_QUALIFIERSERVICE, mGlobalPromotions, mPricingCalculatorServices |
| Fields inherited from class atg.nucleus.GenericService |
|---|
SERVICE_INFO_KEY |
| Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging |
|---|
DEFAULT_LOG_TRACE_STATUS |
| Fields inherited from interface atg.nucleus.logging.ApplicationLogging |
|---|
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS |
| Constructor Summary | |
|---|---|
TaxPricingEngineImpl()
|
|
| Method Summary | |
|---|---|
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 |
| Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl |
|---|
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static java.lang.String CLASS_VERSION
| Constructor Detail |
|---|
public TaxPricingEngineImpl()
| Method Detail |
|---|
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 PricingEnginepProfile - The user's profile from which the engine will extract promotions
protected 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 code
public TaxPriceInfo priceTax(Order pOrder,
java.util.Collection pPricingModels,
java.util.Locale pLocale,
RepositoryItem pProfile,
java.util.Map pExtraParameters)
throws PricingException
priceTax in interface TaxPricingEnginepOrder - 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 null
PricingException - if an error occurs while attempting to price
protected 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 null
PricingException
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 parameters
PricingException
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 null
PricingException - if a problem occurred when checking for closeness
protected boolean didPromotionQualify(RepositoryItem pPricingModel,
PricingContext pPricingContext,
java.util.Map pExtraParameters)
throws PricingException
true if the promotion qualified,
false otherwise.
didPromotionQualify in class PricingEngineServicepPricingModel - promotion to checkpPricingContext - PricingContextpExtraParameters - Map of extra parameters, may be null
true if the promotion qualified, false otherwise
PricingException - if something went wrong
protected java.util.List<AmountInfo> getPriceInfoDetails(PricingContext pPricingContext,
java.util.Map pExtraParameters)
getPriceInfoDetails in class PricingEngineServicepPricingContext - PricingContextpExtraParameters - Map of extra parameters, may be null
true if the promotion qualified, false otherwiseprotected java.lang.String getStackingRuleOrderLimitReachedMessageIdentifier()
getStackingRuleOrderLimitReachedMessageIdentifier in class PricingEngineServiceprotected java.lang.String getStackingRulePromotionExcludedMessageIdentifier()
getStackingRulePromotionExcludedMessageIdentifier in class PricingEngineService
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||