com.tinkerpop.blueprints.KeyIndexableGraph Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of blueprints-core Show documentation
Show all versions of blueprints-core Show documentation
Core interfaces and utilities for Blueprints
package com.tinkerpop.blueprints;
import java.util.Set;
/**
* A KeyIndexableGraph is a graph that supports basic index functionality around the key/value pairs of the elements of the graph.
* By creating key indices for a particular property key, that key is indexed on all the elements of the graph.
* This has ramifications for quick lookups on methods like getVertices(String, Object) and getEdges(String, Object).
*
* @author Marko A. Rodriguez (http://markorodriguez.com)
*/
public interface KeyIndexableGraph extends Graph {
/**
* Remove an automatic indexing structure associated with indexing provided key for element class.
*
* @param key the key to drop the index for
* @param elementClass the element class that the index is for
* @param the element class specification
*/
public void dropKeyIndex(String key, Class elementClass);
/**
* Create an automatic indexing structure for indexing provided key for element class.
*
* @param key the key to create the index for
* @param elementClass the element class that the index is for
* @param indexParameters a collection of parameters for the underlying index implementation
* @param the element class specification
*/
public void createKeyIndex(String key, Class elementClass, final Parameter... indexParameters);
/**
* Return all the index keys associated with a particular element class.
*
* @param elementClass the element class that the index is for
* @param the element class specification
* @return the indexed keys as a Set
*/
public Set getIndexedKeys(Class elementClass);
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy