public WikittyQueryResult<Map<String, Object>>[] findAllByQueryAsMap( WikittyQuery c1, WikittyQuery c2, WikittyQuery ... otherCriteria) { long start = TimeLog.getTime(); List<WikittyQuery> criterias = new ArrayList<WikittyQuery>(otherCriteria.length + 2); Collections.addAll(criterias, c1, c2); Collections.addAll(criterias, otherCriteria); List<WikittyQueryResult<Map<String, Object>>> resultList = findAllByQueryAsMap(criterias); WikittyQueryResult<Map<String, Object>>[] result = resultList.toArray(new WikittyQueryResult[criterias.size()]); timeLog.log(start, "findAllByCriteria(Varargs)"); return result; }
public WikittyQueryResult<Map<String, Object>> findAllByQueryAsMap(WikittyQuery query) { long start = TimeLog.getTime(); WikittyQueryResult<Map<String, Object>> result = null; if (query != null) { result = findAllByQueryAsMap(Collections.singletonList(query)).get(0); } timeLog.log(start, "findAllByQuery(One)"); return result; }
/** * Cette method doit etre l'unique methode finalement utilise par toutes * les methodes find avec un cast vers clazz * * Search object that correspond to criteria and that have all extension * needed by BusinessEntity (clazz), if clazz is BusinessEntity class. * If one criteria is empty, find all extensions * for this criteria else if criteria is null return null. * * @param <E> object type * Can be Wikitty, BusinessEntity, String, Date, Number (returned is BigDecimal), Boolean, byte[] * @param clazz entity class, can be null for no conversion * @param queries criterias * @param limitToFirst if true limit result to first result (first = 0, limit = 1) * @return paged result */ protected <E> List<WikittyQueryResult<E>> findAllByQuery( Class<E> clazz, List<WikittyQuery> queries, boolean limitToFirst) { List<WikittyQueryResult<Map<String, E>>> tmp = findAllByQueryAsMap(clazz, queries, limitToFirst); List<WikittyQueryResult<E>> result = new ArrayList<WikittyQueryResult<E>>(tmp.size()); for (WikittyQueryResult p : tmp) { result.add(p.convertMapToSimple()); // result.add(castTo(clazz, p)); } return result; }
public <E> List<Map<String, E>> findByQueryAsMap(Class<E> clazz, List<WikittyQuery> query) { long start = TimeLog.getTime(); List<Map<String, E>> result = null; if (query != null) { List<WikittyQueryResult<Map<String, E>>> tmp = findAllByQueryAsMap(clazz, query, true); result = new ArrayList<Map<String, E>>(tmp.size()); for (WikittyQueryResult<Map<String, E>> wqr : tmp) { if (wqr.size() == 0) { result.add(null); } else { result.add(wqr.peek()); } } } timeLog.log(start, "findByQuery(List)"); return result; }
findAllByQueryAsMap(serviceQueries);