| 
 | |||||||||
| 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_VERSIONClass 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 | ||||||||