public final class DuckGetExecutor extends AbstractExecutor.Get
Duck as in duck-typing for an interface like:
interface Get {
Object get(Object key);
}
Modifier and Type | Class and Description |
---|---|
static class |
AbstractExecutor.Get
Abstract class that is used to execute an arbitrary 'get' method.
|
static class |
AbstractExecutor.Method
Abstract class that is used to execute an arbitrary method.
|
static class |
AbstractExecutor.Set
Abstract class that is used to execute an arbitrary 'set' method.
|
Modifier and Type | Field and Description |
---|---|
static Object |
TRY_FAILED
A marker for invocation failures in tryInvoke.
|
Modifier and Type | Method and Description |
---|---|
static DuckGetExecutor |
discover(Introspector is,
Class<?> clazz,
Object identifier)
Attempts to discover a DuckGetExecutor.
|
boolean |
equals(org.apache.commons.jexl3.internal.introspection.AbstractExecutor arg)
Indicates whether some other executor is equivalent to this one.
|
boolean |
equals(Object obj) |
Method |
getMethod()
Gets the method to be executed or used as a marker.
|
String |
getMethodName()
Gets the method name used.
|
Class<?> |
getTargetClass()
Gets the object class targeted by this executor.
|
Object |
getTargetProperty()
Gets the property targeted by this executor.
|
int |
hashCode() |
Object |
invoke(Object obj)
Method used to get the property value of an object.
|
boolean |
isAlive()
Tell whether the executor is alive by looking
at the value of the method.
|
boolean |
isCacheable()
Specifies if this executor is cacheable and able to be reused for this
class of object it was returned for.
|
boolean |
tryFailed(Object exec)
Checks whether a tryExecute failed or not.
|
Object |
tryInvoke(Object obj,
Object key)
Attempts to reuse this JexlPropertyGet, checking that it is compatible with
the actual set of arguments.
|
getClass, notify, notifyAll, toString, wait, wait, wait
isCacheable, tryFailed
public static final Object TRY_FAILED
public static DuckGetExecutor discover(Introspector is, Class<?> clazz, Object identifier)
is
- the introspectorclazz
- the class to find the get method fromidentifier
- the key to use as an argument to the get methodpublic Object getTargetProperty()
public Object invoke(Object obj) throws IllegalAccessException, InvocationTargetException
JexlPropertyGet
obj
- the object to get the property value from.IllegalAccessException
InvocationTargetException
public Object tryInvoke(Object obj, Object key)
JexlPropertyGet
obj
- the object to invoke the property get uponkey
- the property key to getpublic boolean equals(org.apache.commons.jexl3.internal.introspection.AbstractExecutor arg)
arg
- the other executor to checkpublic final boolean isAlive()
public boolean isCacheable()
public final Method getMethod()
public final Class<?> getTargetClass()
public final String getMethodName()
public final boolean tryFailed(Object exec)
exec
- the value returned by tryExecuteCopyright © 2001–2021 The Apache Software Foundation. All rights reserved.