1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.jexl.util.introspection;
18
19
20
21 /***
22 * Method used for regular method invocation
23 *
24 * $foo.bar()
25 *
26 *
27 * @author <a href="mailto:geirm@optonline.net">Geir Magnusson Jr.</a>
28 * @version $Id: VelMethod.java,v 1.3 2004/02/28 13:45:22 yoavs Exp $
29 */
30 public interface VelMethod
31 {
32 /***
33 * invocation method - called when the method invocationshould be
34 * preformed and a value returned
35 */
36 public Object invoke(Object o, Object[] params)
37 throws Exception;
38
39 /***
40 * specifies if this VelMethod is cacheable and able to be
41 * reused for this class of object it was returned for
42 *
43 * @return true if can be reused for this class, false if not
44 */
45 public boolean isCacheable();
46
47 /***
48 * returns the method name used
49 */
50 public String getMethodName();
51
52 /***
53 * returns the return type of the method invoked
54 */
55 public Class getReturnType();
56 }