KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jfun > yan > xml > NutsFunction2Function


1 package jfun.yan.xml;
2
3 import java.util.Arrays JavaDoc;
4
5 import jfun.yan.function.Function;
6
7 final class NutsFunction2Function implements Function {
8   private final NutsFunction nfun;
9   private final Class JavaDoc[] param_types;
10   
11   NutsFunction2Function(NutsFunction nfun) {
12     this.nfun = nfun;
13     this.param_types = getObjectTypes(nfun.getParameterCount());
14   }
15   private static Class JavaDoc[] getObjectTypes(int k){
16     final Class JavaDoc[] ret = new Class JavaDoc[k];
17     Arrays.fill(ret, Object JavaDoc.class);
18     return ret;
19   }
20   public boolean isConcrete() {
21     return false;
22   }
23
24   public Class JavaDoc getReturnType() {
25     final Class JavaDoc ret = nfun.getReturnType();
26     if(ret==null)
27       return Object JavaDoc.class;
28     else
29       return ret;
30   }
31
32   public Class JavaDoc[] getParameterTypes() {
33     return param_types;
34   }
35
36   public Object JavaDoc call(Object JavaDoc[] args){
37     return NutsUtils.callFunction(nfun, args);
38   }
39
40   public String JavaDoc getName() {
41     return nfun.getName();
42   }
43
44 }
45
Popular Tags