public class CachingInventoryManager extends java.lang.Object implements LocationInventoryManager
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION |
static int |
UNCACHED_INVENTORY_MANAGER_NOT_SET
return code when uncachedInventoryManger is not set
|
AVAILABILITY_STATUS_BACKORDERABLE, AVAILABILITY_STATUS_DERIVED, AVAILABILITY_STATUS_DISCONTINUED, AVAILABILITY_STATUS_IN_STOCK, AVAILABILITY_STATUS_OUT_OF_STOCK, AVAILABILITY_STATUS_PREORDERABLE, INVENTORY_STATUS_FAIL, INVENTORY_STATUS_INSUFFICIENT_SUPPLY, INVENTORY_STATUS_ITEM_NOT_FOUND, INVENTORY_STATUS_SUCCEED
Constructor and Description |
---|
CachingInventoryManager() |
Modifier and Type | Method and Description |
---|---|
void |
acquireInventoryLocks(java.util.List pItemIds)
Acquires locks for the inventory items that apply to the given
ids.
|
void |
acquireInventoryLocks(java.util.List pItemIds,
java.lang.String pLocationId)
Acquires locks for the inventory items that apply to the given
ids.
|
int |
backorder(java.lang.String pId,
double pQuantity)
Backorder an item.
|
int |
backorder(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Backorder an item.
|
int |
backorder(java.lang.String pId,
long pQuantity)
Backorder an item.
|
int |
backorder(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Backorder an item.
|
int |
decreaseBackorderLevel(java.lang.String pId,
double pQuantity)
Decrease an item's backorder level by the specified amount.
|
int |
decreaseBackorderLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Decrease an item's backorderLevelWithFraction by the specified amount.
|
int |
decreaseBackorderLevel(java.lang.String pId,
long pQuantity)
Decrease an item's backorder level by the specified amount.
|
int |
decreaseBackorderLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Decrease an item's backorder level by the specified amount.
|
int |
decreasePreorderLevel(java.lang.String pId,
double pQuantity)
Decrease an item's preorder level by the specified amount.
|
int |
decreasePreorderLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Decrease an item's preorderLevelWithFraction by the specified amount.
|
int |
decreasePreorderLevel(java.lang.String pId,
long pQuantity)
Decrease an item's preorder level by the specified amount.
|
int |
decreasePreorderLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Decrease an item's preorder level by the specified amount.
|
int |
decreaseStockLevel(java.lang.String pId,
double pQuantity)
Decrease an item's stock level by the specified amount.
|
int |
decreaseStockLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Decrease an item's stockLevelWithFraction by the specified amount.
|
int |
decreaseStockLevel(java.lang.String pId,
long pQuantity)
Decrease an item's stock level by the specified amount.
|
int |
decreaseStockLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Decrease an item's stock level by the specified amount.
|
void |
flushCache()
Invalidate all the entries in the cache.
|
void |
flushCache(java.util.List pItemIds)
Invalidates the cache entries for the given ids.
|
void |
flushCache(java.util.List<java.lang.String> pItemIds,
java.util.List<java.lang.String> pLocationIds)
Invalidates the cache for all of the given item and location combinations
|
void |
flushCache(java.util.List pItemIds,
java.lang.String pLocationId)
Invalidates the cache for all of the given items at the given location
|
java.lang.String |
getDelimiter() |
AbstractCache |
getInventoryCache()
Returns property InventoryCache
|
java.lang.String |
getInventoryName()
A displayable name for thie inventory manager.
|
protected java.lang.String |
getKey(java.lang.String pId)
Get the cache key for the given itemId
|
protected java.lang.String |
getKey(java.lang.String pId,
java.lang.String pLocationId)
Get the cache key for the given item and location
|
InventoryManager |
getUncachedInventoryManager()
Returns property UncachedInventoryManager
|
int |
increaseBackorderLevel(java.lang.String pId,
double pQuantity)
Increase an item's backorder level by the specified number.
|
int |
increaseBackorderLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Increase an item's backorderLevelWithFraction by the specified quantity.
|
int |
increaseBackorderLevel(java.lang.String pId,
long pQuantity)
Increase an item's backorder level by the specified number.
|
int |
increaseBackorderLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Increase an item's backorder level by the specified quantity.
|
int |
increasePreorderLevel(java.lang.String pId,
double pQuantity)
Increase an item's preorder level by the specified number.
|
int |
increasePreorderLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Increase an item's preorderLevelWithFraction by the specified quantity.
|
int |
increasePreorderLevel(java.lang.String pId,
long pQuantity)
Increase an item's preorder level by the specified number.
|
int |
increasePreorderLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Increase an item's preorder level by the specified quantity.
|
int |
increaseStockLevel(java.lang.String pId,
double pQuantity)
Increase an item's stock level by the specified number.
|
int |
increaseStockLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Increase an item's stockLevelWithFraction by the specified quantity.
|
int |
increaseStockLevel(java.lang.String pId,
long pQuantity)
Increase an item's stock level by the specified number.
|
int |
increaseStockLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Increase an item's stock level by the specified quantity.
|
int |
inventoryWasUpdated(java.util.List pItemIds)
Informs the inventory manager that the given ids are now available.
|
int |
inventoryWasUpdated(java.util.List pItemIds,
java.lang.String pLocationId)
Informs the inventory manager that the given ids are now available.
|
int |
preorder(java.lang.String pId,
double pQuantity)
Preorder an item.
|
int |
preorder(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Preorder an item.
|
int |
preorder(java.lang.String pId,
long pQuantity)
Preorder an item.
|
int |
preorder(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Preorder an item.
|
int |
purchase(java.lang.String pId,
double pQuantity)
Actually purchases a product.
|
int |
purchase(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Actually purchases a product.
|
int |
purchase(java.lang.String pId,
long pQuantity)
Actually purchases a product.
|
int |
purchase(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Actually purchases a product.
|
int |
purchaseOffBackorder(java.lang.String pId,
double pQuantity)
Actually purchases a product.
|
int |
purchaseOffBackorder(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Actually purchases a product.
|
int |
purchaseOffBackorder(java.lang.String pId,
long pQuantity)
Actually purchases a product.
|
int |
purchaseOffBackorder(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Actually purchases a product.
|
int |
purchaseOffPreorder(java.lang.String pId,
double pQuantity)
Actually purchases a product.
|
int |
purchaseOffPreorder(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Actually purchases a product.
|
int |
purchaseOffPreorder(java.lang.String pId,
long pQuantity)
Actually purchases a product.
|
int |
purchaseOffPreorder(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Actually purchases a product.
|
java.util.Date |
queryAvailabilityDate(java.lang.String pId)
Return the availability date of an item.
|
java.util.Date |
queryAvailabilityDate(java.lang.String pId,
java.lang.String pLocationId)
Return the availability date of an item.
|
int |
queryAvailabilityStatus(java.lang.String pId)
Return the availability status of a given item.
|
int |
queryAvailabilityStatus(java.lang.String pId,
java.lang.String pLocationId)
Return the availability status of a given item.
|
AvailableToPromise |
queryAvailableToPromise(java.lang.String pItemId,
java.lang.String pLocationId)
Returns Available To Promise information for a given id and location
|
long |
queryBackorderLevel(java.lang.String pId)
Return how many of a given item can be backorder.
|
long |
queryBackorderLevel(java.lang.String pId,
java.lang.String pLocationId)
Return how many of a given item are available for backorder.
|
double |
queryBackorderLevelWithFraction(java.lang.String pId)
Return how many of a given item can be backorder.
|
double |
queryBackorderLevelWithFraction(java.lang.String pId,
java.lang.String pLocationId)
Return how many of a given item are available for backorder.
|
long |
queryBackorderThreshold(java.lang.String pId)
Return the threshold associated with backorderLevel
|
long |
queryBackorderThreshold(java.lang.String pId,
java.lang.String pLocationId)
Return the threshold associated with backorderLevel
|
java.util.Collection<InventoryInfo> |
queryInventoryInformation(java.util.Collection<java.lang.String> pItemIds,
java.util.Collection<java.lang.String> pLocationIds)
Returns an InventoryInfo object for every id at every location
|
java.util.Collection<InventoryInfo> |
queryInventoryInformation(java.util.Collection<java.lang.String> pItemIds,
java.lang.String pLocationId)
Returns an InventoryInfo object for each id at the given location
|
java.util.Collection<InventoryInfo> |
queryInventoryInformation(java.lang.String pId,
java.util.Collection<java.lang.String> pLocationIds)
Returns an InventoryInfo object for the given id at each given location
|
InventoryInfo |
queryInventoryInformation(java.lang.String pId,
java.lang.String pLocationId)
Returns an InventoryInfo object for the given id and location
|
long |
queryPreorderLevel(java.lang.String pId)
Return how many of a given item can be preorder.
|
long |
queryPreorderLevel(java.lang.String pId,
java.lang.String pLocationId)
Return how many of a given item are available for preorder.
|
double |
queryPreorderLevelWithFraction(java.lang.String pId)
Return how many of a given item can be preorder.
|
double |
queryPreorderLevelWithFraction(java.lang.String pId,
java.lang.String pLocationId)
Return how many of a given item are available for preorder.
|
long |
queryPreorderThreshold(java.lang.String pId)
Return the threshold associated with preorderLevel
|
long |
queryPreorderThreshold(java.lang.String pId,
java.lang.String pLocationId)
Return the threshold associated with preorderLevel
|
long |
queryStockLevel(java.lang.String pId)
Return how many of a given item are in the system.
|
long |
queryStockLevel(java.lang.String pId,
java.lang.String pLocationId)
Return how many of a given item are in the system.
|
double |
queryStockLevelWithFraction(java.lang.String pId)
Return how many of a given item are in the system.
|
double |
queryStockLevelWithFraction(java.lang.String pId,
java.lang.String pLocationId)
Return how many of a given item are in the system.
|
long |
queryStockThreshold(java.lang.String pId)
Return the threshold associated with stockLevel.
|
long |
queryStockThreshold(java.lang.String pId,
java.lang.String pLocationId)
Return the threshold associated with stockLevel.
|
void |
releaseInventoryLocks(java.util.List pItemIds)
Release locks for the inventory items that apply to the given
ids.
|
void |
releaseInventoryLocks(java.util.List pItemIds,
java.lang.String pLocationId)
Release locks for the inventory items that apply to the given
ids.
|
int |
setAvailabilityDate(java.lang.String pId,
java.util.Date pDate)
Set an item's availability date.
|
int |
setAvailabilityDate(java.lang.String pId,
java.util.Date pDate,
java.lang.String pLocationId)
Set an item's availability date.
|
int |
setAvailabilityStatus(java.lang.String pId,
int pStatus)
Set an item's availability status.
|
int |
setAvailabilityStatus(java.lang.String pId,
int pStatus,
java.lang.String pLocationId)
Set an item's availability status.
|
int |
setBackorderLevel(java.lang.String pId,
double pQuantity)
Set an item's backorder level to the specified number.
|
int |
setBackorderLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Set an item's BackorderLevelWithFraction to the specified quantity.
|
int |
setBackorderLevel(java.lang.String pId,
long pQuantity)
Set an item's backorder level to the specified number.
|
int |
setBackorderLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Set an item's backorder level to the specified quantity.
|
int |
setBackorderThreshold(java.lang.String pId,
long pQuantity)
Set an item's backorder level threshold.
|
int |
setBackorderThreshold(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Set an item's backorder level threshold.
|
void |
setDelimiter(java.lang.String pDelimiter) |
void |
setInventoryCache(AbstractCache pInventoryCache)
Sets property InventoryCache
|
void |
setInventoryName(java.lang.String pInventoryName) |
int |
setPreorderLevel(java.lang.String pId,
double pQuantity)
Set an item's preorder level to the specified number.
|
int |
setPreorderLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Set an item's PreorderLevelWithFraction to the specified quantity.
|
int |
setPreorderLevel(java.lang.String pId,
long pQuantity)
Set an item's preorder level to the specified number.
|
int |
setPreorderLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Set an item's preorder level to the specified quantity.
|
int |
setPreorderThreshold(java.lang.String pId,
long pQuantity)
Set an item's preorder level threshold.
|
int |
setPreorderThreshold(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Set an item's preorder level threshold.
|
int |
setStockLevel(java.lang.String pId,
double pQuantity)
Set an item's stock level to the specified number.
|
int |
setStockLevel(java.lang.String pId,
double pQuantity,
java.lang.String pLocationId)
Set an item's StockLevelWithFraction to the specified quantity.
|
int |
setStockLevel(java.lang.String pId,
long pQuantity)
Set an item's stock level to the specified number.
|
int |
setStockLevel(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Set an item's stock level to the specified quantity.
|
int |
setStockThreshold(java.lang.String pId,
long pQuantity)
Set an item's stock level threshold.
|
int |
setStockThreshold(java.lang.String pId,
long pQuantity,
java.lang.String pLocationId)
Set an item's stock level threshold.
|
void |
setUncachedInventoryManager(InventoryManager pUncachedInventoryManager)
Sets property UncachedInventoryManager
|
public static java.lang.String CLASS_VERSION
public static final int UNCACHED_INVENTORY_MANAGER_NOT_SET
public void setInventoryCache(AbstractCache pInventoryCache)
public AbstractCache getInventoryCache()
public void setUncachedInventoryManager(InventoryManager pUncachedInventoryManager)
public InventoryManager getUncachedInventoryManager()
public void setDelimiter(java.lang.String pDelimiter)
public java.lang.String getDelimiter()
public void setInventoryName(java.lang.String pInventoryName)
public java.lang.String getInventoryName()
getInventoryName
in interface InventoryManager
public int purchase(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
purchase
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem during the purchase process.public int purchase(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
purchase
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem during the purchase process.public int purchaseOffBackorder(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
purchaseOffBackorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem during the purchase process.public int purchaseOffBackorder(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
purchaseOffBackorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem during the purchase process.public int purchaseOffPreorder(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
purchaseOffPreorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem during the purchase process.public int purchaseOffPreorder(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
purchaseOffPreorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem during the purchase process.public int preorder(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
preorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem in trying to preorder the itempublic int preorder(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
preorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem in trying to preorder the itempublic int backorder(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
backorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem with the backordering process.public int backorder(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
backorder
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem with the backordering process.public int setStockLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
setStockLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setStockLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
setStockLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setBackorderLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
setBackorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setBackorderLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
setBackorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setPreorderLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
setPreorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setPreorderLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
setPreorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int increaseStockLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
increaseStockLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to add to the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int increaseStockLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
increaseStockLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to add to the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int decreaseStockLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
decreaseStockLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to decrease from the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int decreaseStockLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
decreaseStockLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to decrease from the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int increaseBackorderLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
increaseBackorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to add to the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int increaseBackorderLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
increaseBackorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to add to the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int decreaseBackorderLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
decreaseBackorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to decrease from the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int decreaseBackorderLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
decreaseBackorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to decrease from the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int increasePreorderLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
increasePreorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to add to the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int increasePreorderLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
increasePreorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to add to the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int decreasePreorderLevel(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
decreasePreorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to decrease from the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int decreasePreorderLevel(java.lang.String pId, double pQuantity, java.lang.String pLocationId) throws InventoryException
decreasePreorderLevel
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of items to decrease from the current stock levelpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setStockThreshold(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
setStockThreshold
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setBackorderThreshold(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
setBackorderThreshold
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setPreorderThreshold(java.lang.String pId, long pQuantity, java.lang.String pLocationId) throws InventoryException
setPreorderThreshold
in interface LocationInventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of the given item to restockpLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem trying to restockpublic int setAvailabilityStatus(java.lang.String pId, int pStatus, java.lang.String pLocationId) throws InventoryException
setAvailabilityStatus
in interface LocationInventoryManager
pId
- the id of the item involvedpStatus
- the new status (one of AVAILABILITY_STATUS_IN_STOCK,
AVAILABILITY_STATUS_BACKORDERABLE,
AVAILABILITY_STATUS_PREORDERABLE,
AVAILABILITY_STATUS_OUT_OF_STOCK,
AVAILABILITY_STATUS_DISCONTINUED,
or AVAILABILITY_STATUS_DERIVED)pLocationId
- the location of the inventory (null is default warehouse)InventoryException
public int setAvailabilityDate(java.lang.String pId, java.util.Date pDate, java.lang.String pLocationId) throws InventoryException
setAvailabilityDate
in interface LocationInventoryManager
pId
- the id of the item involvedpDate
- The new availability date for the item.pLocationId
- the location of the inventory (null is default warehouse)InventoryException
public long queryStockThreshold(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryStockThreshold
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic long queryBackorderThreshold(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryBackorderThreshold
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic long queryPreorderThreshold(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryPreorderThreshold
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic long queryStockLevel(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryStockLevel
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic double queryStockLevelWithFraction(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryStockLevelWithFraction
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic long queryBackorderLevel(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryBackorderLevel
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic double queryBackorderLevelWithFraction(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryBackorderLevelWithFraction
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic long queryPreorderLevel(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryPreorderLevel
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic double queryPreorderLevelWithFraction(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryPreorderLevelWithFraction
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the quantitypublic int queryAvailabilityStatus(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryAvailabilityStatus
in interface LocationInventoryManager
pId
- The id of the item involved.pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the status of the itempublic java.util.Date queryAvailabilityDate(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
queryAvailabilityDate
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
- if there was a problem determining the datepublic int inventoryWasUpdated(java.util.List pItemIds, java.lang.String pLocationId) throws InventoryException
inventoryWasUpdated
in interface LocationInventoryManager
pItemIds
- The items with recently added inventorypLocationId
- the location of the inventory (null is default warehouse)InventoryException
public void acquireInventoryLocks(java.util.List pItemIds, java.lang.String pLocationId) throws InventoryException
acquireInventoryLocks
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
public void releaseInventoryLocks(java.util.List pItemIds, java.lang.String pLocationId) throws InventoryException
releaseInventoryLocks
in interface LocationInventoryManager
pLocationId
- the location of the inventory (null is default warehouse)InventoryException
public java.util.Collection<InventoryInfo> queryInventoryInformation(java.util.Collection<java.lang.String> pItemIds, java.lang.String pLocationId) throws InventoryException
LocationInventoryManager
queryInventoryInformation
in interface LocationInventoryManager
pItemIds
- The items to find inventory information for.pLocationId
- the location of the inventory (null is default warehouse)InventoryException
public java.util.Collection<InventoryInfo> queryInventoryInformation(java.lang.String pId, java.util.Collection<java.lang.String> pLocationIds) throws InventoryException
LocationInventoryManager
queryInventoryInformation
in interface LocationInventoryManager
pId
- The item Id to find inventory info forpLocationIds
- The locations to find inventory information for.InventoryException
public java.util.Collection<InventoryInfo> queryInventoryInformation(java.util.Collection<java.lang.String> pItemIds, java.util.Collection<java.lang.String> pLocationIds) throws InventoryException
LocationInventoryManager
queryInventoryInformation
in interface LocationInventoryManager
pItemIds
- The items to find inventory information for.pLocationIds
- The locations to find inventory information for.InventoryException
public InventoryInfo queryInventoryInformation(java.lang.String pId, java.lang.String pLocationId) throws InventoryException
LocationInventoryManager
queryInventoryInformation
in interface LocationInventoryManager
pId
- The item Id to find inventory info forpLocationId
- the location of the inventory (null is default warehouse)InventoryException
public AvailableToPromise queryAvailableToPromise(java.lang.String pItemId, java.lang.String pLocationId) throws InventoryException
LocationInventoryManager
queryAvailableToPromise
in interface LocationInventoryManager
pItemId
- The item to find the ATP information forpLocationId
- The location to find ATP information for.InventoryException
public void flushCache()
public void flushCache(java.util.List pItemIds)
pItemIds
- The list of ids whose entries should be invalidatedpublic void flushCache(java.util.List<java.lang.String> pItemIds, java.util.List<java.lang.String> pLocationIds)
pItemIds
- the item ids to flushpLocationIds
- the locations to flushpublic void flushCache(java.util.List pItemIds, java.lang.String pLocationId)
pItemIds
- the item ids to flush (null is all items)pLocationId
- the location to flush items forprotected java.lang.String getKey(java.lang.String pId)
pId
- the item idprotected java.lang.String getKey(java.lang.String pId, java.lang.String pLocationId)
pId
- the item idpLocationId
- the locationpublic int purchase(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
purchase
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem during the purchase process.public int purchase(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
purchase
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem during the purchase process.public int purchaseOffBackorder(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
purchaseOffBackorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem during the purchase process.public int purchaseOffBackorder(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
purchaseOffBackorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem during the purchase process.public int purchaseOffPreorder(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
purchaseOffPreorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem during the purchase process.public int purchaseOffPreorder(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
purchaseOffPreorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem during the purchase process.public int preorder(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
preorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem in trying to preorder the itempublic int preorder(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
preorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem in trying to preorder the itempublic int backorder(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
backorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem with the backordering process.public int backorder(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
backorder
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the quantity of productInventoryException
- if there was a problem with the backordering process.public int setStockLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
setStockLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setStockLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
setStockLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setBackorderLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
setBackorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setBackorderLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
setBackorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setPreorderLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
setPreorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setPreorderLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
setPreorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int increaseStockLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
increaseStockLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to add to the current stock levelInventoryException
- if there was a problem trying to restockpublic int increaseStockLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
increaseStockLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to add to the current stock levelInventoryException
- if there was a problem trying to restockpublic int decreaseStockLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
decreaseStockLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to decrease from the current stock levelInventoryException
- if there was a problem trying to restockpublic int decreaseStockLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
decreaseStockLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to decrease from the current stock levelInventoryException
- if there was a problem trying to restockpublic int increaseBackorderLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
increaseBackorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to add to the current stock levelInventoryException
- if there was a problem trying to restockpublic int increaseBackorderLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
increaseBackorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to add to the current stock levelInventoryException
- if there was a problem trying to restockpublic int decreaseBackorderLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
decreaseBackorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to decrease from the current stock levelInventoryException
- if there was a problem trying to restockpublic int decreaseBackorderLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
decreaseBackorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to decrease from the current stock levelInventoryException
- if there was a problem trying to restockpublic int increasePreorderLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
increasePreorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to add to the current stock levelInventoryException
- if there was a problem trying to restockpublic int increasePreorderLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
increasePreorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to add to the current stock levelInventoryException
- if there was a problem trying to restockpublic int decreasePreorderLevel(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
decreasePreorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to decrease from the current stock levelInventoryException
- if there was a problem trying to restockpublic int decreasePreorderLevel(java.lang.String pId, double pQuantity) throws InventoryException
InventoryManager
decreasePreorderLevel
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of items to decrease from the current stock levelInventoryException
- if there was a problem trying to restockpublic int setStockThreshold(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
setStockThreshold
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setBackorderThreshold(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
setBackorderThreshold
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setPreorderThreshold(java.lang.String pId, long pQuantity) throws InventoryException
InventoryManager
setPreorderThreshold
in interface InventoryManager
pId
- the id of the item involvedpQuantity
- the number of the given item to restockInventoryException
- if there was a problem trying to restockpublic int setAvailabilityStatus(java.lang.String pId, int pStatus) throws InventoryException
InventoryManager
setAvailabilityStatus
in interface InventoryManager
pId
- the id of the item involvedpStatus
- the new status (one of AVAILABILITY_STATUS_IN_STOCK,
AVAILABILITY_STATUS_BACKORDERABLE,
AVAILABILITY_STATUS_PREORDERABLE,
AVAILABILITY_STATUS_OUT_OF_STOCK,
AVAILABILITY_STATUS_DISCONTINUED,
or AVAILABILITY_STATUS_DERIVED)InventoryException
public int setAvailabilityDate(java.lang.String pId, java.util.Date pDate) throws InventoryException
InventoryManager
setAvailabilityDate
in interface InventoryManager
pId
- the id of the item involvedpDate
- The new availability date for the item.InventoryException
public int queryAvailabilityStatus(java.lang.String pId) throws InventoryException
InventoryManager
queryAvailabilityStatus
in interface InventoryManager
pId
- The id of the item involved.InventoryException
- if there was a problem determining the status of the itempublic long queryStockLevel(java.lang.String pId) throws InventoryException
InventoryManager
queryStockLevel
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic double queryStockLevelWithFraction(java.lang.String pId) throws InventoryException
InventoryManager
queryStockLevelWithFraction
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic long queryBackorderLevel(java.lang.String pId) throws InventoryException
InventoryManager
queryBackorderLevel
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic double queryBackorderLevelWithFraction(java.lang.String pId) throws InventoryException
InventoryManager
queryBackorderLevelWithFraction
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic long queryPreorderLevel(java.lang.String pId) throws InventoryException
InventoryManager
queryPreorderLevel
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic double queryPreorderLevelWithFraction(java.lang.String pId) throws InventoryException
InventoryManager
queryPreorderLevelWithFraction
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic long queryPreorderThreshold(java.lang.String pId) throws InventoryException
InventoryManager
queryPreorderThreshold
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic java.util.Date queryAvailabilityDate(java.lang.String pId) throws InventoryException
InventoryManager
queryAvailabilityDate
in interface InventoryManager
InventoryException
- if there was a problem determining the datepublic long queryStockThreshold(java.lang.String pId) throws InventoryException
InventoryManager
queryStockThreshold
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic long queryBackorderThreshold(java.lang.String pId) throws InventoryException
InventoryManager
queryBackorderThreshold
in interface InventoryManager
InventoryException
- if there was a problem determining the numberpublic int inventoryWasUpdated(java.util.List pItemIds) throws InventoryException
InventoryManager
inventoryWasUpdated
in interface InventoryManager
pItemIds
- The items with recently added inventoryInventoryException
public void acquireInventoryLocks(java.util.List pItemIds) throws InventoryException
InventoryManager
acquireInventoryLocks
in interface InventoryManager
InventoryException
public void releaseInventoryLocks(java.util.List pItemIds) throws InventoryException
InventoryManager
releaseInventoryLocks
in interface InventoryManager
InventoryException