Deprecated feature: Check or reserve or cancel order inventory

The CheckOrderInventory outbound service interface is used to check the inventory availability of an order on an external system if the information is not cached by the local inventory cache. The ReserveOrderInventory outbound service interface is used to update the inventory reservation of an order on an external system. The CancelOrderInventory outbound service interface is used to cancel the inventory reservation of an order on an external system.

Deprecated: The integration service interfaces documented in this topic are deprecated. Use the Distributed Order Management (DOM) integration service interfaces.

Request

A request to the CheckOrderInventory outbound service interface is in the form of a ProcessOrderInventory business object document (BOD) with action code Check. A request to the ReserveOrderInventory interface is in the form of a ProcessOrderInventory BOD with action code Reserve. A request to the CancelOrderInventory interface is in the form of a ProcessOrderInventory BOD with action code Cancel. The definition of the ProcessOrderInventory BOD can be found in the XML schema file WC_eardir/WebServicesRouter.war/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/ProcessOrderInventory.xsd. The service data object (SDO) interface of the ProcessOrderInventory BOD is com.ibm.commerce.inventory.datatypes.ProcessOrderInventoryType.

Response

The response to a successful request is in the form of an AcknowledgeOrderInventory BOD with no response criteria. The XML schema of the AcknowledgeOrderInventory BOD can be found in the XML schema file WC_eardir/WebServicesRouter.war/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/AcknowledgeOrderInventory.xsd. The service data object (SDO) interface of the AcknowledgeOrderInventory BOD is com.ibm.commerce.inventory.datatypes.AcknowledgeOrderInventoryType.

Message type

The CheckOrderInventory outbound service interface is mapped to the message type com.ibm.commerce.inventory.CheckOrderInventory, or com.ibm.commerce.inventory if the former is not defined. The ReserveOrderInventory interface is mapped to the message type com.ibm.commerce.inventory.ReserveOrderInventory, or com.ibm.commerce.inventory if the former is not defined. The CancelOrderInventory outbound service interface is mapped to the message type com.ibm.commerce.inventory.CancelOrderInventory, or com.ibm.commerce.inventory if the former is not defined.

Client task command

This outbound service interface can be invoked by calling the inventory client task command com.ibm.commerce.inventory.client.commands.ProcessOrderInventoryCmd with action CheckOrderInventory, ReserveOrderInventory or CancelOrderInventory. Its default implementation, com.ibm.commerce.inventory.client.commands.ProcessOrderInventoryCmdImpl , behaves as follows:

  • It first calls the protected method composeProcessOrderInventory() to compose a ProcessOrderInventory SDO from the order access bean specified.
  • It then passes the action and the ProcessOrderInventory SDO to the inventory client facade implementation to make the outbound service request.

Usage scenarios

Check order inventory

  1. When a shopping cart is being updated, the command com.ibm.commerce.inventory.commands.DoInventoryActionCmd is called by the order commands to check its inventory availability.
  2. With the store configured to use an external system for inventory management, if the information is not cached by the local inventory cache, the default implementation of this command, com.ibm.commerce.inventory.commands.DoInventoryActionCmdImpl , calls the inventory client task command com.ibm.commerce.inventory.client.commands.ProcessOrderInventoryCmd with action CheckOrderInventory to check its inventory availability on the external system.

Reserve order inventory

  1. When a shopping cart is being prepared for submission, the command com.ibm.commerce.inventory.commands.DoInventoryActionCmd is called by the command com.ibm.commerce.order.commands.PrepareOrderCmd to update its inventory reservation.
  2. With the store configured to use an external system for inventory management, the default implementation of this command, com.ibm.commerce.inventory.commands.DoInventoryActionCmdImpl , calls the inventory client task command com.ibm.commerce.inventory.client.commands.ProcessOrderInventoryCmd with action ReserveOrderInventory to update its inventory reservation on the external system.

Cancel order inventory

  1. When an order is being canceled or unlocked, the command com.ibm.commerce.inventory.commands.DoInventoryActionCmd is called by the order commands to cancel its inventory reservation.
  2. With the store configured to use an external system for inventory management, if inventory is reserved for the order, the default implementation of this command, com.ibm.commerce.inventory.commands.DoInventoryActionCmdImpl , calls the inventory client task command com.ibm.commerce.inventory.client.commands.ProcessOrderInventoryCmd with action CancelOrderInventory to cancel its inventory reservation on the external system.