com.ibm.commerce.order.calculation
Class CalculationRuleCombineCmdImpl

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.CalculationRuleCombineCmdImpl
All Implemented Interfaces:
BusinessPolicyCommand, CalculationCmd, CalculationRuleCombineCmd, ECCommand, TaskCommand

public class CalculationRuleCombineCmdImpl
extends CalculationCmdImpl
implements CalculationRuleCombineCmd

This is the default implementation of the CalculationRuleCombine command.

See Also:
CalculationRuleCombineCmd

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.CalculationRuleCombineCmd
defaultCommandClassName, NAME
 
Constructor Summary
CalculationRuleCombineCmdImpl()
           
 
Method Summary
protected  java.math.BigDecimal[] callRuleCalculate(CalculationRuleAccessBean aabRule, Item[] aItems)
          This method is called by performExecute() to invoke the CalculationRuleCalculate command.
protected  Item[] callRuleQualify(CalculationRuleAccessBean aabRule, Item[] aItems)
          This method is called by performExecute() to invoke the CalculationRuleQualify command.
protected  void combineRules()
          This method is called by performExecute() to combine calculation rules based on their combination values.
 CalculationRuleAccessBean[] getRules()
          getRules method comment.
protected  java.lang.Integer[] getTaxCategoryIds()
          Returns the tax categories.
 java.math.BigDecimal[] getValues(java.lang.Integer anRuleId)
          getValues method comment.
protected  boolean isRestricted(CalculationRuleAccessBean aabRule)
           
 void performExecute()
          Contains the actual business logic of the command It should be implemented by all the command writer.
protected  void removeValues(java.lang.Integer anRuleId)
          This method is called by combineRules() to remove a calculation rule and its result.
 void reset()
          This method is called after a command has been executed to reset its states variables.
 void setCode(CalculationCodeAccessBean aabCode)
          Sets the calculation code.
 void setItems(Item[] aItems)
          Sets the items.
protected  void setRules(CalculationRuleAccessBean[] aabRules)
          Sets the calculation rules.
 void setTaxCategoryIds(java.lang.Integer[] anTaxCategoryIds)
          Sets the tax categories.
protected  void setValues(java.lang.Integer anRuleId, java.math.BigDecimal[] adValues)
          Sets the result of a particular calculation rule.
 
Methods inherited from class com.ibm.commerce.order.calculation.CalculationCmdImpl
createCommand, getCurrency, getCustomProperties, getCustomProperty, getTimestamp, getUsageId, 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

CalculationRuleCombineCmdImpl

public CalculationRuleCombineCmdImpl()
Method Detail

callRuleCalculate

protected java.math.BigDecimal[] callRuleCalculate(CalculationRuleAccessBean aabRule,
                                                   Item[] aItems)
                                            throws ECException
This method is called by performExecute() to invoke the CalculationRuleCalculate command.

callRuleQualify

protected Item[] callRuleQualify(CalculationRuleAccessBean aabRule,
                                 Item[] aItems)
                          throws ECException
This method is called by performExecute() to invoke the CalculationRuleQualify command.

combineRules

protected void combineRules()
                     throws ECException
This method is called by performExecute() to combine calculation rules based on their combination values.

getRules

public CalculationRuleAccessBean[] getRules()
getRules method comment.
Specified by:
getRules in interface CalculationRuleCombineCmd

getTaxCategoryIds

protected java.lang.Integer[] getTaxCategoryIds()
Returns the tax categories.

getValues

public java.math.BigDecimal[] getValues(java.lang.Integer anRuleId)
getValues method comment.
Specified by:
getValues in interface CalculationRuleCombineCmd

isRestricted

protected boolean isRestricted(CalculationRuleAccessBean aabRule)
                        throws ECException

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.

removeValues

protected void removeValues(java.lang.Integer anRuleId)
This method is called by combineRules() to remove a calculation rule and its result.

reset

public void reset()
Description copied from class: AbstractECCommand
This method is called after a command has been executed to reset its states variables. After the call to reset, we should be able to execute the command again.
Overrides:
reset in class CalculationCmdImpl

setCode

public void setCode(CalculationCodeAccessBean aabCode)
Description copied from interface: CalculationRuleCombineCmd
Sets the calculation code.
Specified by:
setCode in interface CalculationRuleCombineCmd

setItems

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

setRules

protected void setRules(CalculationRuleAccessBean[] aabRules)
Sets the calculation rules.

setTaxCategoryIds

public void setTaxCategoryIds(java.lang.Integer[] anTaxCategoryIds)
Description copied from interface: CalculationRuleCombineCmd
Sets the tax categories.
Specified by:
setTaxCategoryIds in interface CalculationRuleCombineCmd

setValues

protected void setValues(java.lang.Integer anRuleId,
                         java.math.BigDecimal[] adValues)
Sets the result of a particular calculation rule.