com.ibm.commerce.contract.commands

Class ParticipantAddCmdImpl

  • java.lang.Object
    • com.ibm.websphere.command.CacheableCommandImpl
      • com.ibm.commerce.command.MeasuredCacheableCommandImpl
        • com.ibm.commerce.command.AbstractECTargetableCommand
          • com.ibm.commerce.command.ControllerCommandImpl
            • com.ibm.commerce.contract.commands.ParticipantAddCmdImpl
  • All Implemented Interfaces:
    com.ibm.commerce.command.AccCommand, com.ibm.commerce.command.ControllerCommand, com.ibm.commerce.command.ECCommand, com.ibm.commerce.command.ECTargetableCommand, ParticipantAddCmd, com.ibm.commerce.security.Protectable, com.ibm.websphere.command.CacheableCommand, com.ibm.websphere.command.Command


    public class ParticipantAddCmdImpl
    extends com.ibm.commerce.command.ControllerCommandImpl
    implements ParticipantAddCmd
    This is the default implementation of the ParticipantAddCmd controller command.

    Input parameters:

    Name Description
    Info A string of information for the participant. Mandatory.
    MemberId The member ID of the participant. Mandatory.
    RequestProperties The request properties. MemberId and role are required parameters. optional parameters are info, id, tcId. In the case to add a participant to an account/contract, the account/contract ID has to be provided through the parameter id. In the case to add participant to a term and condition of a contract. The ID of the term and condition has to be provided through the parameter tcId. If the parameters are set by setter methods, the request properties is optional.
    Role The type of the participant role. Mandatory.
    TcId The term condition ID. Mandatory.
    TradingId The trading agreement ID. Optional.

    Output parameters:

    Name Description
    Resources The access vector accessed by this command.The default implementation returns the AccountAccessBean for adding participant to an account and ContractAccessBean for contract.

    Behaviour:

      Add a participant to either a trading agreement (Contract/Account) or a Contract terms and conditions (WebSphere Commerce Enterprise only).

    AccessBeans called:

    • ContractAccessBean
    • AccountAccessBean
    • TradingAgreementAccessBean
    • ParticipantAccessBean
    • Constructor Summary

      Constructors 
      Constructor and Description
      ParticipantAddCmdImpl()
      Constructor for ParticipantAddCmdImpl.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      com.ibm.commerce.accesscontrol.AccessVector getResources()
      Gets the access vector accessed by this command.
      void performExecute()
      Executes the business logic of this command implementation.
      void setInfo(java.lang.String info)
      Sets information of the participant
      void setMemberId(java.lang.Long memberId)
      Sets member ID of the participant.
      void setRequestProperties(com.ibm.commerce.datatype.TypedProperty aRequestProperties)
      Retrieves input parameters from the request properties.
      void setRole(java.lang.String role)
      Sets the role type of the participant.
      void setTcId(java.lang.Long tcId)
      Sets ID of the term and condition to which the participant will be added
      void setTradingId(java.lang.Long tradingId)
      Sets ID of the trading agreement to which the participant will be added
      void validateParameters()
      Checks the input parameters.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from class com.ibm.commerce.command.ControllerCommandImpl

        checkPermission, fulfills, getForUserId, getGeneric, getOwner, getRequestProperties, getResolvedRequestProperties, getResourceOwners, getResponseProperties, getRetriable, getViewInputProperties, isGeneric, isRetriable, mergeProperties, setForUserId, setGeneric, setOwner, setResponseProperties, setRetriable, setViewInputProperties
      • Methods inherited from class com.ibm.commerce.command.AbstractECTargetableCommand

        accessControlCheck, checkIsAllowed, checkResourcePermission, createCommandExecutionEvent, execute, getAccCheck, getCommandContext, getCommandIfName, getCommandName, getCommandStoreId, getDefaultProperties, getExceptionInvokeParameters, getObjectSize, getPostInvokeParameters, getPreInvokeParameters, getStoreId, getUser, getUserId, isReadyToCallExecute, reset, setAccCheck, setCommandContext, setCommandIfName, setCommandStoreId, setDefaultProperties
      • Methods inherited from interface com.ibm.commerce.command.ControllerCommand

        checkPermission, 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, getResourceOwners, setAccCheck, setForUserId, setOwner
      • Methods inherited from interface com.ibm.commerce.command.ECCommand

        checkIsAllowed, checkResourcePermission, createCommandExecutionEvent, getCommandContext, getCommandIfName, getCommandName, getCommandStoreId, getDefaultProperties, getExceptionInvokeParameters, getPostInvokeParameters, getPreInvokeParameters, getStoreId, getUser, getUserId, setCommandContext, setCommandIfName, setCommandStoreId, setDefaultProperties
      • Methods inherited from interface com.ibm.commerce.security.Protectable

        fulfills, getOwner
    • Field Detail

      • CLASSNAME

        public static final java.lang.String CLASSNAME
        The name of this class.
        See Also:
        Constant Field Values
      • COPYRIGHT

        public static final java.lang.String COPYRIGHT
        IBM copyright notice field.
        See Also:
        Constant Field Values
    • Constructor Detail

      • ParticipantAddCmdImpl

        public ParticipantAddCmdImpl()
        Constructor for ParticipantAddCmdImpl.
    • Method Detail

      • getResources

        public com.ibm.commerce.accesscontrol.AccessVector getResources()
                                                                 throws com.ibm.commerce.exception.ECException
        Gets the access vector accessed by this command. The default implementation returns the AccountAccessBean for adding participant to an account and ContractAccessBean for contract.
        Specified by:
        getResources in interface com.ibm.commerce.command.ECCommand
        Overrides:
        getResources in class com.ibm.commerce.command.AbstractECTargetableCommand
        Returns:
        AccessVector - a vector of resource action pairs
        Throws:
        com.ibm.commerce.exception.ECException
        See Also:
        AbstractECTargetableCommand.getResources()
      • performExecute

        public void performExecute()
                            throws com.ibm.commerce.exception.ECException
        Executes the business logic of this command implementation.
        Specified by:
        performExecute in interface com.ibm.commerce.command.ECCommand
        Overrides:
        performExecute in class com.ibm.commerce.command.AbstractECTargetableCommand
        Throws:
        com.ibm.commerce.exception.ECException
        See Also:
        AbstractECTargetableCommand.performExecute()
      • setInfo

        public void setInfo(java.lang.String info)
        Sets information of the participant
        Specified by:
        setInfo in interface ParticipantAddCmd
        Parameters:
        info - a string of information for the participant
      • setMemberId

        public void setMemberId(java.lang.Long memberId)
        Sets member ID of the participant.
        Specified by:
        setMemberId in interface ParticipantAddCmd
        Parameters:
        memberId - the member ID of the participant
      • setRequestProperties

        public void setRequestProperties(com.ibm.commerce.datatype.TypedProperty aRequestProperties)
                                  throws com.ibm.commerce.exception.ECApplicationException
        Retrieves input parameters from the request properties.
        Specified by:
        setRequestProperties in interface com.ibm.commerce.command.ControllerCommand
        Overrides:
        setRequestProperties in class com.ibm.commerce.command.ControllerCommandImpl
        Parameters:
        aRequestProperties - An TypedProperty object contains the input parameters. For this default implementation, memberId and role are required parameters. optional parameters are info, id, tcId. In the case to add a participant to an account/contract, the account/contract ID has to be provided through the parameter id. In the case to add participant to a term and condition of a contract. The ID of the term and condition has to be provided through the parameter tcId.
        Throws:
        com.ibm.commerce.exception.ECApplicationException - Raised with message _ERR_MISSING_CMD_PARAMETER if one of the three required parameters are missing. Raised with message _ERR_NUMBER_FORMAT_EXCEPTION if the provided id, tcId cannot be converted to Long object.
        See Also:
        ControllerCommandImpl.setRequestProperties(TypedProperty)
      • setRole

        public void setRole(java.lang.String role)
        Sets the role type of the participant.
        Specified by:
        setRole in interface ParticipantAddCmd
        Parameters:
        role - the type of the participant role
      • setTcId

        public void setTcId(java.lang.Long tcId)
        Sets ID of the term and condition to which the participant will be added
        Specified by:
        setTcId in interface ParticipantAddCmd
        Parameters:
        tcId - term condition ID
      • setTradingId

        public void setTradingId(java.lang.Long tradingId)
        Sets ID of the trading agreement to which the participant will be added
        Specified by:
        setTradingId in interface ParticipantAddCmd
        Parameters:
        tradingId - the trading agreement ID
      • validateParameters

        public void validateParameters()
                                throws com.ibm.commerce.exception.ECException
        Checks the input parameters.
        Specified by:
        validateParameters in interface com.ibm.commerce.command.ECCommand
        Overrides:
        validateParameters in class com.ibm.commerce.command.AbstractECTargetableCommand
        Throws:
        com.ibm.commerce.exception.ECException - Raised with message _ERR_PARTICIPANT_ADD_TARGET_ID if both the id and tcId parameters are missing or provided at the same time for this command. Raised with message _ERR_PARTICIPANT_ROLE_TYPE_DO_NOT_EXIST if the role type provided is not a supported role type. Raised with message _ERR_ACCOUNT_TC_PARTICIPANT whenever trying to add a participant to a Business Account terms and conditions. Raised with message _ERR_WRONG_CONTRACT_STATE if the contract do not in Draft or Rejected state. When adding a participant to a contract or a contract terms and conditions, it will do it.
        See Also:
        AbstractECTargetableCommand.validateParameters()