001    package railo.runtime.functions.query;
002    
003    import railo.runtime.PageContext;
004    import railo.runtime.exp.PageException;
005    import railo.runtime.functions.BIF;
006    import railo.runtime.op.Caster;
007    import railo.runtime.type.Collection;
008    import railo.runtime.type.KeyImpl;
009    import railo.runtime.type.Query;
010    
011    public class QueryColumnExists extends BIF {
012    
013            private static final long serialVersionUID = -661796711105724696L;
014    
015            public static boolean call(PageContext pc , Query qry, String key) {
016                    return call(pc,qry,KeyImpl.getInstance(key));
017            }
018            public static boolean call(PageContext pc , Query qry, Collection.Key key) {
019                    return qry.getColumn(key,null)!=null;
020            }
021            
022            @Override
023            public Object invoke(PageContext pc, Object[] args) throws PageException {
024                    return call(pc,Caster.toQuery(args[0]),Caster.toKey(args[1]));
025            }
026    }