Package org.apache.cayenne.access.sqlbuilder

# Interface NodeTreeVisitor

All Known Implementing Classes:
  `BaseSQLTreeProcessor`, `DB2SQLTreeProcessor`, `DerbySQLTreeProcessor`, `FirebirdSQLTreeProcessor`, `FrontBaseSQLTreeProcessor`, `H2SQLTreeProcessor`, `HSQLTreeProcessor`, `IngressSQLTreeProcessor`, `MySQLTreeProcessor`, `OracleSQLTreeProcessor`, `PostgreSQLTreeProcessor`, `SimpleNodeTreeVisitor`, `SQLGenerationVisitor`, `SQLiteTreeProcessor`, `SQLServerTreeProcessor`, `SQLServerTreeProcessorV12`, `SybaseSQLTreeProcessor`, `TypeAwareSQLTreeProcessor`

public interface NodeTreeVisitor

Since:
  4.2

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `onChildNodeEnd(Node parent, Node child, int index, boolean hasMore)`
  `boolean`
  `onChildNodeStart(Node parent, Node child, int index, boolean hasMore)`
  `void`
  `onNodeEnd(Node node)`
  `boolean`
  `onNodeStart(Node node)`

- ## Method Details

  - ### onNodeStart

    boolean onNodeStart(Node node)
    Parameters:
      `node` - to visit
    Returns:
      false if visitor should stop

  - ### onChildNodeStart

    boolean onChildNodeStart(Node parent, Node child, int index, boolean hasMore)
    Parameters:
      `parent` - node
      `child` - node
      `index` - of this child in parent
      `hasMore` - true if more children after this child
    Returns:
      false if visitor should stop

  - ### onChildNodeEnd

    void onChildNodeEnd(Node parent, Node child, int index, boolean hasMore)

  - ### onNodeEnd

    void onNodeEnd(Node node)