org.apache.commons.jexl2.introspection
Interface JexlPropertyGet

All Known Implementing Classes:
AbstractExecutor.Get, BooleanGetExecutor, DuckGetExecutor, ListGetExecutor, MapGetExecutor, PropertyGetExecutor, UberspectImpl.FieldPropertyGet

public interface JexlPropertyGet

Interface for getting values that appear to be properties. Ex. ${foo.bar}

Since:
1.0

Method Summary
 Object invoke(Object obj)
          Method used to get the property value of an object.
 boolean isCacheable()
          Specifies if this JexlPropertyGet is cacheable and able to be reused for this class of object it was returned for.
 boolean tryFailed(Object rval)
          Checks whether a tryInvoke 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.
 

Method Detail

invoke

Object invoke(Object obj)
              throws Exception
Method used to get the property value of an object.

Parameters:
obj - the object to get the property value from.
Returns:
the property value.
Throws:
Exception - on any error.

tryInvoke

Object tryInvoke(Object obj,
                 Object key)
Attempts to reuse this JexlPropertyGet, checking that it is compatible with the actual set of arguments.

Parameters:
obj - the object to invoke the property get upon
key - the property key to get
Returns:
the result of the method invocation that should be checked by tryFailed to determine if it succeeded or failed.

tryFailed

boolean tryFailed(Object rval)
Checks whether a tryInvoke failed or not.

Parameters:
rval - the value returned by tryInvoke
Returns:
true if tryInvoke failed, false otherwise

isCacheable

boolean isCacheable()
Specifies if this JexlPropertyGet is cacheable and able to be reused for this class of object it was returned for.

Returns:
true if can be reused for this class, false if not


Copyright © 2001-2011 The Apache Software Foundation. All Rights Reserved.