| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface ExpressionEvaluator
Provides evaluation of expression language statements against a given context
Used within the UI framework to allow conditional logic to be configured through the XML which can alter the values of component properties
| Field Summary | |
|---|---|
| static String | EMBEDDED_PROPERTY_NAME_ADD_INDICATORIndicator that can be added to a property name to indicate the expression result should be added to the property (assumed to be a collection) instead of replaced | 
| Method Summary | |
|---|---|
|  boolean | containsElPlaceholder(String value)Indicates whether or not the given string contains the el placeholder (begin and end delimiters) | 
|  Object | evaluateExpression(Map<String,Object> evaluationParameters,
                                     String expression)Evaluates the given el expression against the content object and parameters, and returns the result of the evaluation | 
|  void | evaluateExpressionsOnConfigurable(View view,
                                                                   UifDictionaryBean expressionConfigurable,
                                                                   Map<String,Object> evaluationParameters)Evaluates any el expressions that are found as a string property value for the object | 
|  String | evaluateExpressionTemplate(Map<String,Object> evaluationParameters,
                                                     String expressionTemplate)Evaluates the given expression template string against the context object and map of parameters | 
|  void | evaluatePropertyExpression(View view,
                                                     Map<String,Object> evaluationParameters,
                                                     UifDictionaryBean expressionConfigurable,
                                                     String propertyName,
                                                     boolean removeExpression)Evaluates the configured expression for the given property name (if not exists) on the given configurable | 
|  void | initializeEvaluationContext(Object contextObject)Initializes the expression context for the given expression context object | 
|  String | replaceBindingPrefixes(View view,
                                             Object object,
                                             String expression)Adjusts the property expressions for a given object | 
| Field Detail | 
|---|
static final String EMBEDDED_PROPERTY_NAME_ADD_INDICATOR
| Method Detail | 
|---|
void initializeEvaluationContext(Object contextObject)
The object given here will form the default context for expression terms (terms without any variable prefix)
contextObject - instance of an Object
void evaluateExpressionsOnConfigurable(View view,
                                       UifDictionaryBean expressionConfigurable,
                                       Map<String,Object> evaluationParameters)
 Using reflection the properties for the object are retrieved and if of
 String type the corresponding value is retrieved. If the
 value is not empty and contains the el placeholder see
 containsElPlaceholder(String) then the expression is evaluated
 using the given context object and parameters. The evaluated string is
 then set as the new property value, or in the case of a template
 (expression contained within a literal string), the expression part is
 replaced in the property value.
 
 In addition to evaluating any property expressions, any configured
 PropertyReplacer for the object are also evaluated and if a
 match occurs those property replacements are made
 
view - view instance being renderedexpressionConfigurable - object whose properties should be checked for expressions
 and evaluatedevaluationParameters - map of parameters that may appear in expressions, the map
 key gives the parameter name that may appear in the expression, and the map value is the object that expression
 should evaluate against when that name is found
String evaluateExpressionTemplate(Map<String,Object> evaluationParameters,
                                  String expressionTemplate)
 If the template string contains one or more el placeholders (see
 containsElPlaceholder(String)), the expression contained within
 the placeholder will be evaluated and the corresponding value will be
 substituted back into the property value where the placeholder occurred.
 If no placeholders are found, the string will be returned unchanged
 
evaluationParameters - map of parameters that may appear in expressions, the map
 key gives the parameter name that may appear in the expression, and the map value is the object that expression
 should evaluate against when that name is foundexpressionTemplate - string that should be evaluated for el expressions
void evaluatePropertyExpression(View view,
                                Map<String,Object> evaluationParameters,
                                UifDictionaryBean expressionConfigurable,
                                String propertyName,
                                boolean removeExpression)
view - view instance the configurable is associated with, used to adjust binding prefixesevaluationParameters - map that will be exposed as EL parametersexpressionConfigurable - configurable object to pull and evaluate the expression onpropertyName - name of the property whose expression should be evaluatedremoveExpression - boolean that indicates whether the expression should be removed after evaluation
Object evaluateExpression(Map<String,Object> evaluationParameters,
                          String expression)
The given expression string is assumed to be one el expression and should not contain the el placeholders. The returned result depends on the evaluation and what type is returns, for instance a boolean will be return for a boolean expression, or a string for string expression
evaluationParameters - map of parameters that may appear in expressions, the map
 key gives the parameter name that may appear in the expression, and the map value is the object that expression
 should evaluate against when that name is foundexpression - el expression to evaluate
boolean containsElPlaceholder(String value)
value - String to check for contained placeholders
UifConstants.EL_PLACEHOLDER_PREFIX, 
UifConstants.EL_PLACEHOLDER_SUFFIX
String replaceBindingPrefixes(View view,
                              Object object,
                              String expression)
 The UifConstants.NO_BIND_ADJUST_PREFIX  prefix will be removed
 as this is a placeholder indicating that the property is directly on the form.
 The UifConstants.FIELD_PATH_BIND_ADJUST_PREFIX prefix will be replaced by
 the object's field path - this is only applicable to DataFields. The
 UifConstants.DEFAULT_PATH_BIND_ADJUST_PREFIX prefix will be replaced
 by the view's default path if it is set.
 
view - the parent view of the objectobject - Object to adjust property expressions onexpression - The expression to adjust
| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||