public class ProcessInventoryRequirementCheckInventoryActionCmdImpl extends AbstractProcessInventoryRequirementActionCmdImpl
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
COPYRIGHT
IBM Copyright notice field.
|
Constructor and Description |
---|
ProcessInventoryRequirementCheckInventoryActionCmdImpl() |
Modifier and Type | Method and Description |
---|---|
void |
checkInventory(java.lang.String catEntryId,
java.lang.String onlineStoreId,
java.lang.String physicalStoreId,
OrderItemType orderItem)
Checks the order item inventory status.
|
void |
performExecute()
This method performs the main business flog of this class.
|
buildInternalSelectionCriteria, getInventoryAvailabilityFromDOM, getInventoryConfiguration, isValidStoreId, validate
getActionExpression, getNoun, isGeneric, isReadyToCallExecute, reset, setActionExpression, setNoun, setPersistentObjects
execute, executeFromCache, getCaller, getEntryInfo, getId, getObjectSize, getSharingPolicy, postExecute, preExecute, setCaller, setObjectSize, unionDependencies, updateCache
getCommandTarget, getCommandTargetName, getTargetPolicy, hasOutputProperties, setCommandTarget, setCommandTargetName, setHasOutputProperties, setOutputProperties, setTargetPolicy
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
isGeneric, setActionExpression, setNoun, setPersistentObjects
public static final java.lang.String COPYRIGHT
public ProcessInventoryRequirementCheckInventoryActionCmdImpl()
public void performExecute() throws java.lang.Exception
For an order item in an InventoryRequirementType
, if it contains an item in a physical store, the inventory
availability of the catalog entry/physical store combination will be checked. If it contains an item in an online store, the inventory
availability of the catalog entry/online store combination will be checked.
performExecute
in interface com.ibm.websphere.command.TargetableCommand
performExecute
in class AbstractProcessInventoryRequirementActionCmdImpl
java.lang.Exception
- A problem was encountered during the inventory availability checking process.public void checkInventory(java.lang.String catEntryId, java.lang.String onlineStoreId, java.lang.String physicalStoreId, OrderItemType orderItem) throws java.lang.Exception
For each combination of catalog entry/online store of catalog entry/physical store, the configuration of them will be first read. Based on the flags, inventory availability will be checked from either the DOM inventory memory cache or the database cache.
If memory cache and database cache are all expired or not found, inventory availability will be checked by retrieving InventoryAvailabilityType
from the DOM (Distributed Order Management) system (if the bit flags for DOM has been set).
If retrieving from DOM still failed, the inventory availability will be checked from the fallback data, which should be configured
in the invcnf
database table.
If inventory availability was checked from DOM, cache is expired and update cache has been set, the cache items will be updated.
catEntryId
- catalog entry id of the order item.onlineStoreId
- online store id, if this parameter is set, physicalStoreId should be null.physicalStoreId
- id of the physical store, if this parameter is set, onlineStoreId should be null.orderItem
- An order item to be checked, which contained the catalog entry in an online store or in a physical store.java.lang.Exception