public String delete(Map<String, Object> params) { String sqlString; SQL sql = new SQL(); String tableName = getTable((Class<? extends BaseDomain>) params.get("domain")); Long[] ids = (Long[]) Objects.getDefault(params.get("ids"), new Long[] {}); final StringBuilder idsCondition = new StringBuilder("(-1"); Iterators.forEach( Arrays.asList(ids).iterator(), new Iterators.CustomerHandler<Long>() { @Override public void handle(Long id) { idsCondition.append(",").append(id); } }); idsCondition.append(")"); sql.DELETE_FROM(tableName).WHERE("id in " + idsCondition.toString()); sqlString = sql.toString(); logger.debug("{} : {}", logger.getName(), sqlString); return sqlString; }