Interface StorageOperation
-
- All Superinterfaces:
AbstractOperation
,PluginDataContainer
,UserAttributeContainer
public interface StorageOperation extends AbstractOperation
This interface provides the means to store anOperation
which is supported by not inheriting any attributes from a parent parameter (in contrast to the interfaceOperation
. Only the information on whether an attribute is to be inherited is available but not the value itself since this is not needed for storing. This applies to all methods of this interface, irrespective of the documentation of the methods.- Author:
- Ulrich Kreher
- See Also:
Operation
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description List<String>
getClassPath()
Gets the part of the classpath that is added by this operation to the one of the parent attribute.StorageActivityConfiguration
getConfiguration()
Gets the configuration of this operation that corresponds to the (merged) configuration description of this operation.StorageConfigurationDescription
getConfigurationDescription()
Gets the configuration description for this operation.String
getExecutableComponentName()
Gets theExecutableComponentDescription
this operation belongs to.Map<String,StorageActivityModelParameter>
getParameters(ActivityConstants.AccessType accessType)
Gets the parameters of the designated access type of this operation.Map<String,StorageParameterTemplate>
getParameterTemplates()
Gets parameter templates that are defined for this operation and its child entities or that are changed with respect to the ones of the parent entity.StorageActivityConfiguration
getTestConfiguration()
Gets the test configuration of this operation that corresponds to the configuration description of this operation.void
setClassPath(List<String> classPath)
Sets the part of the classpath that is added by this operation to the one of the parent attribute.void
setConfiguration(StorageActivityConfiguration configuration)
Sets the configuration of this operation to the designated one.void
setConfigurationDescription(StorageConfigurationDescription description)
Sets the configuration description for this operation.void
setParameters(ActivityConstants.AccessType accessType, Collection<StorageActivityModelParameter> parameters)
Sets all the parameters of the designated access type of this operation.void
setParameterTemplates(Map<String,StorageParameterTemplate> parameterTemplates)
Sets parameter templates that are defined for this operation and its child entities.void
setTestConfiguration(StorageActivityConfiguration testConfiguration)
Sets the test configuration of this operation to the designated one.-
Methods inherited from interface de.aristaflow.adept2.model.activitymodel.AbstractOperation
areExecutionControlPropertiesInterhited, getClassLoaderUsage, getDescription, getDeveloperDescription, getExecutionControlProperties, getGUIContextID, getIconID, getImplementationClass, getLicenceInformation, getName, getParameterChangePolicy, getRevision, getStaffAssignmentRule, getState, getSystemComponent, isClassLoaderUsageInherited, isDeveloperDescriptionInherited, isGUIContextIDInherited, isIconIDInherited, isImplementationClassInherited, isLicenceInformationInherited, isSystemComponentInherited, removeOwnClassLoaderUsage, removeOwnDeveloperDescription, removeOwnExecutionControlProperties, removeOwnGUIContextID, removeOwnIconID, removeOwnImplementationClass, removeOwnLicenceInformation, removeOwnSystemComponent, setClassLoaderUsage, setDescription, setDeveloperDescription, setExecutionControlProperties, setGUIContextID, setIconID, setImplementationClass, setLicenceInformation, setName, setParameterChangePolicy, setStaffAssignmentRule, setSupportsTestExecutionOnly, setSupportsViewOnly, setSystemComponent, supportsTestExecution, supportsViewOnly
-
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 Detail
-
getExecutableComponentName
String getExecutableComponentName()
Gets theExecutableComponentDescription
this operation belongs to.- Returns:
- The
ExecutableComponentDescription
this operation belongs to.
-
getClassPath
List<String> getClassPath()
Gets the part of the classpath that is added by this operation to the one of the parent attribute. In case this operation does not supplement the classpath this will be an empty list.- Returns:
- The part of the classpath that is contributed by this operation. This is appended to the classpath of the parent entity and thus forms the complete classpath.
-
getConfigurationDescription
StorageConfigurationDescription getConfigurationDescription()
Gets the configuration description for this operation. This may change the configuration description of the corresponding executable component description or add new entries. Note that removal of an inherited entry is not possible and has to be simulated by providing a null value as configuration value.This attribute overrides and merges with the corresponding
parent attribute
. That is, the attribute contains only entries that are changed with respect to the ones of the parent attribute whereas the entries are identified by their name.- Returns:
- The description for all configuration values of this operation, that is, the name of the configuration entries, their type and whether they are mandatory.
-
getConfiguration
StorageActivityConfiguration getConfiguration()
Gets the configuration of this operation that corresponds to the (merged) configuration description of this operation. These configuration values are provided as defaults for this operation. They may be overridden in child entities (unless fixed) and not all configuration values need to be provided yet. Configuration values may also be provided via an input parameter (which has to exist for this operation then) or from a process configuration (which is needed when modelling).- Returns:
- The configuration values set for this operation based on the configuration description. This does not necessarily contain all values since they can still be set when modelling. It may also contain more in case it provides values for the configuration description of a parent entity.
-
getTestConfiguration
StorageActivityConfiguration getTestConfiguration()
Gets the test configuration of this operation that corresponds to the configuration description of this operation. These configuration values only apply when the operation is executed in test mode, that is the operation is provided this configuration instead of the normal configuration.This test configuration overrides and merges with the
normal configuration
(at runtime). That is, the attribute contains only entries that are changed with respect to the normal configuration as well as the configurations (test and normal) of the parent entities whereas the entries are identified by their name. Note that the test configuration allows to override fixed values of the normal configuration.- Returns:
- The additional and modified configuration values set for the test mode of this operation based on the configuration description.
-
getParameters
Map<String,StorageActivityModelParameter> getParameters(ActivityConstants.AccessType accessType)
Gets the parameters of the designated access type of this operation. These make up the interface of the operation. The returned map allows for easy storage of the parameters; it maps from parameter name to the corresponding object.
Parameters are identified by the access type, for instance input or output parameter, and their name.The parameters need not be based on parameter templates of this operation or the corresponding executable component description.
- Parameters:
accessType
- The access type of the parameters to be retrieved (only values inActivityConstants.AccessType.activityRelatedValues()
are allowed).- Returns:
- The parameters of this operation for the designated access type (mapped from parameter name to the corresponding parameter). If this operation does not have parameters of the designated type or they are not defined yet (since they may be added later), an empty map will be returned.
-
getParameterTemplates
Map<String,StorageParameterTemplate> getParameterTemplates()
Gets parameter templates that are defined for this operation and its child entities or that are changed with respect to the ones of the parent entity.This attribute overrides and merges with the corresponding parent attribute.
- Returns:
- Templates for parameters (mapped from parameter template name to the corresponding parameter template) that may be added to child entities of this operation.
-
setClassPath
void setClassPath(List<String> classPath)
Sets the part of the classpath that is added by this operation to the one of the parent attribute. Use null in case this operation does not supplement the classpath of the parent entity.- Parameters:
classPath
- The part of the classpath that is contributed by this operation. This is appended to the classpath of the parent entity and thus forms the complete classpath.
-
setConfigurationDescription
void setConfigurationDescription(StorageConfigurationDescription description)
Sets the configuration description for this operation. This may change the configuration description of the corresponding executable component description or add new entries. Only these need to be provided in the designated configuration description. Note that removal of an inherited entry is not possible and has to be simulated by providing a null value as configuration value.The configuration description has to be set as a whole; to add or modify single entries, retrieve the complete description from this operation, add or modify the entry and provide the complete description again to this method. Use
null
to remove the configuration description from this operation and inherit the configuration description of the parent entity without any changes.When changing the configuration description one has to check for conflicts that may occur in the configuration description of the configuration sets this operation is part of.
This attribute overrides and merges with the corresponding parent attribute. That is, the attribute contains only entries that are changed with respect to the ones of the parent attribute whereas the entries are identified by their name.
- Parameters:
description
- The description for all configuration values of this operation, that is, the name of the configuration entries, their type and whether they are mandatory. Usenull
to remove the configuration description from this operation, that is, it will be inherited from the parent entity again.
-
setConfiguration
void setConfiguration(StorageActivityConfiguration configuration)
Sets the configuration of this operation to the designated one. The provided configuration has to correspond to the (merged) configuration description of this operation and its executable component description, that is the values have to have appropriate configuration entries. Not all configuration entries need to have a value yet except the fixed ones. The values may also be retrieved from process parameters or the process configuration (determined when modelling).The configuration has to be set as a whole; to add or modify single values, retrieve the complete configuration, add or modify the value and provide the complete configuration again to this method. Use
null
to remove the configuration from this operation, that is, it will be inherited from the parent entity again.This attribute overrides and merges with the corresponding parent attribute. That is, the attribute contains only new entries and entries that are changed with respect to the ones of the parent attribute whereas the entries are identified by their name.
- Parameters:
configuration
- The configuration values set for this operation based on the configuration description. This does not necessarily contain all values since they can still be set when modelling. It may also contain more in case it provides values for the configuration description of a parent entity. Usenull
to remove the configuration from this operation, that is, it will be inherited from the parent entity again.
-
setTestConfiguration
void setTestConfiguration(StorageActivityConfiguration testConfiguration)
Sets the test configuration of this operation to the designated one. The provided configuration has to correspond to the (merged) configuration description of this operation and its executable component description, that is the values have to have appropriate configuration entries.
These configuration values only apply when the operation is executed in test mode, that is the operation is provided this configuration instead of the normal configuration. This test configuration is merged with the normal configuration. Therefore it only contains new entries and entries that are changed with respect to the normal configuration (and the test and the normal configuration of the parent entity). Note that the test configuration allows to override fixed values of the normal configuration. Clearly in case of an empty test configuration the normal configuration will be used in test mode. The values may also be retrieved from process parameters or the process configuration (determined when modelling).The configuration has to be set as a whole; to add or modify single values, retrieve the complete configuration, add or modify the value and provide the complete configuration again to this method. Use
null
to remove the test configuration from this operation, that is, it will be inherited from the parent entity again.- Parameters:
testConfiguration
- The configuration values set for the test mode of this operation based on the configuration description. This does not necessarily contain all values since they can still be set when modelling or taken from the normal configuration. Usenull
to remove the test configuration from this operation, that is, it will be inherited from the parent entity again.
-
setParameters
void setParameters(ActivityConstants.AccessType accessType, Collection<StorageActivityModelParameter> parameters)
Sets all the parameters of the designated access type of this operation. These make up the interface of the operation.
Parameters are identified by the access type, for instance input or output parameter, and their name.The parameters need not be based on parameter templates of this operation or the corresponding executable component description.
- Parameters:
accessType
- The access type of the parameters to be retrieved (only values inActivityConstants.AccessType.activityRelatedValues()
are allowed).parameters
- The parameters of this operation for the designated access type. If this operation does not have parameters of the designated access type providenull
.
-
setParameterTemplates
void setParameterTemplates(Map<String,StorageParameterTemplate> parameterTemplates)
Sets parameter templates that are defined for this operation and its child entities. This may change the parameter templates of the corresponding executable component description or add new parameter templates; removal is not allowed. If you need removal, add a new template and override the description of the one to be removed stating that it should not be used.When setting the parameter templates the whole collection has to be set; to add or modify single parameter templates retrieve the complete templates from this operation, add or modify the template and provide the collection of templates again to this method. Use
null
for removing all parameter templates of this operation, that is, the parameter templates will be inherited from the parent entity again.
It will not be allowed to set parameter templates for this operation if the parameter change policy of this operation does not allow to add or change real parameters (ParameterChangePolicy.ADD_VIRTUAL
orParameterChangePolicy.FIXED
); onlynull
will be accepted. It will not make sense to set parameter templates if the child entities are not allowed to add or change parameters.This attribute overrides and merges with the corresponding parent attribute. That is, the collection contains only new parameter templates and parameter templates that are changed with respect to the ones of the parent attribute whereas they entries are identified by their template name.
- Parameters:
parameterTemplates
- A collection containing all parameter templates that are defined for this operation.
-
-