recordcount, constructReturnForAQL(fields, "target")); Map<String, Object> bindVars = new MapBuilder().put("key", startkey).get(); cursor = arangoDB.db(databaseName).query(aqlQuery, bindVars, null, VPackSlice.class); while (cursor.hasNext()) {
@Override public <T> Iterable<T> findAll(final Class<T> entityClass) throws DataAccessException { final String query = "FOR entity IN @@col RETURN entity"; final Map<String, Object> bindVars = new MapBuilder().put("@col", entityClass).get(); return new Iterable<T>() { @Override public Iterator<T> iterator() { return query(query, bindVars, null, entityClass); } }; }
@Override public <T> Iterable<T> findAll(final Class<T> entityClass) throws DataAccessException { final String query = "FOR entity IN @@col RETURN entity"; final Map<String, Object> bindVars = new MapBuilder().put("@col", entityClass).get(); return new Iterable<T>() { @Override public Iterator<T> iterator() { return query(query, bindVars, null, entityClass); } }; }
private ArangoCursor<?> _resolve(final String id, final Class<?> type, final boolean limit) { final String query = String.format("FOR e IN @@edge FILTER e._to == @id RETURN e", limit ? "LIMIT 1" : ""); return template.query(query, new MapBuilder().put("@edge", type).put("id", id).get(), new AqlQueryOptions(), type); }
private ArangoCursor<?> _resolve(final String id, final Class<?> type, final boolean limit) { final String query = String.format("FOR e IN @@edge FILTER e._from == @id %s RETURN e", limit ? "LIMIT 1" : ""); return template.query(query, new MapBuilder().put("@edge", type).put("id", id).get(), new AqlQueryOptions(), type); }
private ArangoCursor<?> _resolve(final String id, final Class<?> type, final boolean limit) { final String query = String.format("FOR e IN @@edge FILTER e._to == @id RETURN e", limit ? "LIMIT 1" : ""); return template.query(query, new MapBuilder().put("@edge", type).put("id", id).get(), new AqlQueryOptions(), type); }
private ArangoCursor<?> _resolve(final String id, final Class<?> type, final boolean limit) { final String query = String.format("FOR e IN @@edge FILTER e._from == @id %s RETURN e", limit ? "LIMIT 1" : ""); return template.query(query, new MapBuilder().put("@edge", type).put("id", id).get(), new AqlQueryOptions(), type); }
private ArangoCursor<?> _resolve( final String id, final Class<?> type, final Relations annotation, final boolean limit) { final String edges = Arrays.stream(annotation.edges()).map(e -> template.collection(e).name()) .collect(Collectors.joining(",")); final String query = String.format( "WITH @@vertex FOR v IN %d .. %d %s @start %s OPTIONS {bfs: true, uniqueVertices: \"global\"} %s RETURN v", // Math.max(1, annotation.minDepth()), // Math.max(1, annotation.maxDepth()), // annotation.direction(), // edges, // limit ? "LIMIT 1" : ""); final Map<String, Object> bindVars = new MapBuilder()// .put("start", id) // .put("@vertex", type) // .get(); return template.query(query, bindVars, type); }
private ArangoCursor<?> _resolve( final String id, final Class<?> type, final Relations annotation, final boolean limit) { final String edges = Arrays.stream(annotation.edges()).map(e -> template.collection(e).name()) .collect(Collectors.joining(",")); final String query = String.format( "WITH @@vertex FOR v IN %d .. %d %s @start %s OPTIONS {bfs: true, uniqueVertices: \"global\"} %s RETURN v", // Math.max(1, annotation.minDepth()), // Math.max(1, annotation.maxDepth()), // annotation.direction(), // edges, // limit ? "LIMIT 1" : ""); final Map<String, Object> bindVars = new MapBuilder()// .put("start", id) // .put("@vertex", type) // .get(); return template.query(query, bindVars, type); }