public FramedGraphQuery limit(int limit) { graphQuery = graphQuery.limit(limit); return this; }
public GraphQuery has(final String key, final Object value) { this.query = this.query.has(key, value); return this; }
if (null != this.hasContainers) { for (final HasContainer hasContainer : this.hasContainers) { query = query.has(hasContainer.key, hasContainer.predicate, hasContainer.value); query = query.interval(intervalContainer.key, intervalContainer.startValue, intervalContainer.endValue); query = query.limit(this.highRange - this.count); (Iterator<E>) query.vertices().iterator() : (Iterator<E>) query.edges().iterator();
/** * Get a single element by key, value. * * @param graph The graph to get the element from * @param key The key of the element * @param value The value of the element * @param clazz The class element type, can be Vertex | Edge. * @return Found vertex that matches the specified criteria or null if not * found. * @throws IllegalStateException if multiple vertices found that matches the * specified criteria */ @SuppressWarnings("unchecked") public static <E extends Element> E getSingleElement(Graph graph, String key, Object value, Class<E> clazz) { Iterable<?> it = Vertex.class.isAssignableFrom(clazz) ? graph.query().has(key, value).vertices() : graph.query().has(key, value).edges(); Iterator<?> iter = it.iterator(); E e = null; if (iter.hasNext()) { e = (E) iter.next(); } return e; }
@Override public Iterable<Vertex> vertices() { return graphQuery.vertices(); }
@Override public Iterable<Edge> edges() { return graphQuery.edges(); }
public GraphQuery hasNot(final String key) { this.query = this.query.hasNot(key); return this; }
public <T extends Comparable<?>> FramedGraphQuery interval(String key, T startValue, T endValue) { graphQuery = graphQuery.interval(key, startValue, endValue); return this; }
/** * Create instance * * @param hg associated graph * @param query query instance to be wrapped */ public HistoricGraphQuery(HistoricVersionedGraph<?, V> hg, GraphQuery query) { super(query.has(VEProps.HISTORIC_ELEMENT_PROP_KEY, true)); this.hg = hg; }
@Override public Iterable<Vertex> vertices() { return graphQuery.vertices(); }
@Override public Iterable<Edge> edges() { return graphQuery.edges(); }
public FramedGraphQuery hasNot(String key) { graphQuery = graphQuery.hasNot(key); return this; }
public <T extends Comparable<?>> FramedGraphQuery interval(String key, T startValue, T endValue) { graphQuery = graphQuery.interval(key, startValue, endValue); return this; }
public FramedGraphQuery has(String key, Object value) { graphQuery = graphQuery.has(key, value); return this; }
@Override public Iterable<Edge> getEdges(final String key, final Object value) { // TODO: Consider forbidding retrieving edges by internal keys // (especially NATURAL_EDGE_ID_PROP_KEY), otherwise throw exception. // We need to make Query to filter by key/value first to get a tinest // scope. // See DefaultQuery#hasContainers return query().has(key, value).edges(); }
@Override public Iterable<Vertex> vertices() { return new IdVertexIterable(this.query.vertices(), idGraph); } };