All Known Implementing Classes:
AbstractExecutor.Method, MethodExecutor

public interface JexlMethod
Interface used for regular method invocation. Ex. ${foo.bar()}
Since:
1.0
  • Method Summary

    Modifier and Type
    Method
    Description
    returns the return type of the method invoked.
    invoke(Object obj, Object[] params)
    Invocation method, called when the method invocation should be performed and a value returned.
    boolean
    Specifies if this JexlMethod 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(String name, Object obj, Object[] params)
    Attempts to reuse this JexlMethod, checking that it is compatible with the actual set of arguments.
  • Method Details

    • invoke

      Object invoke(Object obj, Object[] params) throws Exception
      Invocation method, called when the method invocation should be performed and a value returned.
      Parameters:
      obj - the object
      params - method parameters.
      Returns:
      the result
      Throws:
      Exception - on any error.
    • tryInvoke

      Object tryInvoke(String name, Object obj, Object[] params)
      Attempts to reuse this JexlMethod, checking that it is compatible with the actual set of arguments. Related to isCacheable since this method is often used with cached JexlMethod instances.
      Parameters:
      obj - the object to invoke the method upon
      name - the method name
      params - the method arguments
      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 JexlMethod 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
    • getReturnType

      Class<?> getReturnType()
      returns the return type of the method invoked.
      Returns:
      return type