Package org.bonitasoft.engine.expression
Class ParameterExpressionExecutorStrategy
- java.lang.Object
-
- org.bonitasoft.engine.expression.NonEmptyContentExpressionExecutorStrategy
-
- org.bonitasoft.engine.expression.ParameterExpressionExecutorStrategy
-
- All Implemented Interfaces:
ExpressionExecutorStrategy
public class ParameterExpressionExecutorStrategy extends NonEmptyContentExpressionExecutorStrategy
Retrieve a String parameter from the ParameterService. The content of the expression must be the parameter name, as a String. The dependency map must contain a value for 'processDefinitionId' key to identify the process definition context to evaluate the parameter.- Author:
- Zhao Na, Celine Souchet
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringPROCESS_DEFINITION_ID-
Fields inherited from interface org.bonitasoft.engine.expression.ExpressionExecutorStrategy
CONTAINER_ID_KEY, CONTAINER_TYPE_KEY, DEFINITION_ID, INTERPRETER_GROOVY, KIND_BUSINESS_DATA, KIND_BUSINESS_DATA_REFERENCE, KIND_BUSINESS_OBJECT_DAO, KIND_CONSTANT, KIND_CONTRACT_INPUT, KIND_DOCUMENT, KIND_DOCUMENT_LIST, KIND_ENGINE_CONSTANT, KIND_INPUT, KIND_JAVA_METHOD_CALL, KIND_LIST, KIND_PARAMETER, KIND_PATTERN, KIND_QUERY_BUSINESS_DATA, KIND_READ_ONLY_CONDITION_SCRIPT_GROOVY, KIND_READ_ONLY_SCRIPT_GROOVY, KIND_TRANSIENT_VARIABLE, KIND_VARIABLE, KIND_XPATH_READ, NO_DEPENDENCY_EXPRESSION_EVALUATION_ORDER, TYPE_BUSINESS_DATA, TYPE_BUSINESS_DATA_REFERENCE, TYPE_BUSINESS_OBJECT_DAO, TYPE_CONSTANT, TYPE_CONTRACT_INPUT, TYPE_DOCUMENT, TYPE_DOCUMENT_LIST, TYPE_ENGINE_CONSTANT, TYPE_INPUT, TYPE_JAVA_METHOD_CALL, TYPE_LIST, TYPE_PARAMETER, TYPE_PATTERN, TYPE_QUERY_BUSINESS_DATA, TYPE_READ_ONLY_CONDITION_SCRIPT, TYPE_READ_ONLY_SCRIPT, TYPE_TRANSIENT_VARIABLE, TYPE_VARIABLE, TYPE_XPATH_READ
-
-
Constructor Summary
Constructors Constructor Description ParameterExpressionExecutorStrategy(ParameterService parameterService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<java.lang.Object>evaluate(java.util.List<SExpression> expressions, java.util.Map<java.lang.String,java.lang.Object> context, java.util.Map<java.lang.Integer,java.lang.Object> resolvedExpressions, ContainerState containerState)java.lang.Objectevaluate(SExpression expression, java.util.Map<java.lang.String,java.lang.Object> context, java.util.Map<java.lang.Integer,java.lang.Object> resolvedExpressions, ContainerState containerState)ExpressionKindgetExpressionKind()booleanmustPutEvaluatedExpressionInContext()Should we put the evaluated expressions of this strategy in the evaluation context?voidvalidate(SExpression expression)Validate the expression, an exception is thrown it is invalid
-
-
-
Field Detail
-
PROCESS_DEFINITION_ID
public static final java.lang.String PROCESS_DEFINITION_ID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ParameterExpressionExecutorStrategy
public ParameterExpressionExecutorStrategy(ParameterService parameterService)
-
-
Method Detail
-
evaluate
public java.lang.Object evaluate(SExpression expression, java.util.Map<java.lang.String,java.lang.Object> context, java.util.Map<java.lang.Integer,java.lang.Object> resolvedExpressions, ContainerState containerState) throws SExpressionDependencyMissingException, SExpressionEvaluationException
- Parameters:
expression- the expression to evaluatecontext- map containing the result of the evaluation of dependencies and also informations about the context of evaluation given byExpressionExecutorStrategy.CONTAINER_ID_KEYandExpressionExecutorStrategy.CONTAINER_TYPE_KEY- Returns:
- the result of the evaluation of the expression of appropriate type
- Throws:
SExpressionDependencyMissingExceptionSExpressionEvaluationException
-
validate
public void validate(SExpression expression) throws SInvalidExpressionException
Description copied from interface:ExpressionExecutorStrategyValidate the expression, an exception is thrown it is invalid- Specified by:
validatein interfaceExpressionExecutorStrategy- Overrides:
validatein classNonEmptyContentExpressionExecutorStrategy- Parameters:
expression- the expression to validate- Throws:
SInvalidExpressionException- if the exception is invalid
-
getExpressionKind
public ExpressionKind getExpressionKind()
-
evaluate
public java.util.List<java.lang.Object> evaluate(java.util.List<SExpression> expressions, java.util.Map<java.lang.String,java.lang.Object> context, java.util.Map<java.lang.Integer,java.lang.Object> resolvedExpressions, ContainerState containerState) throws SExpressionEvaluationException, SExpressionDependencyMissingException
-
mustPutEvaluatedExpressionInContext
public boolean mustPutEvaluatedExpressionInContext()
Description copied from interface:ExpressionExecutorStrategyShould we put the evaluated expressions of this strategy in the evaluation context?
-
-