com.ibm.commerce.contract.commands

Class ContractDeleteCmdImpl

  • 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.ContractDeleteCmdImpl
  • All Implemented Interfaces:
    com.ibm.commerce.command.AccCommand, com.ibm.commerce.command.ControllerCommand, com.ibm.commerce.command.ECCommand, com.ibm.commerce.command.ECTargetableCommand, ContractDeleteCmd, com.ibm.commerce.security.Protectable, com.ibm.websphere.command.CacheableCommand, com.ibm.websphere.command.Command


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

    Input parameters:

    Name Description
    contractId The contract IDs list. It is mandatory.

    Output parameters:

    Name Description
    contractId The contract IDs list.

    Behaviour:

    Deletes the specified contracts by setting the contracts to MarkForDelete (WebSphere Commerce Enterprise only). This command does not remove the contract from the database immediately. A contract has to be in one of the following state to run this command: Draft, Cancelled, Closed.

    Task command called:

    UpdateRegistryCmd

    Access Beans used:

    • ContractAccessBean
    • TradingAgreementAccessBean
    • com.ibm.commerce.common.objects.StoreJDBCHelperAccessBean
    • com.ibm.commerce.contract.objects.ContractJDBCHelperAccessBean
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String[] getContractIdList()
      Returns the IDs list of the contracts to be deleted.
      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 setContractIdList(java.lang.String[] asaContractIdList)
      Set the delete contract list id parameters.
      void setRequestProperties(com.ibm.commerce.datatype.TypedProperty aRequestProperties)
      Sets the request properties of this command implementation.
      void validateParameters()
      Extracts and validates the input parameters of this command implementation.
      • 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 full name of this class.
        See Also:
        Constant Field Values
      • COPYRIGHT

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

      • ContractDeleteCmdImpl

        public ContractDeleteCmdImpl()
    • Method Detail

      • getContractIdList

        public java.lang.String[] getContractIdList()
        Returns the IDs list of the contracts to be deleted.
        Specified by:
        getContractIdList in interface ContractDeleteCmd
        Returns:
        a String array of the contract IDs.
      • 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 a vector of ContractAccessBean objects of the contracts to be deleted.

        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. The method closes the specified contract. If there is a store created by this contract. The status of the store will be set to "Suspended", and the state of the store relationship if it has will be set to "Inactive". The store is set to "markForDelete".
        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 - Raised with message _ERR_UPDATE_STORE_STATUS whenever the error occurs in ManageStoreCmd. see that command for detail Raised with message _ERR_UPDATE_STORE_RELATIONSHIP_STATE whenever the error occurs in UpdateStoreRelationshipStateCmd. Raised with message _ERR_UPDATE_STORE_OR_STORE_RELATIONSHIP_STATE if one of the following exception be thrown when trying to get store and store relationship information from the specified contract: CreateException, RemoteException, SQLException, FinderException, NameException.
        See Also:
        ECCommand.performExecute(), AbstractECTargetableCommand.performExecute()
      • setContractIdList

        public void setContractIdList(java.lang.String[] asaContractIdList)
        Set the delete contract list id parameters.
        Specified by:
        setContractIdList in interface ContractDeleteCmd
        Parameters:
        asaContractIdList - java.lang.String[]
      • setRequestProperties

        public void setRequestProperties(com.ibm.commerce.datatype.TypedProperty aRequestProperties)
                                  throws com.ibm.commerce.exception.ECApplicationException
        Sets the request properties of this command implementation.
        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, contractId is required parameter.
        Throws:
        com.ibm.commerce.exception.ECApplicationException - Raised with message _ERR_MISSING_CMD_PARAMETER when contractId is missed from the URL.
        See Also:
        ControllerCommandImpl.setRequestProperties(TypedProperty)
      • validateParameters

        public void validateParameters()
                                throws com.ibm.commerce.exception.ECException
        Extracts and validates the input parameters of this command implementation. Validates the contract(s) to check if they are in right state for this process.
        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_WRONG_CONTRACT_STATE if one of the contract(s) is not in one of the following states: Draft, Closed, Canceled. Raised with message _ERR_CONTRACT_OBJECT_NOT_FOUND if one of the contract(s) cannot be found. It is based on the provided contract id. Raised with message _ERR_NUMBER_FORMAT_EXCEPTION if one of the contract id string cannot be convert to Long object.
        See Also:
        AbstractECTargetableCommand.validateParameters()