com.ibm.commerce.collaboration.livehelp.commands
Class RetrieveShoppingCartCmdImpl
com.ibm.commerce.command.AbstractECTargetableCommand
|
+--com.ibm.commerce.command.ControllerCommandImpl
|
+--com.ibm.commerce.collaboration.livehelp.commands.RetrieveShoppingCartCmdImpl
- All Implemented Interfaces:
- AccCommand, ControllerCommand, ECCommand, ECTargetableCommand, Protectable, RetrieveShoppingCartCmd
- public class RetrieveShoppingCartCmdImpl
- extends ControllerCommandImpl
- implements RetrieveShoppingCartCmd
Retrieves a shoppers profile for the Customer Care (sametime) tooling in Commerce Accelerator
Behaviour
The command does the following:
- Verifies that the user requesting the action is a Customer Service Representative (CSR), Customer Service
Supervisor (CSS), Seller, or a Site Administrator role in the seller organization. Otherwise, the requester does not have the authority
to execute this command.
- Creates an instance of UserRegistrationDataBean.
- Creates an instance of UserAccessBean.
- Creates an instance of OrderAccessBean.
- Uses the OrderAccessBean to populate the Vector vOrder with any pending orders.
- Checks if the user is registered.
- If the user is registered, puts the logonName in the responseProperties as "Title" .
- If the user is NOT registered, puts the userId in the responseProperties as "Title".
- Generates the xml description of the shopping cart in the following format:
<ShoppingCart>
<OrderItem>
<OrderItemId></OrderItemId>
<quantity></quantity>
<partNumber></partNumber>
<description></description>
<basePrice></basePrice>
<baseCurrency></baseCurrency>
<fulfilmentStatus></fulfilmentStatus>
<customerComment></customerComment>
<price></price>
<tax></tax>
</OrderItem>
</ShoppingCart>
- Sets the viewtask to LiveHelpShoppingCartView in responseProperties
Exception Conditions
If any parameters are missing, the command sets the _ERR_MISSING_PARMS exception task to handle the error.
Method Summary |
AccessVector |
getResources()
Gets the access vector accessed by this command. |
java.lang.String |
getShoppingcart()
Return the shopping cart XML string. |
boolean |
isGeneric()
This controller command can not be called by a generic user. |
boolean |
isReadyToCallExecute()
Always true. |
void |
performExecute()
This method will retrieve the shopping cart information and generate the shopcart xml. |
protected java.lang.String |
safeString(java.lang.String riskyString)
Utility function to check if a string is safe to use. |
void |
validateParameters()
Checks for the required parameters "userId" and "storeId" in the requestProperties. |
Methods inherited from class com.ibm.commerce.command.ControllerCommandImpl |
fulfills, getForUserId, getGeneric, getOwner, getRequestProperties, getResolvedRequestProperties, getResponseProperties, getRetriable, getViewInputProperties, isRetriable, mergeProperties, setForUserId, setGeneric, setOwner, setRequestProperties, 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 |
Methods inherited from interface com.ibm.commerce.command.ControllerCommand |
execute, getGeneric, getRequestProperties, getResolvedRequestProperties, getResponseProperties, getRetriable, getViewInputProperties, isRetriable, mergeProperties, setGeneric, setRequestProperties, setRetriable, setViewInputProperties |
Methods inherited from interface com.ibm.commerce.command.ECCommand |
checkIsAllowed, checkResourcePermission, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getStoreId, getUser, getUserId, setCommandContext, setCommandIfName, setDefaultProperties |
bnRegister
protected UserRegistrationDataBean bnRegister
CLASSNAME
public static final java.lang.String CLASSNAME
COPYRIGHT
public static final java.lang.String COPYRIGHT
ERRTASK_NAME
public static final java.lang.String ERRTASK_NAME
storeId
protected java.lang.String storeId
userId
protected java.lang.String userId
vOrder
protected java.util.Vector vOrder
RetrieveShoppingCartCmdImpl
public RetrieveShoppingCartCmdImpl()
getResources
public AccessVector getResources()
throws ECException
- Gets the access vector accessed by this command.
The default implementation returns null indicating that no protectable resource is
accessed by this command. It is the responsibilities of the command writer to
return the protectable primary resource(s) and the corresponding actions accessed
by this command.
- Specified by:
getResources
in interface ECCommand
- Overrides:
getResources
in class AbstractECTargetableCommand
- Returns:
- AccessVector - a vector of resource action pairs
getShoppingcart
public java.lang.String getShoppingcart()
- Return the shopping cart XML string.
- Returns:
- java.lang.String
isGeneric
public boolean isGeneric()
- This controller command can not be called by a generic user.
- Specified by:
isGeneric
in interface ControllerCommand
- Overrides:
isGeneric
in class ControllerCommandImpl
- Returns:
- boolean
isReadyToCallExecute
public boolean isReadyToCallExecute()
- Always true.
- Overrides:
isReadyToCallExecute
in class AbstractECTargetableCommand
- Returns:
- boolean
performExecute
public void performExecute()
throws ECException
- This method will retrieve the shopping cart information and generate the shopcart xml.
- Specified by:
performExecute
in interface ECCommand
- Overrides:
performExecute
in class AbstractECTargetableCommand
- Throws:
ECException
- If anything goes wrong with the data resources being queried.
safeString
protected java.lang.String safeString(java.lang.String riskyString)
- Utility function to check if a string is safe to use.
- Parameters:
riskyString
- A string that could be null, or contain leading or trailing spaces.- Returns:
- A safe string, trimmed, and set to "" if the input was null.
validateParameters
public void validateParameters()
throws ECException
- Checks for the required parameters "userId" and "storeId" in the requestProperties.
- Specified by:
validateParameters
in interface ECCommand
- Overrides:
validateParameters
in class AbstractECTargetableCommand
- Throws:
ECException
- If parameters are missing.