com.ibm.commerce.payment.extern
Class DebitAccountCmdImpl

java.lang.Object
  |
  +--CacheableCommandImpl
        |
        +--com.ibm.commerce.command.AbstractECTargetableCommand
              |
              +--com.ibm.commerce.command.TaskCommandImpl
                    |
                    +--com.ibm.commerce.payment.extern.DebitAccountCmdImpl
All Implemented Interfaces:
DebitAccountCmd, ECCommand, ECTargetableCommand, TaskCommand

public class DebitAccountCmdImpl
extends TaskCommandImpl
implements DebitAccountCmd

This DebitAccountCmdImpl Task Command implementation class is called to debit the customer account through an external accounting system.

This sample implementation class only generates an Order XML with information about the order and stores the XML as a String in the ORDPAYMTHD table. It is intended for third-parties to extend and write implementation code for integration with an external accounting system.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.ibm.commerce.command. AbstractECTargetableCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.payment.extern. DebitAccountCmd
COPYRIGHT, defaultCommandClassName, ERRTASK_NAME, NAME
 
Fields inherited from interface com.ibm.commerce.command. ECTargetableCommand
COPYRIGHT
 
Fields inherited from interface com.ibm.commerce.command. ECCommand
defaultCommandClassName
 
Constructor Summary
DebitAccountCmdImpl()
           
 
Method Summary
protected  java.math.BigDecimal getDepositAmount()
          Returns the amount to be deposited.
protected  java.lang.String getErrorViewName()
          Returns the name of the error view to use for reporting error.
protected  OrderAccessBean getOrder()
          Returns the order for which payment is to be deposited.
 boolean isReadyToCallExecute()
          This method is called by the Command Framework to check if all basic mandatory parameters have been set for this command.
 void performExecute()
          Performs the main business logic of the command.
 void reset()
          Resets the instance variables of the command.
 void setDepositAmount(java.math.BigDecimal depositAmount)
          Sets the amount to be deposited in the currency of the order.
 void setErrorViewName(java.lang.String sEVN)
          Sets the error view to be used to report error.
 void setOrder( OrderAccessBean ab)
          Sets the order for which payment is to be deposited.
 
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, setAccCheck, setCommandContext, setCommandIfName, setCommandStoreId, setDefaultProperties, validateParameters
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DebitAccountCmdImpl

public DebitAccountCmdImpl()
Method Detail

getDepositAmount

protected java.math.BigDecimal getDepositAmount()
Returns the amount to be deposited.
Returns:
the deposit amount

getErrorViewName

protected java.lang.String getErrorViewName()
Returns the name of the error view to use for reporting error.
Returns:
the error view name

getOrder

protected OrderAccessBean getOrder()
Returns the order for which payment is to be deposited.
Returns:
the OrderAccessBean of the order

isReadyToCallExecute

public boolean isReadyToCallExecute()
This method is called by the Command Framework to check if all basic mandatory parameters have been set for this command. This is done before the Framework calls the performExecute method of the command.
Overrides:
isReadyToCallExecute in class AbstractECTargetableCommand
Returns:
true if we can execute the command; false otherwise.

performExecute

public void performExecute()
                    throws ECException
Performs the main business logic of the command.
Specified by:
performExecute in interface ECCommand
Overrides:
performExecute in class AbstractECTargetableCommand
Throws:
ECException

reset

public void reset()
Resets the instance variables of the command. The reset() method will reset all instance variables. If the command includes any output values that are accessible via getters, then make sure those values are no longer needed before calling this method to reset the instance variables of the command.

This is useful if the command instance is to be called multiple times with different command parameters.

Overrides:
reset in class AbstractECTargetableCommand

setDepositAmount

public void setDepositAmount(java.math.BigDecimal depositAmount)
Sets the amount to be deposited in the currency of the order.
Specified by:
setDepositAmount in interface DebitAccountCmd
Parameters:
depositAmount - the deposit amount

setErrorViewName

public void setErrorViewName(java.lang.String sEVN)
Sets the error view to be used to report error. This overrides the default error view of the command.
Specified by:
setErrorViewName in interface DebitAccountCmd
Parameters:
sEVN - the Error View name
See Also:
DebitAccountCmd.ERRTASK_NAME

setOrder

public void setOrder(OrderAccessBean ab)
Sets the order for which payment is to be deposited.
Specified by:
setOrder in interface DebitAccountCmd
Parameters:
ab - the OrderAccessBean of the order