com.ibm.commerce.payment.commands
Class DoLuhnCheckCmdImpl

java.lang.Object
  |
  +--CacheableCommandImpl
        |
        +--com.ibm.commerce.command.AbstractECTargetableCommand
              |
              +--com.ibm.commerce.command.TaskCommandImpl
                    |
                    +--com.ibm.commerce.payment.commands.DoLuhnCheckCmdImpl
All Implemented Interfaces:
DoLuhnCheckCmd, ECCommand, ECTargetableCommand, TaskCommand

public class DoLuhnCheckCmdImpl
extends TaskCommandImpl
implements DoLuhnCheckCmd

This DoLuhnCheckCmd Task Command Implementation checks the validity of the credit card number using the LUHN algorithm.

If the number is found to be invalid according to the LUHN Algorithm the command throws the ECApplicationException using the Error View specified via the setErrorTaskName() method and the errorCode DoPaymentCmd.ERR_CODE_BAD_CCNUM.

This command does not use any AccessBeans.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.ibm.commerce.command. AbstractECTargetableCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.payment.commands. DoLuhnCheckCmd
COPYRIGHT, defaultCommandClassName, NAME
 
Fields inherited from interface com.ibm.commerce.command. ECTargetableCommand
COPYRIGHT
 
Fields inherited from interface com.ibm.commerce.command. ECCommand
defaultCommandClassName
 
Constructor Summary
DoLuhnCheckCmdImpl()
          DoLuhnCheckCmdImpl default constructor.
 
Method Summary
static boolean cardNumberCheck(java.lang.String astrCCNumber)
          Checks the input String of decimal digits according to the LUHN Algorithm.
protected  java.lang.String getCardNumber()
          Gets the cardNumber property of the command.
protected  java.lang.String getErrorTaskName()
          Gets the errorTaskName property of the command.
 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 setCardNumber(java.lang.String astrCardNumber)
          Sets the cardNumber property of the command.
 void setErrorTaskName(java.lang.String astrErrorTaskName)
          Sets the errorTaskName property of the command.
 
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

DoLuhnCheckCmdImpl

public DoLuhnCheckCmdImpl()
DoLuhnCheckCmdImpl default constructor.
Method Detail

cardNumberCheck

public static boolean cardNumberCheck(java.lang.String astrCCNumber)
Checks the input String of decimal digits according to the LUHN Algorithm. The input string must consist of decimal digits only.
Parameters:
astrCCNumber - the String representation of the credit card number
Returns:
true if the specified number passed the check; otherwise false.

getCardNumber

protected java.lang.String getCardNumber()
Gets the cardNumber property of the command.
Returns:
the credit card number

getErrorTaskName

protected java.lang.String getErrorTaskName()
Gets the errorTaskName property of the command.
Returns:
the name of the error view to use for reporting error

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

setCardNumber

public void setCardNumber(java.lang.String astrCardNumber)
Sets the cardNumber property of the command.
Specified by:
setCardNumber in interface DoLuhnCheckCmd
Parameters:
astrCardNumber - the card number to be used for setting the command property.

setErrorTaskName

public void setErrorTaskName(java.lang.String astrErrorTaskName)
Sets the errorTaskName property of the command.
Specified by:
setErrorTaskName in interface DoLuhnCheckCmd
Parameters:
astrErrorTaskName - the name of the View Command to be used for displaying error information to the Shopper.