Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Neo4j Community
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.neo4j.graphdb
Interface ReturnableEvaluator

    public interface ReturnableEvaluator

A client hook for evaluating whether a specific node should be returned from a traverser.

When a traverser is created the client parameterizes it with an instance of a ReturnableEvaluator. The traverser then invokes the `isReturnableNode()` operation just before returning a specific node, allowing the client to either approve or disapprove of returning that node.

When implementing a ReturnableEvaluator, the client investigates the information encapsulated in a `TraversalPosition` to decide whether a node is returnable. For example, here's a snippet detailing a ReturnableEvaluator that will return all leaf nodes:

     ReturnableEvaluator returnEvaluator = new ReturnableEvaluator()
     {
         public boolean isReturnableNode( TraversalPosition position )
         {
             // Return nodes that don't have any outgoing relationships,
             // only incoming relationships, i.e. leaf nodes.
             return !position.currentNode().hasRelationship(
                 Direction.OUTGOING );
         }
     };

Field Summary
`static ReturnableEvaluator` | `ALL` A returnable evaluator that returns all nodes encountered.
`static ReturnableEvaluator` | `ALL_BUT_START_NODE` A returnable evaluator that returns all nodes except the start node.

Method Summary
`boolean` | `isReturnableNode(TraversalPosition currentPos)` Method invoked by traverser to see if the current position is a returnable node.

Field Detail

### ALL

    static final ReturnableEvaluator ALL

  A returnable evaluator that returns all nodes encountered.

### ALL_BUT_START_NODE

    static final ReturnableEvaluator ALL_BUT_START_NODE

  A returnable evaluator that returns all nodes except the start node.

Method Detail

### isReturnableNode

    boolean isReturnableNode(TraversalPosition currentPos)

  Method invoked by traverser to see if the current position is a returnable node.

  Parameters:
    `currentPos` - the traversal position
  Returns:
    True if current position is a returnable node

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Neo4j Community
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2011 The Neo4j Graph Database Project. All Rights Reserved.