pathBetween

open override fun pathBetween(entityIdA: String, entityIdB: String): List<GraphPath>

The paths connecting entityIdA to entityIdB.

Returns an empty list when no path exists — never throws.

Return

zero or more paths; an empty list by default


open override fun pathBetween(entityIdA: String, entityIdB: String, contextId: <Error class: unknown class>?): List<GraphPath>

Native shortest path: GraphProjectionCypher.pathBetween returns the shortest entity sequence (up to GraphProjectionCypher.MAX_DEPTH hops) and the connecting proposition ids; empty when the two entities are unreachable. Same-entity is the trivial one-node path, as in the portable facade. A non-null contextId confines every hop to that context; null is unscoped. Called directly (bypassing the facade's own ceiling), this bounds the walk at GraphProjectionCypher.MAX_DEPTH.


open override fun pathBetween(entityIdA: String, entityIdB: String, contextId: <Error class: unknown class>?, maxDepth: Int): List<GraphPath>

Same walk as above, but bounded by the caller's own maxDepth ceiling instead of the store's hard cap — this is the overload com.embabel.dice.query.graph.GraphQuery actually calls, so a facade configured with a smaller (or larger) ceiling than GraphProjectionCypher.MAX_DEPTH gets a walk that honors it, clamped at that hard cap.