BranchCollisionDetector (Neo4j Community 2.1.0-M01 API)
Date: 2014-02-20

org.neo4j.graphdb.traversal

## Interface BranchCollisionDetector

-     public interface BranchCollisionDetector

  In a bidirectional traversal there's one traversal from each start/end side and they will probably meet somewhere in the middle and the full paths are formed. This is where that detection and path generation takes place.
  Author:
    Mattias Persson

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Iterable<Path>` | `evaluate(TraversalBranch branch, Direction direction)` Evaluate the given `branch` coming from either the start side or the end side.

- - ### Method Detail

    - #### evaluate

          Iterable<Path> evaluate(TraversalBranch branch,
                                Direction direction)

      Evaluate the given `branch` coming from either the start side or the end side. Which side the branch represents is controlled by the `direction` argument, `Direction.OUTGOING` means the start side and `Direction.INCOMING` means the end side. Returns an `Iterable` of new unique `Path`s if this branch resulted in a collision with other previously registered branches, or `null` if this branch didn't result in any collision.
      Parameters:
        `branch` - the `TraversalBranch` to check for collision with other previously registered branches.
        `direction` - `Direction.OUTGOING` if this branch represents a branch from the start side of this bidirectional traversal, or `Direction.INCOMING` for the end side.
      Returns:
        new paths formed if this branch collided with other branches, or `null` if no collision occured.

Copyright © 2002–2014 The Neo4j Graph Database Project. All rights reserved.