com.ibm.commerce.couponredemption.commands
Class FinalizeCouponUsageCmdImpl

java.lang.Object
  |
  +--CacheableCommandImpl
        |
        +--com.ibm.commerce.command.AbstractECTargetableCommand
              |
              +--com.ibm.commerce.command.TaskCommandImpl
                    |
                    +--com.ibm.commerce.command.BusinessPolicyCommandImpl
                          |
                          +--com.ibm.commerce.order.calculation.CalculationCmdImpl
                                |
                                +--com.ibm.commerce.couponredemption.commands.FinalizeCouponUsageCmdImpl
All Implemented Interfaces:
BusinessPolicyCommand, CalculationCmd, ECCommand, ECTargetableCommand, FinalizeCalculationUsageCmd, TaskCommand

public class FinalizeCouponUsageCmdImpl
extends CalculationCmdImpl
implements FinalizeCalculationUsageCmd

This is a task command that is invoked from ORDERPROCESS command to mark all the eCoupons as unusable that are used in the current order preparation.

The cpwalletId is found out for the current orderId from ORCPMAP table. Then for each cpwalletId the number of time this coupon has been used is increamented. If the number of times this coupon has been used has reached the limit specified, then th eCoupon is marked as "Not Usable" in the CouponWalletAccessBean for the current cpwalletId.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.ibm.commerce.order.calculation. CalculationCmdImpl
COPYRIGHT
 
Fields inherited from class com.ibm.commerce.command. BusinessPolicyCommandImpl
policyId, requestProperties
 
Fields inherited from class com.ibm.commerce.command. AbstractECTargetableCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.order.calculation. FinalizeCalculationUsageCmd
COPYRIGHT, NAME
 
Fields inherited from interface com.ibm.commerce.command. ECCommand
defaultCommandClassName
 
Constructor Summary
FinalizeCouponUsageCmdImpl()
          FinalizeCouponUsageCmdImpl constructor, call super .
 
Method Summary
  OrderAccessBean getOrder()
          Gets the access bean representing the order.
  OrderItemAccessBean[] getOrderItems()
          Gets the access bean representing the order items.
 void performExecute()
          The cpwalletId is found out for the current orderId from ORCPMAP table.
 void setOrder( OrderAccessBean newOrder)
          Sets the access bean representing the order.
 void setOrderItems( OrderItemAccessBean[] newOrderItems)
          Sets the access bean representing the order items.
 
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. AbstractECTargetableCommand
accessControlCheck, checkIsAllowed, checkParameters, checkResourcePermission, createCommandExecutionEvent, execute, finalize, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getCommandStoreId, getDefaultProperties, getResources, getStoreId, getUser, getUserId, isReadyToCallExecute, setAccCheck, setCommandContext, setCommandIfName, setCommandStoreId, 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
 

Constructor Detail

FinalizeCouponUsageCmdImpl

public FinalizeCouponUsageCmdImpl()
FinalizeCouponUsageCmdImpl constructor, call super .
Method Detail

getOrder

public OrderAccessBean getOrder()
Gets the access bean representing the order.
Returns:
access bean representing the order.

getOrderItems

public OrderItemAccessBean[] getOrderItems()
Gets the access bean representing the order items.
Returns:
Array of accessbeans representing the order items.

performExecute

public void performExecute()
                    throws ECException

The cpwalletId is found out for the current orderId from ORCPMAP table. Then for each cpwalletId the number of time this coupon has been used is increamented. If the number of times this coupon has been used has reached the limit specified, then th eCoupon is marked as "Not Usable" in the CouponWalletAccessBean for the current cpwalletId.

Specified by:
performExecute in interface ECCommand
Overrides:
performExecute in class AbstractECTargetableCommand
Throws:
: - com.ibm.commerce.exception.ECException.
ECException

setOrder

public void setOrder(OrderAccessBean newOrder)
Sets the access bean representing the order.
Specified by:
setOrder in interface FinalizeCalculationUsageCmd
Parameters:
newOrder - access bean representing the order.

setOrderItems

public void setOrderItems(OrderItemAccessBean[] newOrderItems)
Sets the access bean representing the order items.
Specified by:
setOrderItems in interface FinalizeCalculationUsageCmd
Parameters:
newOrderItems - Array of accessbeans representing the order items.