All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.tinkerpop.blueprints.VertexQuery Maven / Gradle / Ivy

The newest version!
package com.tinkerpop.blueprints;

/**
 * A VertexQuery object defines a collection of filters and modifiers that are used to intelligently select edges from a vertex.
 *
 * @author Matthias Brocheler (http://matthiasb.com)
 * @author Marko A. Rodriguez (http://markorodriguez.com)
 * @author Luca Garulli (http://www.orientechnologies.com)
 * @author Daniel Kuppitz ([email protected])
 */
public interface VertexQuery extends Query {

    /**
     * The direction of the edges to retrieve.
     *
     * @param direction whether to retrieve the incoming, outgoing, or both directions
     * @return the modified query object
     */
    public VertexQuery direction(Direction direction);

    /**
     * Filter out the edge if its label is not in set of provided labels.
     *
     * @param labels the labels to check against
     * @return the modified query object
     */
    public VertexQuery labels(String... labels);

    /**
     * Execute the query and return the number of edges that are unfiltered.
     *
     * @return the number of unfiltered edges
     */
    public long count();

    /**
     * Return the raw ids of the vertices on the other end of the edges.
     *
     * @return the raw ids of the vertices on the other end of the edges
     */
    public Object vertexIds();

    @Override
    public VertexQuery has(String key);

    @Override
    public VertexQuery hasNot(String key);

    @Override
    public VertexQuery has(String key, Object value);

    @Override
    public VertexQuery hasNot(String key, Object value);

    @Override
    public VertexQuery has(String key, Predicate predicate, Object value);

    @Override
    @Deprecated
    public > VertexQuery has(String key, T value, Compare compare);

    @Override
    public > VertexQuery interval(String key, T startValue, T endValue);

    @Override
    public VertexQuery limit(int limit);

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy