001 /** 002 * Implements the Cold Fusion Function valuelist 003 */ 004 package railo.runtime.functions.query; 005 006 import railo.runtime.PageContext; 007 import railo.runtime.exp.PageException; 008 import railo.runtime.ext.function.Function; 009 import railo.runtime.op.Caster; 010 import railo.runtime.type.KeyImpl; 011 import railo.runtime.type.Query; 012 import railo.runtime.type.QueryColumn; 013 014 public class QueryValueList implements Function { 015 public static String call(PageContext pc , Query query, String columnName) throws PageException { 016 return call(pc,query,columnName,null); 017 } 018 public static String call(PageContext pc, Query query, String columnName, String delimeter) throws PageException { 019 if(delimeter==null)delimeter=","; 020 QueryColumn column = query.getColumn(KeyImpl.init(columnName)); 021 022 StringBuffer sb=new StringBuffer(); 023 int size=column.size(); 024 for(int i=1;i<=size;i++) { 025 if(i>1)sb.append(delimeter); 026 sb.append(Caster.toString(column.get(i))); 027 } 028 return sb.toString(); 029 } 030 }