com.ibm.commerce.utf.commands
Class CreateOrderItemPAttributeTCCmdImpl

java.lang.Object
  |
  +--com.ibm.commerce.command.AbstractECCommand
        |
        +--com.ibm.commerce.command.TaskCommandImpl
              |
              +--com.ibm.commerce.utf.commands.CreateOrderItemPAttributeTCCmdImpl
All Implemented Interfaces:
CreateOrderItemPAttributeTCCmd, ECCommand, TaskCommand

public class CreateOrderItemPAttributeTCCmdImpl
extends TaskCommandImpl
implements CreateOrderItemPAttributeTCCmd

Creates Terms and Conditions of type "OrderItemPAttribute". This command can be used to convert personalization attributes specified for each item during the course of a negotiation into Terms and Conditions associated with a trading agreement. When an order results from this trading agreement, these OrderItemPAttribute TCs will appear as personalized attributes for each order item.

Behaviour

The command loops through the list of personalized attributes and does the following for each attribute:

  1. Composes an XML element for an OrderItemPAttributeTC that conforms to the Trading DTD.
  2. Creates the OrderItemPAttribute Term and Condition object using the XML element and the supplied trading agreement ID.

Exception conditions


Field Summary
 java.util.Vector attributeInfo
           
 java.lang.Long catentryId
           
 java.lang.Long tradingId
           
 
Fields inherited from class com.ibm.commerce.command.AbstractECCommand
commandContext
 
Fields inherited from interface com.ibm.commerce.utf.commands.CreateOrderItemPAttributeTCCmd
COPYRIGHT, defaultCommandClassName, NAME
 
Constructor Summary
CreateOrderItemPAttributeTCCmdImpl()
           
 
Method Summary
 java.util.Vector getAttributeInfo()
          Retrieves the list of personalized attributes.
 java.lang.Long getCatentryId()
          Retrieves the catalog entry ID.
 java.lang.Long getTradingId()
          Retrieves the trading agreement ID.
 void performExecute()
          Creates one OrderItemPAttribute TC for every incoming personalization attribute.
 void setAttributeInfo(java.util.Vector newAttributeInfo)
          Stores the list of personalization attributes that need to be converted into terms and conditions.
 void setCatentryId(java.lang.Long newCatentryId)
          Stores the incoming catalog entry ID.
 void setTradingId(java.lang.Long newTradingId)
          Stores the incoming trading agreement ID.
 void validateParameters()
          This method does the following:
Verifies that a trading agreement ID has been provided and exists. Verifies that a catalog entry ID has been provided. Verifies that a list of personalized attributes has been provided for the catalog entry.
 
Methods inherited from class com.ibm.commerce.command.AbstractECCommand
accessControlCheck, checkIsAllowed, checkResourcePermission, execute, finalize, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, isReadyToCallExecute, reset, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.commerce.command.ECCommand
checkIsAllowed, checkResourcePermission, execute, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getDefaultProperties, getResources, getStoreId, getUser, getUserId, setAccCheck, setCommandContext, setCommandIfName, setDefaultProperties
 

Field Detail

attributeInfo

public java.util.Vector attributeInfo

catentryId

public java.lang.Long catentryId

tradingId

public java.lang.Long tradingId
Constructor Detail

CreateOrderItemPAttributeTCCmdImpl

public CreateOrderItemPAttributeTCCmdImpl()
Method Detail

getAttributeInfo

public java.util.Vector getAttributeInfo()
Retrieves the list of personalized attributes.
Returns:
The list of personzalised attributes.

getCatentryId

public java.lang.Long getCatentryId()
Retrieves the catalog entry ID.
Returns:
The catalog entry ID.

getTradingId

public java.lang.Long getTradingId()
Retrieves the trading agreement ID.
Returns:
The trading agreement ID.

performExecute

public void performExecute()
                    throws ECException
Creates one OrderItemPAttribute TC for every incoming personalization attribute. This method does the following for every personalization attribute:

Specified by:
performExecute in interface ECCommand
Overrides:
performExecute in class AbstractECCommand
Throws:
ECApplicationException - If no value was provided for a personalization attribute.
If an application error occurs while creating the TC.
ECSystemException - If a system error occurs while creating the TC.

setAttributeInfo

public void setAttributeInfo(java.util.Vector newAttributeInfo)
Stores the list of personalization attributes that need to be converted into terms and conditions.
Specified by:
setAttributeInfo in interface CreateOrderItemPAttributeTCCmd
Parameters:
newAttrInfo - The list of personalization attributes.

setCatentryId

public void setCatentryId(java.lang.Long newCatentryId)
Stores the incoming catalog entry ID.
Specified by:
setCatentryId in interface CreateOrderItemPAttributeTCCmd
Parameters:
newCatentryid - The ID of the catalog entry.

setTradingId

public void setTradingId(java.lang.Long newTradingId)
Stores the incoming trading agreement ID.
Specified by:
setTradingId in interface CreateOrderItemPAttributeTCCmd
Parameters:
newTradingId - The ID of the trading agreement.

validateParameters

public void validateParameters()
                        throws ECException
This method does the following:
  1. Verifies that a trading agreement ID has been provided and exists.
  2. Verifies that a catalog entry ID has been provided.
  3. Verifies that a list of personalized attributes has been provided for the catalog entry.

Specified by:
validateParameters in interface ECCommand
Overrides:
validateParameters in class AbstractECCommand
Throws:
ECApplicationException -
  • If the trading agreement ID has not been provided.
  • If no trading agreement with the given ID exists.
  • If the catalog entry ID has not been provided.
  • If the list of personalized attributes has not been provided.