com.ibm.commerce.contract.commands

Class ContractCreateCmdImpl

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


    public class ContractCreateCmdImpl
    extends com.ibm.commerce.command.ControllerCommandImpl
    implements ContractCreateCmd
    This is the default implementation of the ContractCopyCmd controller command.

    Input parameters:

    Name Description
    XMLString The XML string. It is mandatory.
    path The XML entity path. It is mandatory.
    validate The flag to indicate if validate an importing xml file against an xml schema. It is optional.
    xsd The flag to indicate if an xml instance file based on XSD or not. It is optional.

    Output parameters:

    Name Description
    contractId the ID of the newly created contract.

    Behaviour:

    Creates a contract based on the import XMLString. The contract will be in Draft state (WebSphere Commerce Enterprise only).

    Task command called:

    • Constructor Summary

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

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.Long getContractId()
      Returns the ID of the newly created contract.
      void performExecute()
      Executes the business logic of this command implementation.
      void setLanguageId(java.lang.Integer langId)
      Sets the language ID.
      void setRequestProperties(org.w3c.dom.Document contractXML)
      Sets the contract XML instance Document object.
      void setRequestProperties(com.ibm.commerce.datatype.TypedProperty aRequestProperties)
      Sets the request properties of this command implementation.
      void setXML(java.lang.String xmlStirng)
      Sets the string which includes the contract XML.
      void setXMLEntityPath(java.lang.String path)
      Sets the XML entity path.
      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, getResources, 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, getResources, 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

      • ContractCreateCmdImpl

        public ContractCreateCmdImpl()
        Constructor for ContractCreateCmdImpl.
    • Method Detail

      • getContractId

        public java.lang.Long getContractId()
        Returns the ID of the newly created contract.
        Specified by:
        getContractId in interface ContractCreateCmd
        Returns:
        the ID of the newly created contract
      • performExecute

        public void performExecute()
                            throws com.ibm.commerce.exception.ECException
        Executes the business logic of this command implementation. Creates the contract based on the information in contract XML file.
        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:
        CreateXSDContractCmdImpl.performExecute(), CreateContractCmdImpl.performExecute(), AbstractECTargetableCommand.performExecute()
      • setLanguageId

        public void setLanguageId(java.lang.Integer langId)
        Sets the language ID.
        Specified by:
        setLanguageId in interface ContractCreateCmd
        Parameters:
        langId - the language ID
      • setRequestProperties

        public void setRequestProperties(org.w3c.dom.Document contractXML)
        Sets the contract XML instance Document object.
        Parameters:
        contractXML - the XML Document object which contains the contract.
      • 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 - the request properties The mandatory name-value pair is XMLString. The optional name-value pairs are XSD, validate, path. if the XSD parameter is set to true, it means the XML file is based on XSD. Otherwise it is dtd based. The default value for the XSD parameter is false. The validate parameter indicates if the XML parser will validate the XML file against XSD/dtd. true - validate, false - do not validate. The default value of the validate parameter is true. The path parameter specifies the path of the dtd or XML schema files. The default value of the path parameter is specified in WebSphere Commerce instance XML file.
        Throws:
        com.ibm.commerce.exception.ECApplicationException - Raised with message _ERR_MISSING_CMD_PARAMETER when the required url parameters is missing.
        See Also:
        ControllerCommand.setRequestProperties(TypedProperty)
      • setXML

        public void setXML(java.lang.String xmlStirng)
        Sets the string which includes the contract XML.
        Specified by:
        setXML in interface ContractCreateCmd
        Parameters:
        xmlStirng, - a contract XML string.
      • setXMLEntityPath

        public void setXMLEntityPath(java.lang.String path)
        Sets the XML entity path.
        Specified by:
        setXMLEntityPath in interface ContractCreateCmd
        Parameters:
        path - the path where it can find the dtd or XML Schema file(s)
      • validateParameters

        public void validateParameters()
                                throws com.ibm.commerce.exception.ECException
        Extracts and validates the input parameters of this command implementation. This method does the following checks 1. if the file and the dtd file can be found 2. if the XML file is valid 3. if the contract is in right state for this command. The contract should be either in Approved or Active state
        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_FILE_NOT_FOUND if the XML file or dtd file cannot be found. Raised with message _ERR_PARSE_XML_FILE if an error occurred when the XML parser parses the XML file. Raised with message _ERR_GENRIC_PARSE_XML_FILE if an IO error occurred. Raised with message _ERR_WRONG_CONTRACT_STATE if the contract is not in Draft state. Raised with message _ERR_VERSION_NUMBER_FORMAT if the contract version number format is incorrect. It should be numerical. Raised with message _ERR_MISSING_CONTRACT_NAME if the contract name is empty string in the XML file. Raised with message _ERR_MISSING_ACCOUNT_OWNER_ELEMENT if the account name is provided but not the AcocuntOwner element in the XML file. Raised with message _ERR_WRONG_ACCOUNT_OWNER_INFO if an error occurred when retrieving the account owner ID. Raised with message _ERR_ACCOUNT_DOES_NOT_EXIST if an error occurred when retrieving the account based the account name and account owner ID. Raised with message _ERR_WRONG_CONTRACT_OWNER_MEMBER_INFO if an error occurred when retrieving the contract owner ID. Raised with message _ERR_DUPLICATED_CONTRACT_NAME if there is a contract existed with the same name, owner, and origin. Raised with message _ERR_CONTRACT_REFERENCE_NUMBER_NOT_REQUIRED if the contract referenceNumber attribute is provided in the XML file for Contract element.
        See Also:
        AbstractECTargetableCommand.validateParameters()