public final class EvaluationContext extends ELContext
| Constructor and Description |
|---|
EvaluationContext(ELContext elContext,
FunctionMapper fnMapper,
VariableMapper varMapper) |
| Modifier and Type | Method and Description |
|---|---|
void |
addEvaluationListener(EvaluationListener listener)
Registers an evaluation listener to the ELContext.
|
Object |
convertToType(Object obj,
Class<?> targetType)
Converts an object to a specific type.
|
void |
enterLambdaScope(Map<String,Object> args)
Installs a Lambda argument map, in preparation for the evaluation of a Lambda expression.
|
void |
exitLambdaScope()
Exits the Lambda expression evaluation.
|
Object |
getContext(Class key)
Returns the context object associated with the given key.
|
ELContext |
getELContext() |
ELResolver |
getELResolver()
Retrieves the
ELResolver associated with this context. |
List<EvaluationListener> |
getEvaluationListeners()
Returns the list of registered evaluation listeners.
|
FunctionMapper |
getFunctionMapper()
Retrieves the
FunctionMapper associated with this ELContext. |
ImportHandler |
getImportHandler()
Retrieves the
ImportHandler associated with this ELContext. |
Object |
getLambdaArgument(String arg)
Retrieves the Lambda argument associated with a formal parameter.
|
VariableMapper |
getVariableMapper()
Retrieves the
VariableMapper associated with this ELContext. |
boolean |
isLambdaArgument(String arg)
Inquires if the name is a LambdaArgument
|
boolean |
isPropertyResolved()
Returns whether an
ELResolver has successfully resolved a given (base, property) pair. |
void |
notifyAfterEvaluation(String expr)
Notifies the listeners after an Jakarta Expression Language expression is evaluated
|
void |
notifyBeforeEvaluation(String expr)
Notifies the listeners before an Jakarta Expression Language expression is evaluated
|
void |
notifyPropertyResolved(Object base,
Object property)
Notifies the listeners when the (base, property) pair is resolved
|
void |
putContext(Class key,
Object contextObject)
Associates a context object with this
ELContext. |
void |
setPropertyResolved(boolean resolved)
Called to indicate that a
ELResolver has successfully resolved a given (base, property) pair. |
void |
setPropertyResolved(Object base,
Object property)
Called to indicate that a
ELResolver has successfully resolved a given (base, property) pair and to
notify the EvaluationListeners. |
public EvaluationContext(ELContext elContext, FunctionMapper fnMapper, VariableMapper varMapper)
public ELContext getELContext()
public FunctionMapper getFunctionMapper()
ELContextFunctionMapper associated with this ELContext.getFunctionMapper in class ELContextpublic VariableMapper getVariableMapper()
ELContextVariableMapper associated with this ELContext.getVariableMapper in class ELContextpublic Object getContext(Class key)
ELContext
The ELContext maintains a collection of context objects relevant to the evaluation of an expression.
These context objects are used by ELResolvers. This method is used to retrieve the context with the
given key from the collection.
By convention, the object returned will be of the type specified by the key. However, this is not
required and the key is used strictly as a unique identifier.
getContext in class ELContextkey - The unique identifier that was used to associate the context object with this ELContext.public ELResolver getELResolver()
ELContextELResolver associated with this context.
The ELContext maintains a reference to the ELResolver that will be consulted to resolve
variables and properties during an expression evaluation. This method retrieves the reference to the resolver.
Once an ELContext is constructed, the reference to the ELResolver associated with the
context cannot be changed.
getELResolver in class ELContextpublic boolean isPropertyResolved()
ELContextELResolver has successfully resolved a given (base, property) pair.
The CompositeELResolver checks this property to determine whether it should consider or skip other component
resolvers.
isPropertyResolved in class ELContextCompositeELResolverpublic void putContext(Class key, Object contextObject)
ELContextELContext.
The ELContext maintains a collection of context objects relevant to the evaluation of an expression.
These context objects are used by ELResolvers. This method is used to add a context object to that
collection.
By convention, the contextObject will be of the type specified by the key. However, this is
not required and the key is used strictly as a unique identifier.
putContext in class ELContextkey - The key used by an @{link ELResolver} to identify this context object.contextObject - The context object to add to the collection.public void setPropertyResolved(boolean resolved)
ELContextELResolver has successfully resolved a given (base, property) pair. Use
ELContext.setPropertyResolved(Object, Object) if resolved is true and to notify EvaluationListeners.
The CompositeELResolver checks this property to determine whether it should consider or skip other component
resolvers.
setPropertyResolved in class ELContextresolved - true if the property has been resolved, or false if not.CompositeELResolverpublic void setPropertyResolved(Object base, Object property)
ELContextELResolver has successfully resolved a given (base, property) pair and to
notify the EvaluationListeners.
The CompositeELResolver checks this property to determine whether it should consider or skip other component
resolvers.
setPropertyResolved in class ELContextbase - The base objectproperty - The property objectCompositeELResolverpublic void addEvaluationListener(EvaluationListener listener)
ELContextaddEvaluationListener in class ELContextlistener - The listener to be added.public List<EvaluationListener> getEvaluationListeners()
ELContextgetEvaluationListeners in class ELContextpublic void notifyBeforeEvaluation(String expr)
ELContextnotifyBeforeEvaluation in class ELContextexpr - The Jakarta Expression Language expression string to be evaluatedpublic void notifyAfterEvaluation(String expr)
ELContextnotifyAfterEvaluation in class ELContextexpr - The Jakarta Expression Language expression string that has been evaluatedpublic void notifyPropertyResolved(Object base, Object property)
ELContextnotifyPropertyResolved in class ELContextbase - The base objectproperty - The property Objectpublic boolean isLambdaArgument(String arg)
ELContextisLambdaArgument in class ELContextarg - A possible Lambda formal parameter namepublic Object getLambdaArgument(String arg)
ELContextgetLambdaArgument in class ELContextarg - The formal parameter for the Lambda argumentpublic void enterLambdaScope(Map<String,Object> args)
ELContextenterLambdaScope in class ELContextargs - The Lambda arguments mappublic void exitLambdaScope()
ELContextexitLambdaScope in class ELContextpublic Object convertToType(Object obj, Class<?> targetType)
ELContextELResolver handles this conversion,
it is used. Otherwise the standard coercions is applied.
An ELException is thrown if an error occurs during the conversion.
convertToType in class ELContextobj - The object to convert.targetType - The target type for the conversion.targetTypepublic ImportHandler getImportHandler()
ELContextImportHandler associated with this ELContext.getImportHandler in class ELContextCopyright © 2017–2019 Eclipse Foundation. All rights reserved.