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

    Modifier and Type
    Method
    Description
    Method used to get the property value of an object.
    boolean
    Specifies if this JexlPropertyGet is cacheable and able to be reused for this class of object it was returned for.
    boolean
    Checks whether a tryInvoke failed or not.
    tryInvoke(Object obj, Object key)
    Attempts to reuse this JexlPropertyGet, checking that it is compatible with the actual set of arguments.
  • Method Details

    • 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