Class PropertyGetExecutor
- java.lang.Object
-
- org.apache.commons.jexl2.internal.AbstractExecutor
-
- org.apache.commons.jexl2.internal.AbstractExecutor.Get
-
- org.apache.commons.jexl2.internal.PropertyGetExecutor
-
- All Implemented Interfaces:
JexlPropertyGet
public final class PropertyGetExecutor extends AbstractExecutor.Get
Specialized executor to get a property from an object.- Since:
- 2.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.commons.jexl2.internal.AbstractExecutor
AbstractExecutor.Get, AbstractExecutor.Method, AbstractExecutor.Set
-
-
Field Summary
-
Fields inherited from class org.apache.commons.jexl2.internal.AbstractExecutor
method, objectClass, TRY_FAILED
-
-
Constructor Summary
Constructors Constructor Description PropertyGetExecutor(Introspector is, java.lang.Class<?> clazz, java.lang.String identifier)
Creates an instance by attempting discovery of the get method.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
execute(java.lang.Object o)
Gets the property value from an object.java.lang.Object
getTargetProperty()
Gets the property targeted by this executor.java.lang.Object
tryExecute(java.lang.Object o, java.lang.Object identifier)
Tries to reuse this executor, checking that it is compatible with the actual set of arguments.-
Methods inherited from class org.apache.commons.jexl2.internal.AbstractExecutor.Get
invoke, tryInvoke
-
Methods inherited from class org.apache.commons.jexl2.internal.AbstractExecutor
equals, equals, getMethod, getMethodName, getTargetClass, hashCode, isAlive, isCacheable, tryFailed
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.jexl2.introspection.JexlPropertyGet
isCacheable, tryFailed
-
-
-
-
Constructor Detail
-
PropertyGetExecutor
public PropertyGetExecutor(Introspector is, java.lang.Class<?> clazz, java.lang.String identifier)
Creates an instance by attempting discovery of the get method.- Parameters:
is
- the introspectorclazz
- the class to introspectidentifier
- the property to get
-
-
Method Detail
-
getTargetProperty
public java.lang.Object getTargetProperty()
Gets the property targeted by this executor.- Overrides:
getTargetProperty
in classAbstractExecutor
- Returns:
- the target property
-
execute
public java.lang.Object execute(java.lang.Object o) throws java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
Gets the property value from an object.- Specified by:
execute
in classAbstractExecutor.Get
- Parameters:
o
- The object to get the property from.- Returns:
- The property value.
- Throws:
java.lang.IllegalAccessException
- Method is inaccessible.java.lang.reflect.InvocationTargetException
- Method body throws an exception.
-
tryExecute
public java.lang.Object tryExecute(java.lang.Object o, java.lang.Object identifier)
Tries to reuse this executor, checking that it is compatible with the actual set of arguments.Compatibility means that:
o
must be of the same class as this executor's target class andproperty
must be of the same class as this executor's target property (for list and map based executors) and have the same value (for other types).- Overrides:
tryExecute
in classAbstractExecutor.Get
- Parameters:
o
- The object to get the property from.identifier
- The property to get from the object.- Returns:
- The property value or TRY_FAILED if checking failed.
-
-