com.ibm.commerce.messaging.commands
Class OrderStatusServiceCmdImpl
java.lang.Object
CacheableCommandImpl
com.ibm.commerce.command.AbstractECTargetableCommand
com.ibm.commerce.command.ControllerCommandImpl
com.ibm.commerce.messaging.commands.OrderStatusCmdImpl
com.ibm.commerce.messaging.commands.OrderStatusServiceCmdImpl
- All Implemented Interfaces:
- AccCommand, ControllerCommand, ECCommand, ECTargetableCommand, OrderStatusCmd, OrderStatusServiceCmd, Protectable
- public class OrderStatusServiceCmdImpl
- extends OrderStatusCmdImpl
- implements OrderStatusServiceCmd
This implementation of OrderStatusService is invoked by sending a SOAP XML message as specified by the corresponding WSDL definition. This class provides a wrapper around the OrderStatusCommand implementation and allows an external system to update the information regarding the status of an an existing order.
The differnece between OrderStatus command and this comamnd is that this implementation will return a view command name after the successfull updation of the order status, where as the OrderStatus command will not return any view name, but invokes the messaging subsystem to send a response back to the client.
Parameters
This command accepts the same set of parameters as the parent command OrderStatusCmdImpl. See the online help for OrderStatusCmdImpl for a description of the parameters.
Behavior
- The first order status for an order must have orderId and merchantOrderNumber specified.
- Check if the order specified in orderId exists in the ORDERS table.
- If serialization information is available, such as the sequenceNumber and the lastUpdateTimestamp parameters, check if the values are more recent than the ones already in the ORDSTAT table, if not then no update will be performed.
- Create or update a row in the table ORDSTAT using all the provided information.
- If versioning is enabled and this is the first order status for the order a new row will be created in ORDSTAT table, otherwise a copy of the last order status will be made and its version (OSVERNBR) will be set to the maximum number of existing version +1. A new row will be created containing all provided information with its OSVERNBR
value set to 0.
- Update the value in the STATUS column of table ORDERS to 'G'.
Exception Conditions
- The orderId specified is not a valid order number in the ORDERS table.
- Either the orderId or merchantOrderNumber is not specified in the first order status for a particular order.
- The orderId and merchantOrderNumber do not match one already in ORDSTAT table for a particular order in a subsequent order status udpate.
- Serialization information is provided and the order status message is out of sequence.
- See Also:
- Serialized Form
Field Summary |
static java.lang.String |
COPYRIGHT
The internal copyright field. |
Method Summary |
void |
performExecute()
The business logic of this command. |
Methods inherited from class com.ibm.commerce.messaging.commands.OrderStatusCmdImpl |
checkOrderStatusSequence, createOrderStatus, doPostProcess, doPreProcess, doProcess, getIAccessVector, getIMerchantOrderNumber, getIOrderId, getOrderStatus, getOsItems, getOsProp, getResources, isReadyToCallExecute, propertySet, reset, setOrder, setOrderStatus, setRequestProperties, updateOrder, validateParameters |
Methods inherited from class com.ibm.commerce.command.ControllerCommandImpl |
checkPermission, fulfills, getForUserId, getGeneric, getOwner, getRequestProperties, getResolvedRequestProperties, getResourceOwners, getResponseProperties, getRetriable, getViewInputProperties, isGeneric, isRetriable, mergeProperties, setForUserId, setGeneric, setOwner, setResponseProperties, setRetriable, setViewInputProperties |
Methods inherited from class com.ibm.commerce.command.AbstractECTargetableCommand |
accessControlCheck, checkIsAllowed, checkParameters, checkResourcePermission, createCommandExecutionEvent, execute, finalize, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getCommandStoreId, getDefaultProperties, getStoreId, getUser, getUserId, setAccCheck, setCommandContext, setCommandIfName, setCommandStoreId, 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.ControllerCommand |
checkPermission, execute, getGeneric, getRequestProperties, getResolvedRequestProperties, getResponseProperties, getRetriable, getViewInputProperties, isGeneric, isRetriable, mergeProperties, setGeneric, setRequestProperties, setRetriable, setViewInputProperties |
Methods inherited from interface com.ibm.commerce.command.ECCommand |
checkIsAllowed, checkResourcePermission, createCommandExecutionEvent, getCommandContext, getCommandIfName, getCommandName, getCommandStoreId, getDefaultProperties, getResources, getStoreId, getUser, getUserId, setCommandContext, setCommandIfName, setCommandStoreId, setDefaultProperties, validateParameters |
COPYRIGHT
public static final java.lang.String COPYRIGHT
- The internal copyright field.
- See Also:
- Constant Field Values
OrderStatusServiceCmdImpl
public OrderStatusServiceCmdImpl()
- default constructor for OrderStatusServiceCmdImpl
performExecute
public void performExecute()
throws ECException
- The business logic of this command.
Invokes the performExecute() of the parent OrderStatus command and then return the unique identifier for the new OrderStatus created. Also returns a view name so that a synchronous response message is sent to the client.
-
- Specified by:
- performExecute in interface ECCommand
- Overrides:
- performExecute in class OrderStatusCmdImpl
-
- Throws:
- ECException - if the OrderStatus information cannot be updated.
Feedback
(C) Copyright IBM Corporation 1996, 2005. All Rights Reserved.