Interface AbstractActivityModelParameter

All Superinterfaces:
PluginDataContainer, UserAttributeContainer
All Known Subinterfaces:
ActivityModelParameter, StorageActivityModelParameter

public interface AbstractActivityModelParameter extends UserAttributeContainer, PluginDataContainer
This interface unifies the methods of an ActivityModelParameter used with inheritance (in the GUI) as well as for storage.
Author:
Ulrich Kreher
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the ADEPT2 data type of the parameter.
    Gets the string representation of the default value for this (optional, non-virtual input) parameter.
    Returns the description of the parameter for the end user.
    Gets a description of this activity model parameter for the developer/the administrator.
    Returns the ID of the identifier which describes the type of the parameter in detail, or the constant ProcessConstants.UNIVERSAL_IDENTIFIER_ID.
    Returns the name of the parameter.
    Returns the name of the user-defined type, if the parameter is of type user-defined (cf getDataType()).
    boolean
    Gets whether this activity model parameter inherits the data type from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Gets whether this activity model parameter inherits the default value from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Gets whether this activity model parameter inherits the description from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Gets whether this activity model parameter inherits the developer description from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Gets whether this (optional, non-virtual output) parameter represents a failure parameter.
    boolean
    Gets whether this activity model parameter inherits the failure flag from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Gets whether this activity model parameter inherits the identifier ID from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Returns true, if the parameter is optional.
    boolean
    Gets whether this activity model parameter inherits the optional flag from its parent (which depends on the entity this parameter is retrieved from).
    boolean
    Returns true, if the parameter is virtual.
    boolean
    Gets whether this activity model parameter inherits the virtual flag from its parent (which depends on the entity this parameter is retrieved from).
    void
    Removes the data type of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the default value of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the description of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the developer description of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the failure flag of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the identifier ID of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the optional flag of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Removes the virtual flag of this activity model parameter and inherits the value from its parent again (if this exists).
    void
    Sets the data type of this activity model parameter and the user-defined type name.
    void
    Sets the string representation of the default value for this activity model parameter.
    void
    setDescription(String description)
    Sets a description for this activity model parameter for usage in the process model.
    void
    setDeveloperDescription(String developerDescription)
    Sets a description of this activity model parameter for the developer/the administrator.
    void
    setFailure(boolean failure)
    Sets whether the parameter is a failure parameter.
    void
    setIdentifierID(UUID identifierID)
    Sets the ID of the identifier which describes the type of the parameter in detail.
    void
    Sets the name of this activity model parameter.
    void
    setOptional(boolean optional)
    Sets whether the parameter is optional and therefore may be null at runtime.
    void
    setVirtual(boolean virtual)
    Sets whether the parameter is virtual.

    Methods inherited from interface de.aristaflow.adept2.model.common.PluginDataContainer

    getPluginData, getPluginDatas, getSupportedPlugins

    Methods inherited from interface de.aristaflow.adept2.model.common.UserAttributeContainer

    getUserAttributes, getUserAttributeValue, removeUserAttributeValue, setUserAttributeValue
  • Method Details

    • getName

      String getName()
      Returns the name of the parameter. Depending on the context, this may be the parameter of an activity template, activity or process template.

      The name of a parameter is unique within its data access scope (e.g. READ).

      Uses:

      • display purposes during modelling and plug and play
      • as default for data element names during plug and play
      • parameter matching in the execution environments, e.g. find the right parameter in a signature by using this name
      Returns:
      The parameter name.
    • getDescription

      String getDescription()
      Returns the description of the parameter for the end user.

      Uses:

      • display purposes for the end user.
      Returns:
      The description of the parameter for the end user.
    • getDeveloperDescription

      String getDeveloperDescription()
      Gets a description of this activity model parameter for the developer/the administrator.

      This attribute overrides the corresponding attribute from the parent activity model parameter (which depends on the entity this parameter is retrieved from).

      Returns:
      A description of this activity model parameter for the developer/administrator. This description is not propagated to the process and is only part of the activity model.
    • getDataType

      Returns the ADEPT2 data type of the parameter.

      Uses:

      • find matching data elements during plug and play
      • matching of method signatures during execution
      • finding the right data type, e.g. in a generated form (execution)
      Returns:
      The ADEPT2 data type of the parameter.
    • getDefaultValue

      String getDefaultValue()
      Gets the string representation of the default value for this (optional, non-virtual input) parameter. This will be provided to the execution environment in case the corresponding data element is set to null.
      The string has to conform to the strings used in the configuration for arbitrary types, that is it needs to be a valid representation for the data type of this parameter.
      Returns:
      The string representation of the default value for this (optional input) parameter that will be provided to the execution environment in case the corresponding data element is set to null.
    • getUDTName

      String getUDTName()
      Returns the name of the user-defined type, if the parameter is of type user-defined (cf getDataType()). This value might be used to further describe the data type, but will be interpreted by the corresponding runtime only.

      If the parameter is not user-defined, the method will return null.

      Uses:

      • find matching data elements during plug and play
      • find possible user defined functions
      Also see for UDTValue and ProcessConstants.AdeptDataType.USERDEFINED.
      Returns:
      The name of the user defined type, or null.
    • getIdentifierID

      UUID getIdentifierID()
      Returns the ID of the identifier which describes the type of the parameter in detail, or the constant ProcessConstants.UNIVERSAL_IDENTIFIER_ID.

      Uses:

      • modelling / plug and play
      • future use: check if data values correspond to the syntax described by the identifier.

      The data type long allows to change the name of the identifier. When importing/exporting the ID has to be mapped to the corresponding name since the ID may be already in use by another identifier on the target system. See Identifier for further detail.

      See the class description for further information.

      Returns:
      The ID of the identifier of this parameter, or the constant UNIVERSAL_IDENTIFIER_ID.
    • isOptional

      boolean isOptional()
      Returns true, if the parameter is optional.

      In case the parameter is an input parameter, the activity does not require the data of this parameter, but may use the data if it is available.
      In case of an output parameter, the activity might return the value, but is not required to do so. If there is no data returned, the attached data element will not be written.

      Uses:

      • modelling processes for checking data flows
      • execution for determining valid input and output data

      See the class description for further information.

      Returns:
      True, if the parameter is optional.
    • isVirtual

      boolean isVirtual()
      Returns true, if the parameter is virtual. A virtual parameter may not be a failure parameter and may not have a default value.

      Uses:

      • modelling / plug and play

      See the class description for further information.

      Returns:
      True, if the parameter is virtual.
    • isFailure

      boolean isFailure()
      Gets whether this (optional, non-virtual output) parameter represents a failure parameter. An execution environment allowing to switch between throwing an exception (failing the activity) or setting the information as output parameter needs to look for an appropriate output parameter (name) in the provided ActivityInstance.
      Returns:
      Whether this parameter represents a failure parameter and if it exists in the ActivityInstance provided to the execution environment, the activity should not fail but provide the necessary failure information as normal output value.
    • setName

      void setName(String name)
      Sets the name of this activity model parameter. This has to be unique with respect to the corresponding Operation and the access type of this parameter (IN or OUT). The name is used as identification of the parameter at runtime, comparable to the name of a parameter of a Java method.

      This must neither be null nor the empty string. The designated name must not exist for the executable component description.

      Parameters:
      name - The name of this activity model parameter (unique with respect to the Operation and the access type of this parameter). This must neither be null nor the empty string.
    • setDescription

      void setDescription(String description)
      Sets a description for this activity model parameter for usage in the process model. This describes the parameter and may be displayed in the application to the end-user, for instance in a form.

      This attribute overrides the corresponding parent attribute (if this exists).

      Parameters:
      description - A description for this activity model parameter for usage in the process model that may be displayed in applications like forms. Use the empty string to unset the description.
    • setDeveloperDescription

      void setDeveloperDescription(String developerDescription)
      Sets a description of this activity model parameter for the developer/the administrator.

      This attribute overrides the corresponding parent attribute (if this exists).

      Parameters:
      developerDescription - A description of this activity model parameter for the developer/the administrator. This description is not propagated to the process and is only part of the activity model. Use the empty string to unset the developer description for this entity.
    • setDataType

      void setDataType(ProcessConstants.AdeptDataType dataType, String udtName)
      Sets the data type of this activity model parameter and the user-defined type name. When changing the data type, the default value will be dropped since its string representation will not match to the new data type.
      The user-defined type name will only be interpreted in case of AdeptDataType.USERDEFINED.

      This attribute may not override the parent one. Therefore if this parameter has a parent and one tries to set the data type, an IllegalStateException will be thrown. Whether this parameter has a parent needs to be determined outside of this object.

      Parameters:
      dataType - The data type of this activity model parameter. This must not be null.
      udtName - The user-defined type name if this activity model parameter is of data type ProcessConstants.AdeptDataType.USERDEFINED.
      Throws:
      IllegalStateException - If this parameter has a parent and therefore the data type may not be changed, an IllegalStateException will be thrown.
    • setDefaultValue

      void setDefaultValue(String value)
      Sets the string representation of the default value for this activity model parameter. This default value does only apply to optional input parameters. The string has to conform to the strings used in the configuration for arbitrary types, that is it needs to be a valid representation for the data type of this parameter. If the designated string does not conform to the data type, an IllegalArgumentException will be thrown.
      Setting a default value is only allowed for a non-virtual input parameter.

      This attribute overrides the corresponding parent attribute (if this exists).

      Parameters:
      value - The string representation of the default value for the data type of this activity model parameter. Use null for no default value. However null is not allowed for overwriting parameters, that is setting the default value to null in child entities is not allowed.
    • setIdentifierID

      void setIdentifierID(UUID identifierID)
      Sets the ID of the identifier which describes the type of the parameter in detail. Use ProcessConstants.UNIVERSAL_IDENTIFIER_ID for an unknown identifier. Setting the identifier of a parameter may require changing its default value.

      This attribute may not override the parent one. Therefore if this parameter has a parent and one tries to set the attribute, an IllegalStateException will be thrown. Whether this parameter has a parent needs to be determined outside of this object.

      Parameters:
      identifierID - the ID of the identifier which describes the type of the parameter in detail; ProcessConstants.UNIVERSAL_IDENTIFIER_ID for an unknown identifier.
      Throws:
      IllegalStateException - If this parameter has a parent and therefore the identifier may not be changed, an IllegalStateException will be thrown.
    • setOptional

      void setOptional(boolean optional)
      Sets whether the parameter is optional and therefore may be null at runtime.

      This attribute overrides the corresponding parent attribute (if this exists). Overriding may apply both ways, that is, an optional parameter may become mandatory (non-optional), but also vice versa. However, setting a mandatory parameter to optional, requires setting a default value.

      Parameters:
      optional - Whether the parameter is optional and therefore may be null at runtime. Changing the parent attribute to optional requires setting a default value!
    • setVirtual

      void setVirtual(boolean virtual)
      Sets whether the parameter is virtual. A virtual parameter may not have a default value and may not be a failure parameter. Setting a parameter to virtual will remove its default value.

      This attribute may not override the parent one. Therefore if this parameter has a parent and one tries to set the attribute, an IllegalStateException will be thrown. Whether this parameter has a parent needs to be determined outside of this object.

      Parameters:
      virtual - Whether the parameter is virtual and therefore is not provided at runtime but rather represents a data flow outside of the system.
      Throws:
      IllegalStateException - If this parameter has a parent and therefore the virtual attribute may not be changed, an IllegalStateException will be thrown.
    • setFailure

      void setFailure(boolean failure)
      Sets whether the parameter is a failure parameter. A failure parameter represents an exception that may be provided as a normal output parameter at runtime. Additionally, it has to be an optional output parameter and may not be virtual.

      This attribute may not override the parent one. Therefore if this parameter has a parent and one tries to set the attribute, an IllegalStateException will be thrown. Whether this parameter has a parent needs to be determined outside of this object.

      Parameters:
      failure - Whether the parameter is a failure parameter and represents an exception that may either be an output parameter or fail the activity at runtime.
      Throws:
      IllegalStateException - If this parameter has a parent and therefore the failure attribute may not be changed, an IllegalStateException will be thrown.
    • isDescriptionInherited

      boolean isDescriptionInherited()
      Gets whether this activity model parameter inherits the description from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the description from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by getDescription().
    • removeOwnDescription

      void removeOwnDescription()
      Removes the description of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the description is already inherited.
    • isDeveloperDescriptionInherited

      boolean isDeveloperDescriptionInherited()
      Gets whether this activity model parameter inherits the developer description from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the developer description from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by getDeveloperDescription().
    • removeOwnDeveloperDescription

      void removeOwnDeveloperDescription()
      Removes the developer description of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the developer description is already inherited.
    • isDataTypeInherited

      boolean isDataTypeInherited()
      Gets whether this activity model parameter inherits the data type from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the data type from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by getDataType().
    • removeOwnDataType

      void removeOwnDataType()
      Removes the data type of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the data type is already inherited.
    • isDefaultValueInherited

      boolean isDefaultValueInherited()
      Gets whether this activity model parameter inherits the default value from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the default value from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by getDefaultValue().
    • removeOwnDefaultValue

      void removeOwnDefaultValue()
      Removes the default value of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the default value is already inherited.
    • isIdentifierIDInherited

      boolean isIdentifierIDInherited()
      Gets whether this activity model parameter inherits the identifier ID from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the identifier ID from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by getIdentifierID().
    • removeOwnIdentifierID

      void removeOwnIdentifierID()
      Removes the identifier ID of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the description is already inherited.
    • isOptionalInherited

      boolean isOptionalInherited()
      Gets whether this activity model parameter inherits the optional flag from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the optional flag from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by isOptional().
    • removeOwnOptional

      void removeOwnOptional()
      Removes the optional flag of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the optional flag is already inherited.
    • isVirtualInherited

      boolean isVirtualInherited()
      Gets whether this activity model parameter inherits the virtual flag from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the virtual flag from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by isVirtual().
    • removeOwnVirtual

      void removeOwnVirtual()
      Removes the virtual flag of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the virtual flag is already inherited.
    • isFailureInherited

      boolean isFailureInherited()
      Gets whether this activity model parameter inherits the failure flag from its parent (which depends on the entity this parameter is retrieved from). If it does not, it will override it with an own value.
      Returns:
      Whether this activity model parameter inherits the failure flag from its parent (which depends on the entity this parameter is retrieved from) or whether it overrides it with the value provided by isFailure().
    • removeOwnFailure

      void removeOwnFailure()
      Removes the failure flag of this activity model parameter and inherits the value from its parent again (if this exists).
      Calling this method will have no effects if the failure flag is already inherited.