com.ibm.commerce.order.calculation
Class CalculationRuleCalculateCmdImpl

java.lang.Object
  |
  +--com.ibm.commerce.command.AbstractECCommand
        |
        +--com.ibm.commerce.command.TaskCommandImpl
              |
              +--com.ibm.commerce.command.BusinessPolicyCommandImpl
                    |
                    +--com.ibm.commerce.order.calculation.CalculationCmdImpl
                          |
                          +--com.ibm.commerce.order.calculation.CalculationRuleCalculateCmdImpl
All Implemented Interfaces:
BusinessPolicyCommand, CalculationCmd, CalculationRuleCalculateCmd, ECCommand, TaskCommand

public class CalculationRuleCalculateCmdImpl
extends CalculationCmdImpl
implements CalculationRuleCalculateCmd

This is the default implementation of the CalculationRuleCalculate command.

See Also:
CalculationRuleCalculateCmd

Field Summary
static java.lang.String COPYRIGHT
           
 
Fields inherited from class com.ibm.commerce.command.BusinessPolicyCommandImpl
policyId, requestProperties
 
Fields inherited from class com.ibm.commerce.command.AbstractECCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.order.calculation.CalculationRuleCalculateCmd
defaultCommandClassName, NAME
 
Constructor Summary
CalculationRuleCalculateCmdImpl()
           
 
Method Summary
protected  void applyOrderItemLevelParameters(java.math.BigDecimal[] adValues, DirectAttachmentHelper aDirectAttachmentHelper)
          This method is called by applyParameters() to apply orderitem level direct attachment parameters.
protected  void applyOrderLevelParameters(java.math.BigDecimal[] adValues, java.math.BigDecimal[] adWeights, DirectAttachmentHelper aDirectAttachmentHelper, java.lang.Long anOrderId)
          This method is called by applyParameters() to apply order level direct attachment parameters.
protected  void applyParameters(java.math.BigDecimal[] adValues, java.math.BigDecimal[] adWeights)
          This method is called by scaleCalculate() to apply direct attachment parameters.
protected  java.math.BigDecimal callRange(CalculationRangeAccessBean aabRange, CalculationRangeLookupResultAccessBean aabLookupResult, java.math.BigDecimal adApplicableLookupNumber, java.math.BigDecimal adApplicableBaseMonetaryValue)
          This method is called by scaleCalculate() to invoke the CalculationRange command.
protected  CalculationScaleLookupCmd callScaleLookup(CalculationScaleAccessBean aabScale)
          This method is called by scaleCalculate() to invoke the CalculationScaleLookup command.
protected  void compareValues()
          This method is called by performExecute() to compare and combine the calculation scale results.
protected  Item[] getItems()
          Returns the items.
protected  CalculationRuleAccessBean getRule()
          Returns the calculation rule.
protected  java.util.Set getScaleCurrencies(CalculationScaleAccessBean[] aabScales)
          This method is called by performExecute() to identify the set of calculation scale currencies.
 java.math.BigDecimal[] getValues()
          Returns the result.
protected  java.math.BigDecimal[] getValues(java.lang.String astrCurrency)
          Returns the result of a particular currency.
 void performExecute()
          Contains the actual business logic of the command It should be implemented by all the command writer.
protected  java.math.BigDecimal[] scaleCalculate(CalculationScaleAccessBean aabScale)
          This method is called by performExecute() to calculate the result of a particular calculation scale.
 void setItems(Item[] aItems)
          Sets the items.
 void setRule(CalculationRuleAccessBean aabRule)
          Sets the calculation rule.
protected  void setValues(java.math.BigDecimal[] adValues)
          Sets the result.
protected  void setValues(java.lang.String astrCurrency, java.math.BigDecimal[] adValues)
          Sets the result of a particular currency.
 
Methods inherited from class com.ibm.commerce.order.calculation.CalculationCmdImpl
createCommand, getCurrency, getCustomProperties, getCustomProperty, getTimestamp, getUsageId, reset, setCurrency, setCustomProperties, setCustomProperty, setTimestamp, setUsageId
 
Methods inherited from class com.ibm.commerce.command.BusinessPolicyCommandImpl
getPolicyId, getRequestProperties, setPolicyId, setRequestProperties
 
Methods inherited from class com.ibm.commerce.command.AbstractECCommand
accessControlCheck, checkIsAllowed, checkResourcePermission, execute, finalize, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, isReadyToCallExecute, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties, validateParameters
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.commerce.order.calculation.CalculationCmd
getCurrency, getCustomProperties, getCustomProperty, getTimestamp, getUsageId, setCurrency, setCustomProperties, setCustomProperty, setTimestamp, setUsageId
 
Methods inherited from interface com.ibm.commerce.command.BusinessPolicyCommand
getPolicyId, getRequestProperties, setPolicyId, setRequestProperties
 
Methods inherited from interface com.ibm.commerce.command.ECCommand
checkIsAllowed, checkResourcePermission, execute, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties, validateParameters
 

Field Detail

COPYRIGHT

public static final java.lang.String COPYRIGHT
Constructor Detail

CalculationRuleCalculateCmdImpl

public CalculationRuleCalculateCmdImpl()
Method Detail

applyOrderItemLevelParameters

protected void applyOrderItemLevelParameters(java.math.BigDecimal[] adValues,
                                             DirectAttachmentHelper aDirectAttachmentHelper)
                                      throws ECException
This method is called by applyParameters() to apply orderitem level direct attachment parameters.

applyOrderLevelParameters

protected void applyOrderLevelParameters(java.math.BigDecimal[] adValues,
                                         java.math.BigDecimal[] adWeights,
                                         DirectAttachmentHelper aDirectAttachmentHelper,
                                         java.lang.Long anOrderId)
                                  throws ECException
This method is called by applyParameters() to apply order level direct attachment parameters.

applyParameters

protected void applyParameters(java.math.BigDecimal[] adValues,
                               java.math.BigDecimal[] adWeights)
                        throws ECException
This method is called by scaleCalculate() to apply direct attachment parameters.

callRange

protected java.math.BigDecimal callRange(CalculationRangeAccessBean aabRange,
                                         CalculationRangeLookupResultAccessBean aabLookupResult,
                                         java.math.BigDecimal adApplicableLookupNumber,
                                         java.math.BigDecimal adApplicableBaseMonetaryValue)
                                  throws ECException
This method is called by scaleCalculate() to invoke the CalculationRange command.

callScaleLookup

protected CalculationScaleLookupCmd callScaleLookup(CalculationScaleAccessBean aabScale)
                                             throws ECException
This method is called by scaleCalculate() to invoke the CalculationScaleLookup command.

compareValues

protected void compareValues()
                      throws ECException
This method is called by performExecute() to compare and combine the calculation scale results.

getItems

protected Item[] getItems()
Returns the items.

getRule

protected CalculationRuleAccessBean getRule()
Returns the calculation rule.

getScaleCurrencies

protected java.util.Set getScaleCurrencies(CalculationScaleAccessBean[] aabScales)
                                    throws ECException
This method is called by performExecute() to identify the set of calculation scale currencies.

getValues

public java.math.BigDecimal[] getValues()
Description copied from interface: CalculationRuleCalculateCmd
Returns the result.
Specified by:
getValues in interface CalculationRuleCalculateCmd

getValues

protected java.math.BigDecimal[] getValues(java.lang.String astrCurrency)
Returns the result of a particular currency.

performExecute

public void performExecute()
                    throws ECException
Description copied from interface: ECCommand
Contains the actual business logic of the command It should be implemented by all the command writer.
Specified by:
performExecute in interface ECCommand
Overrides:
performExecute in class AbstractECCommand
Following copied from interface: com.ibm.commerce.command.ECCommand
Throws:
com.ibm.commerce.command.CommandException - The superclass for all ECExceptions.

scaleCalculate

protected java.math.BigDecimal[] scaleCalculate(CalculationScaleAccessBean aabScale)
                                         throws ECException
This method is called by performExecute() to calculate the result of a particular calculation scale.

setItems

public void setItems(Item[] aItems)
Description copied from interface: CalculationRuleCalculateCmd
Sets the items.
Specified by:
setItems in interface CalculationRuleCalculateCmd

setRule

public void setRule(CalculationRuleAccessBean aabRule)
Description copied from interface: CalculationRuleCalculateCmd
Sets the calculation rule.
Specified by:
setRule in interface CalculationRuleCalculateCmd

setValues

protected void setValues(java.math.BigDecimal[] adValues)
Sets the result.

setValues

protected void setValues(java.lang.String astrCurrency,
                         java.math.BigDecimal[] adValues)
Sets the result of a particular currency.