Easy: just one. For now, I've written this, but I'm still not sure it is the simplest way to write it
public boolean areConnected(Node n1,Node n2,Relationship rel,Direction dir) throws Exception { Iterable<Relationship> relationships = n1.getRelationships(dir); for (Relationship r : relationships) { //I am only working with Dynamic Relationships if (r.getType().equals(rel.getType())) { if (dir == Direction.OUTGOING) { if (r.getEndNode().equals(n2)) { return true; } } else { if (r.getStartNode().equals(n2)) { return true; } } } } return false; } Bruno Le 27/10/2011 18:31, Peter Neubauer a écrit : > Bruno, > There is no such function low level, but toy can use a Shortest path algo to > check this. What is the maximum length for a path between the nodes? > On Oct 27, 2011 6:14 PM, "Bruno Paiva Lima da Silva"<bplsi...@gmail.com> > wrote: > >> Hello there! >> First of all, thanks for the help in all my previous questions, all the >> answers have been helping me to use Neo4j with success. >> >> I have a very simple question, but I haven't found the answer yet... >> >> I'd like to have a function, which signature would be more or less like >> this: >> >> public areTheyConnected(Node *n1*,Node *n2*,Relationship *rel*,Direction >> *dir*) >> >> which returns true iff there is an edge of type *rel*, between *n1* and >> *n2*, in the *dir* direction (the direction has n1 as reference). >> >> Example: >> >> In my graph, I have: "Bob knows Tom, Tom knows Peter, Jack knows Tom" >> >> areTheyConnected(nodeBob,nodeTom,relKnows,Direction.OUTGOING) returns >> true; (Bob knows Tom) >> areTheyConnected(nodeTom,nodeJack,relKnows,Direction.INCOMING) also >> returns true; (Jack knows Tom) >> >> areTheyConnected(nodeBob,nodeTom,relKnows,Direction.INCOMING) returns >> false; (Tom doesn't know Bob) >> >> Is there an easy method (constant time, or close) for that? >> >> Thank you very much, >> Bruno >> _______________________________________________ >> Neo4j mailing list >> User@lists.neo4j.org >> https://lists.neo4j.org/mailman/listinfo/user >> > _______________________________________________ > Neo4j mailing list > User@lists.neo4j.org > https://lists.neo4j.org/mailman/listinfo/user _______________________________________________ Neo4j mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user