com.ibm.commerce.payment.commands
Class PrepareInvoiceCmdImpl

java.lang.Object
  CacheableCommandImpl
      com.ibm.commerce.command.AbstractECTargetableCommand
          com.ibm.commerce.command.TaskCommandImpl
              com.ibm.commerce.payment.commands.PrepareInvoiceCmdImpl
All Implemented Interfaces:
ECCommand, ECTargetableCommand, 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.

This command uses the following AccessBeans:

This command does not call other TaskCommand.

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.PrepareInvoiceCmd
defaultCommandClassName, NAME
Fields inherited from interface com.ibm.commerce.command.ECCommand
defaultCommandClassName
Constructor Summary
PrepareInvoiceCmdImpl()
Method Summary
protected java.sql.Timestamp getInvoiceDate()
Returns the date for the invoice.
protected java.lang.String getInvoiceId()
Returns the internal ID of the invoice record.
protected OrderAccessBean getOrder()
Returns the OrderAccessBean representing the order.
protected java.lang.Long getOrderId()
Returns the ID 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.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

PrepareInvoiceCmdImpl

public PrepareInvoiceCmdImpl()
Method Detail

getInvoiceDate

protected java.sql.Timestamp getInvoiceDate()
Returns the date for the invoice.
Returns:
the invoice date

getInvoiceId

protected java.lang.String getInvoiceId()
Returns the internal ID of the invoice record.
Returns:
the invoice ID

getOrder

protected OrderAccessBean getOrder()
Returns the OrderAccessBean representing the order.
Returns:
the OrderAccessBean

getOrderId

protected java.lang.Long getOrderId()
Returns the ID of the order for which the Invoice is to be prepared.
Returns:
the ID 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 Release Number of the order release record

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

setInvoiceDate

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

setInvoiceId

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

setOrderId

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

Feedback