Package org.apache.commons.jexl3
Class ObjectContext<T>
- java.lang.Object
-
- org.apache.commons.jexl3.ObjectContext<T>
-
- Type Parameters:
T
- the wrapped object type to use
- All Implemented Interfaces:
JexlContext
,JexlContext.NamespaceResolver
public class ObjectContext<T> extends java.lang.Object implements JexlContext, JexlContext.NamespaceResolver
Wraps an Object as a JEXL context and NamespaceResolver.- Since:
- 3.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.commons.jexl3.JexlContext
JexlContext.AnnotationProcessor, JexlContext.CancellationHandle, JexlContext.ClassNameResolver, JexlContext.ModuleProcessor, JexlContext.NamespaceFunctor, JexlContext.NamespaceResolver, JexlContext.OptionsHandle, JexlContext.PragmaProcessor, JexlContext.ThreadLocal
-
-
Field Summary
Fields Modifier and Type Field Description private JexlEngine
jexl
The property solving jexl engine.private T
object
The object serving as context provider.
-
Constructor Summary
Constructors Constructor Description ObjectContext(JexlEngine engine, T wrapped)
Creates a new ObjectContext.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
get(java.lang.String name)
Gets the value of a variable.protected JexlEngine
getJexl()
protected T
getObject()
boolean
has(java.lang.String name)
Checks whether a variable is defined in this context.java.lang.Object
resolveNamespace(java.lang.String name)
Resolves a namespace by its name.void
set(java.lang.String name, java.lang.Object value)
Sets the value of a variable.
-
-
-
Field Detail
-
jexl
private final JexlEngine jexl
The property solving jexl engine.
-
object
private final T object
The object serving as context provider.
-
-
Constructor Detail
-
ObjectContext
public ObjectContext(JexlEngine engine, T wrapped)
Creates a new ObjectContext.- Parameters:
engine
- the jexl engine to use to solve propertieswrapped
- the object to wrap in this context
-
-
Method Detail
-
get
public java.lang.Object get(java.lang.String name)
Description copied from interface:JexlContext
Gets the value of a variable.- Specified by:
get
in interfaceJexlContext
- Parameters:
name
- the variable's name- Returns:
- the value
-
getJexl
protected JexlEngine getJexl()
- Returns:
- the Jexl engine
-
getObject
protected T getObject()
- Returns:
- the object exposed by this context
-
has
public boolean has(java.lang.String name)
Description copied from interface:JexlContext
Checks whether a variable is defined in this context.A variable may be defined with a null value; this method checks whether the value is null or if the variable is undefined.
- Specified by:
has
in interfaceJexlContext
- Parameters:
name
- the variable's name- Returns:
- true if it exists, false otherwise
-
resolveNamespace
public java.lang.Object resolveNamespace(java.lang.String name)
Description copied from interface:JexlContext.NamespaceResolver
Resolves a namespace by its name.- Specified by:
resolveNamespace
in interfaceJexlContext.NamespaceResolver
- Parameters:
name
- the name- Returns:
- the namespace object
-
set
public void set(java.lang.String name, java.lang.Object value)
Description copied from interface:JexlContext
Sets the value of a variable.- Specified by:
set
in interfaceJexlContext
- Parameters:
name
- the variable's namevalue
- the variable's value
-
-