|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.ibm.commerce.command.AbstractECCommand | +--com.ibm.commerce.command.TaskCommandImpl | +--com.ibm.commerce.payment.commands.DoPaymentCmdImpl
This DoPaymentCmd
Task Command Implementation is called by
the OrderProcessCmd
Controller Command to process payment
for an order.
If the command is successful, the OrderProcessCmd
will set the Order
status to the value specified by this command.
If unsuccessful, the command throws the ECApplicationException specifying an Error Code and the Error View named by the constant com.ibm.commerce.DoPaymentCmd.ERROR_TASK_NAME.
This implementation of the DoPaymentCmd
Task Command does
not have any returnData for the OrderProcessCmd
.
Note: This is a sample only and must NOT be used for production.
This sample does not use any of the new features (such as Contracts and Availability-To-Promise)
introduced with WebSphere Commerce.
Fields inherited from class com.ibm.commerce.command.AbstractECCommand |
commandContext |
Fields inherited from interface com.ibm.commerce.payment.commands.DoPaymentCmd |
CC_VALID_Y_RANGE, COPYRIGHT, defaultCommandClassName, ERR_CODE_BAD_CCNUM, ERR_CODE_BAD_SYS, ERR_CODE_BAD_XDATE, ERR_CODE_MISSING_PARAM, ERRTASK_NAME, MESSAGE_FOR_BUYER, NAME, NVP_FIELD, PM_MESSAGE_FOR_BUYER, PM_MESSAGE_FOR_MERCHANT, PM_PRIMARY_RC, PM_SECONDARY_RC, WCSHOSTNAME, WCSWEBSERVERPORT, WEBPATH |
Constructor Summary | |
DoPaymentCmdImpl()
|
Method Summary | |
protected java.lang.String |
getCardBrand()
Get Card Brand |
protected java.lang.Integer |
getCardExpiryMonth()
Get Card Expiry Month |
protected java.lang.Integer |
getCardExpiryYear()
Get Card Expiry Year |
protected java.lang.String |
getCardNumber()
Get Card Number |
java.lang.String |
getContentType()
Returns the Content Type (or MIME type) of the return data, or null if
the type is not known. |
protected java.lang.Long |
getOrderId()
get Order ID |
java.lang.String |
getOrderState()
Returns the single character String value that the called command wants the Calling command to use to set the Status of the order. |
protected TypedProperty |
getPaymentAttributes()
get PaymentAttributes |
byte[] |
getReturnData()
Returns the byte Array containing Return Data from the Payment System. |
protected java.math.BigDecimal |
getTotalAmount()
get Total Amount |
static boolean |
isCardExpiryDateValid(int expiryMonth,
int expiryYear)
Checks if the specified expiry date (expiryMonth and expiryYear) is valid. |
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. |
static java.lang.String |
removeSpaceAndHyphenFromString(java.lang.String aCardNumber)
Returns a new string that is free of any spaces and hyphenated characters. |
void |
reset()
Resets the instance variables of the command. |
protected void |
setCardBrand(java.lang.String cardBrand)
Set Card Brand |
protected void |
setCardExpiryMonth(java.lang.Integer cardExpiryMonth)
Set Card Expiry Month |
protected void |
setCardExpiryYear(java.lang.Integer cardExpiryYear)
Set Card Expiry Year |
protected void |
setCardNumber(java.lang.String cardNumber)
Set Card Number |
void |
setOrderId(java.lang.Long orderId)
Sets the orderId property of the command. |
void |
setPaymentAttributes(TypedProperty paymentAttributes)
Sets the paymentAttributes property of the command. |
void |
setTotalAmount(java.math.BigDecimal totalAmount)
Sets the totalAmount property of the command. |
void |
validateParameters()
Checks the validity of customer-supplied parameters. |
Methods inherited from class com.ibm.commerce.command.AbstractECCommand |
accessControlCheck, checkIsAllowed, checkResourcePermission, execute, finalize, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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 |
Constructor Detail |
public DoPaymentCmdImpl()
Method Detail |
protected java.lang.String getCardBrand()
protected java.lang.Integer getCardExpiryMonth()
protected java.lang.Integer getCardExpiryYear()
protected java.lang.String getCardNumber()
public java.lang.String getContentType()
null
if
the type is not known.getContentType
in interface DoPaymentCmd
String
containing the name of the MIME type of the return data,
or null if the type is not known. Since this command implementation does not have
return data, the method returns null
.protected java.lang.Long getOrderId()
public java.lang.String getOrderState()
getOrderState
in interface DoPaymentCmd
protected TypedProperty getPaymentAttributes()
public byte[] getReturnData()
getReturnData
in interface DoPaymentCmd
protected java.math.BigDecimal getTotalAmount()
public static boolean isCardExpiryDateValid(int expiryMonth, int expiryYear)
expiryMonth
- the calender month of the expiry date (1 for January, 2 for February, and so on.)expiryYear
- the calender year of the expiry datepublic boolean isReadyToCallExecute()
isReadyToCallExecute
in class AbstractECCommand
com.ibm.commerce.command.AbstractECCommand
public void performExecute() throws ECException
performExecute
in interface ECCommand
performExecute
in class AbstractECCommand
com.ibm.commerce.command.ECCommand
com.ibm.commerce.command.CommandException
- The superclass for all ECExceptions.public static java.lang.String removeSpaceAndHyphenFromString(java.lang.String aCardNumber)
aCardNumber
- the card number to be examined and strippedpublic void reset()
This is useful if the command instance is to be called multiple times with different command parameters.
reset
in class AbstractECCommand
protected void setCardBrand(java.lang.String cardBrand)
protected void setCardExpiryMonth(java.lang.Integer cardExpiryMonth)
protected void setCardExpiryYear(java.lang.Integer cardExpiryYear)
protected void setCardNumber(java.lang.String cardNumber)
public void setOrderId(java.lang.Long orderId)
setOrderId
in interface DoPaymentCmd
orderId
- the order reference number of the Order for which payment
is to be processed.public void setPaymentAttributes(TypedProperty paymentAttributes)
setPaymentAttributes
in interface DoPaymentCmd
requestProperties
- the requestProperties object that contains all
the command parameters are to be passed to this command.
This command requires the following Payment Attributes:
Keyword Value =========== ==================================== cardBrand The credit card brand. Represents the credit card type used. cardNumber The credit card number cardExpiryMonth The credit card exipration month cardExpiryYear The credit card exipration yearNote that this command stores the credit card brand in the PAYMETHOD column of the ORDPAYMTHD table and the size of the column is limited to five characters long.
public void setTotalAmount(java.math.BigDecimal totalAmount)
setTotalAmount
in interface DoPaymentCmd
totalAmount
- the total price of the Order for which payment
is to be processed.public void validateParameters() throws ECException
validateParameters
in interface ECCommand
validateParameters
in class AbstractECCommand
com.ibm.commerce.command.ECCommand
ECException.
-
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |