/** * Executes an expression contained within the profile definition. * * @param expression The expression to execute. * @param expressionType The type of expression; init, update, result. Provides additional context if expression execution fails. * @return The result of executing the expression. */ private Object execute(String expression, String expressionType) { return execute(expression, Collections.emptyMap(), expressionType); }
/** * Executes an expression contained within the profile definition. * * @param expression The expression to execute. * @param transientState Additional transient state provided to the expression. * @param expressionType The type of expression; init, update, result. Provides additional context if expression execution fails. * @return The result of executing the expression. */ private Object execute(String expression, Map<String, Object> transientState, String expressionType) { Object result = null; List<Object> allResults = execute(Collections.singletonList(expression), transientState, expressionType); if(allResults.size() > 0) { result = allResults.get(0); } return result; }