com.ibm.commerce.payment.commands
Class PrepareInvoiceCmdImpl

java.lang.Object
  |
  +--com.ibm.commerce.command.AbstractECCommand
        |
        +--com.ibm.commerce.command.TaskCommandImpl
              |
              +--com.ibm.commerce.payment.commands.PrepareInvoiceCmdImpl
All Implemented Interfaces:
ECCommand, PrepareInvoiceCmd, TaskCommand

public class PrepareInvoiceCmdImpl
extends TaskCommandImpl
implements PrepareInvoiceCmd

This PrepareInvoiceCmd Task Command implementation class prepares an invoice for an order release in the form of an XML String, stores the String in the WebSphere Commerce database and sends the Invoice to the Buyer Contact of the Account in the form of an eMail if the Account has an Invoice Terms and Conditions that specify a delivery method using eMail.


Fields inherited from class com.ibm.commerce.command.AbstractECCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.payment.commands.PrepareInvoiceCmd
COPYRIGHT, defaultCommandClassName, NAME
 
Constructor Summary
PrepareInvoiceCmdImpl()
           
 
Method Summary
protected  java.sql.Timestamp getInvoiceDate()
          Returns the Date for the Invoice.
protected  java.lang.String getInvoiceId()
          Returns the invoiceId.
protected  OrderAccessBean getOrder()
          Returns the OrderAccessBean representing the Order.
protected  java.lang.Long getOrderId()
          Returns the orderId of the Order for which the Invoice is to be prepared.
protected  java.lang.Integer getOrderReleaseNum()
          Returns the Release Number of this Order Release for which the Invoice is to be prepared.
 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.
protected  void setInvoiceDate(java.sql.Timestamp newInvoiceDate)
          Sets the date of the Invoice.
protected  void setInvoiceId(java.lang.String newInvoiceId)
          Sets the invoiceId property of the command.
 void setOrderId(java.lang.Long aOrderId)
          Sets the orderId property of the command.
 void setOrderReleaseNum(java.lang.Integer newOrderReleaseNum)
          Sets the orderReleaseNum property of the command.
 
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, 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.command.ECCommand
checkIsAllowed, checkResourcePermission, execute, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties, validateParameters
 

Constructor Detail

PrepareInvoiceCmdImpl

public PrepareInvoiceCmdImpl()
Method Detail

getInvoiceDate

protected java.sql.Timestamp getInvoiceDate()
Returns the Date for the Invoice.
Returns:
java.sql.Timestamp

getInvoiceId

protected java.lang.String getInvoiceId()
Returns the invoiceId.
Returns:
java.lang.String

getOrder

protected OrderAccessBean getOrder()
Returns the OrderAccessBean representing the Order.

getOrderId

protected java.lang.Long getOrderId()
Returns the orderId of the Order for which the Invoice is to be prepared.
Returns:
The orderId of the Order.

getOrderReleaseNum

protected java.lang.Integer getOrderReleaseNum()
Returns the Release Number of this Order Release for which the Invoice is to be prepared.
Returns:
The Order Release Number.

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 AbstractECCommand
Following copied from class: com.ibm.commerce.command.AbstractECCommand
Returns:
boolean - true if we can execute the command false if we canot execute the command

performExecute

public void performExecute()
                    throws ECException
Performs the main business logic of the command.
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.

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 AbstractECCommand

setInvoiceDate

protected void setInvoiceDate(java.sql.Timestamp newInvoiceDate)
Sets the date of the Invoice.
Parameters:
newInvoiceDate - java.sql.Timestamp

setInvoiceId

protected void setInvoiceId(java.lang.String newInvoiceId)
Sets the invoiceId property of the command.
Parameters:
newInvoiceId - java.lang.String

setOrderId

public void setOrderId(java.lang.Long aOrderId)
Sets the orderId property of the command.
Specified by:
setOrderId in interface PrepareInvoiceCmd
Parameters:
orderId - The order reference number of the Order for which an Invoice is to be prepared.

setOrderReleaseNum

public void setOrderReleaseNum(java.lang.Integer newOrderReleaseNum)
Sets the orderReleaseNum property of the command.
Specified by:
setOrderReleaseNum in interface PrepareInvoiceCmd
Parameters:
orderReleaseNum - the order release reference number of the Order for which an Invoice is to be prepared.