public String expandQueryVariables(String query, Map<String, Object> params) { if (params != null && params.size() > 0) { TextTemplate tmpl = new TextTemplate(); for (String key : params.keySet()) { Object val = params.get(key); if (val == null) { continue; } else if (val instanceof Calendar) { tmpl.setVariable(key, Long.toString(((Calendar) val).getTime().getTime())); } else if (val instanceof Date) { tmpl.setVariable(key, Long.toString(((Date) val).getTime())); } else { tmpl.setVariable(key, val.toString()); } } query = tmpl.processText(query); } return query; }