com.ibm.commerce.messaging.commands
Class ProductInventoryUpdateCmdImpl

com.ibm.commerce.command.AbstractECTargetableCommand
  |
  +--com.ibm.commerce.command.ControllerCommandImpl
        |
        +--com.ibm.commerce.messaging.commands.ProductInventoryUpdateCmdImpl
All Implemented Interfaces:
AccCommand, ControllerCommand, ECCommand, ECTargetableCommand, ProductInventoryUpdateCmd, Protectable

public class ProductInventoryUpdateCmdImpl
extends ControllerCommandImpl
implements ProductInventoryUpdateCmd

The implementation of the ProductInventoryUpdate command (see interface for a detailed description of the ProductInventoryUpdate command)


Field Summary
static java.lang.String COPYRIGHT
          The internal copyright field.
 java.util.Vector iRequestPropertiesVector
          A vector containing a request property for each update needed.
 
Fields inherited from class com.ibm.commerce.command.ControllerCommandImpl
requestProperties, responseProperties, retriable, viewReqProperties
 
Fields inherited from class com.ibm.commerce.command.AbstractECTargetableCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.messaging.commands.ProductInventoryUpdateCmd
defaultCommandClassName, NAME
 
Constructor Summary
ProductInventoryUpdateCmdImpl()
           
 
Method Summary
 boolean doPostProcess(TypedProperty aRequestProperty)
          Performs a verification check after the command executes.
 boolean doPreProcess(TypedProperty aRequestProperty)
          Performs a verification check before the command executes.
 boolean doProcess(TypedProperty aRequestProperty)
          Updates the product inventory based on the request properties.
 java.lang.Long[] getResourceOwners()
          This method returns the Organization unit reference numbers for all the resources accessed by this command It will return null if no resource if being accessed by this command.
 AccessVector getResources()
          Get resources.
 boolean isReadyToCallExecute()
          Indicates whether the command is ready to execute.
 boolean isReadyToCallExecutePerCommandInstance()
          Indicates whether each command instance is ready to be executed.
 void performExecute()
          Processes each request property in the iRequestPropertiesVector.
 void setRequestProperties(TypedProperty aRequestProperties)
          Sets the iRequestPropertiesVector based on the given aRequestProperties.
 void setRequestPropertiesPerCommandInstance(TypedProperty aRequestProperties)
          Sets the command instance variables before processing each item in the iRequestPropertiesVector.
 
Methods inherited from class com.ibm.commerce.command.ControllerCommandImpl
fulfills, getForUserId, getGeneric, getOwner, getRequestProperties, getResolvedRequestProperties, getResponseProperties, getRetriable, getViewInputProperties, isGeneric, isRetriable, mergeProperties, setForUserId, setGeneric, setOwner, setResponseProperties, setRetriable, setViewInputProperties
 
Methods inherited from class com.ibm.commerce.command.AbstractECTargetableCommand
accessControlCheck, checkIsAllowed, checkResourcePermission, execute, finalize, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getStoreId, getUser, getUserId, reset, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties, validateParameters
 
Methods inherited from interface com.ibm.commerce.command.ControllerCommand
execute, getGeneric, getRequestProperties, getResolvedRequestProperties, getResponseProperties, getRetriable, getViewInputProperties, isGeneric, isRetriable, mergeProperties, setGeneric, setRetriable, setViewInputProperties
 
Methods inherited from interface com.ibm.commerce.command.AccCommand
accessControlCheck, getAccCheck, getForUserId, setAccCheck, setForUserId, setOwner
 
Methods inherited from interface com.ibm.commerce.command.ECCommand
checkIsAllowed, checkResourcePermission, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getStoreId, getUser, getUserId, setCommandContext, setCommandIfName, setDefaultProperties, validateParameters
 
Methods inherited from interface com.ibm.commerce.security.Protectable
fulfills, getOwner
 

Field Detail

COPYRIGHT

public static final java.lang.String COPYRIGHT
The internal copyright field.

iRequestPropertiesVector

public java.util.Vector iRequestPropertiesVector
A vector containing a request property for each update needed.
Constructor Detail

ProductInventoryUpdateCmdImpl

public ProductInventoryUpdateCmdImpl()
Method Detail

doPostProcess

public boolean doPostProcess(TypedProperty aRequestProperty)
                      throws ECException
Performs a verification check after the command executes.
Specified by:
doPostProcess in interface ProductInventoryUpdateCmd
Parameters:
aRequestProperty - com.ibm.commerce.datatype.TypedProperty
Returns:
boolean
Throws:
ECException -  

doPreProcess

public boolean doPreProcess(TypedProperty aRequestProperty)
                     throws ECException
Performs a verification check before the command executes.
Specified by:
doPreProcess in interface ProductInventoryUpdateCmd
Parameters:
aRequestProperty - com.ibm.commerce.datatype.TypedProperty
Returns:
boolean
Throws:
ECException -  

doProcess

public boolean doProcess(TypedProperty aRequestProperty)
                  throws ECException
Updates the product inventory based on the request properties. If a problem with the update occurs, an ECException will be thrown.
Specified by:
doProcess in interface ProductInventoryUpdateCmd
Parameters:
aRequestProperty - com.ibm.commerce.datatype.TypedProperty
Returns:
boolean
Throws:
ECException -  

getResourceOwners

public java.lang.Long[] getResourceOwners()
                                   throws ECException
This method returns the Organization unit reference numbers for all the resources accessed by this command It will return null if no resource if being accessed by this command.
Specified by:
getResourceOwners in interface AccCommand
Overrides:
getResourceOwners in class ControllerCommandImpl
Returns:
Long[] - an array of all organization unit reference numbers
Throws:
ECException -  

getResources

public AccessVector getResources()
                          throws ECException
Get resources. Creation date: (8/28/2001 6:28:10 PM)
Specified by:
getResources in interface ECCommand
Overrides:
getResources in class AbstractECTargetableCommand
Returns:
com.ibm.commerce.accesscontrol.AccessVector
Throws:
ECException - The exception description.

isReadyToCallExecute

public boolean isReadyToCallExecute()
Indicates whether the command is ready to execute.
Overrides:
isReadyToCallExecute in class AbstractECTargetableCommand
Returns:
boolean

isReadyToCallExecutePerCommandInstance

public boolean isReadyToCallExecutePerCommandInstance()
Indicates whether each command instance is ready to be executed.
Returns:
boolean

performExecute

public void performExecute()
                    throws ECException
Processes each request property in the iRequestPropertiesVector. Before each request property is processed, a pre condition check is performed. If the pre condition check on the request property is ok, the business logic will be performed followed by a post condition check to ensure integrity is maintained. If either of the 3 steps fail, an ECException will be thrown.
Specified by:
performExecute in interface ECCommand
Overrides:
performExecute in class AbstractECTargetableCommand
Throws:
ECException -  

setRequestProperties

public void setRequestProperties(TypedProperty aRequestProperties)
Sets the iRequestPropertiesVector based on the given aRequestProperties.
Specified by:
setRequestProperties in interface ControllerCommand
Overrides:
setRequestProperties in class ControllerCommandImpl
Parameters:
aRequestProperty - com.ibm.commerce.datatype.TypedProperty

setRequestPropertiesPerCommandInstance

public void setRequestPropertiesPerCommandInstance(TypedProperty aRequestProperties)
                                            throws ECApplicationException
Sets the command instance variables before processing each item in the iRequestPropertiesVector.
Parameters:
aRequestProperty - com.ibm.commerce.datatype.TypedProperty
Throws:
ECApplicationException -