Database Reference
In-Depth Information
Integer, more
// deep would be traversals. Default value would be
to traverse //complete Tree
trvDesc = trvDesc.evaluator(Evaluators.toDepth(3));
//Define Uniqueness in visiting Nodes while
Traversing
trvDesc =
trvDesc.uniqueness(Uniqueness.NODE_GLOBAL);
//Traverse only specific type of relationship
trvDesc = trvDesc.relationships(RelTypes.ACTED_IN,
Direction.BOTH);
// Get a Traverser from Descriptor
Traverser traverser =
trvDesc.traverse(getStartNode(graphDb,name));
// Let us get the Paths from Traverser and start
iterating or
//moving along the Path
for (Path path : traverser) {
//Add Paths
allPaths.add(path);
}
//Return Paths
return allPaths;
}}
/**
* Get a Root Node as a Start Node for Traversal.
* @param graphDb
* @param name
* @return Root Node
*/
private Node getStartNode(GraphDatabaseService
graphDb, String name) {
try (Transaction tx = graphDb.beginTx()) {
ExecutionEngine engine = new
ExecutionEngine(graphDb, StringLogger.SYSTEM);
String cypherQuery = "match (n)-[r]->() where
n.Name=\""+name+"\" return n as RootNode";
Search WWH ::




Custom Search