/** * Convert all result to the wanted type and return new WikittyQueryResult * with this new result list. For business object transformation, if some * result don't have the right extension (clazz) this extension is * automatically added. * * @param queryResult result to convert * @param target to cast into. * Can be Wikitty, BusinessEntity, String, Date, Number (returned is BigDecimal), Boolean, byte[] * @return new WikittyQueryResult with element in right class or Exception * if conversion is impossible * @since 3.10 */ public <E, F> WikittyQueryResult<Map<String, E>> castToMap( WikittyClient client, Class<E> target) { WikittyQueryResult<Map<String, E>> result; long startTime = System.nanoTime(); List<Map<String, E>> castedResult = client.castToMap(target, (List<Map<String, F>>)this.getAll()); long estimatedTime = System.nanoTime() - startTime; result = new WikittyQueryResult<Map<String, E>>( queryName, offset, totalResult, query, queryString, castedResult, selectResult, wikittyIdResult, facets, timeQuery, estimatedTime); return result; }
result.add((WikittyQueryResult<Map<String, E>>)castToMap(clazz, p));