001 package railo.runtime.functions; 002 003 import railo.runtime.PageContext; 004 import railo.runtime.exp.PageException; 005 import railo.runtime.reflection.Reflector; 006 007 public class BIFProxy extends BIF { 008 009 private Class clazz; 010 011 public BIFProxy(Class clazz) { 012 this.clazz=clazz; 013 } 014 015 @Override 016 public Object invoke(PageContext pc, Object[] args) throws PageException { 017 Object[] _args=new Object[args.length+1]; 018 _args[0]=pc; 019 for(int i=0;i<args.length;i++){ 020 _args[i+1]=args[i]; 021 } 022 return Reflector.callStaticMethod(clazz,"call",_args); 023 } 024 025 }