Package org.apache.cayenne.access.translator.select

## Class BaseSQLTreeProcessor

- java.lang.Object
- - org.apache.cayenne.access.sqlbuilder.sqltree.SimpleNodeTreeVisitor
  - - org.apache.cayenne.access.translator.select.BaseSQLTreeProcessor

- All Implemented Interfaces:
    `NodeTreeVisitor`, `SQLTreeProcessor`
  Direct Known Subclasses:
    `DB2SQLTreeProcessor`, `DerbySQLTreeProcessor`, `FirebirdSQLTreeProcessor`, `FrontBaseSQLTreeProcessor`, `H2SQLTreeProcessor`, `HSQLTreeProcessor`, `IngressSQLTreeProcessor`, `OpenBaseSQLTreeProcessor`, `OracleSQLTreeProcessor`, `SQLiteTreeProcessor`, `SybaseSQLTreeProcessor`

      public class BaseSQLTreeProcessor
      extends SimpleNodeTreeVisitor
      implements SQLTreeProcessor

  Since:
    4.2

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `BaseSQLTreeProcessor()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `onChildNodeStart​(Node parent, Node child, int index, boolean hasMore)` |
    `protected void` | `onColumnNode​(Node parent, ColumnNode child, int index)` |
    `protected void` | `onDistinctNode​(Node parent, DistinctNode child, int index)` |
    `protected void` | `onFunctionNode​(Node parent, FunctionNode child, int index)` |
    `protected void` | `onInNode​(Node parent, InNode child, int index)` |
    `protected void` | `onLikeNode​(Node parent, LikeNode child, int index)` |
    `protected void` | `onLimitOffsetNode​(Node parent, LimitOffsetNode child, int index)` |
    `protected void` | `onResultNode​(Node parent, Node child, int index)` |
    `protected void` | `onUndefinedNode​(Node parent, Node child, int index)` |
    `protected void` | `onValueNode​(Node parent, ValueNode child, int index)` |
    `Node` | `process​(Node node)` |
    `protected static void` | `replaceChild​(Node parent, int index, Node newChild)` |
    `protected static void` | `replaceChild​(Node parent, int index, Node newChild, boolean transferChildren)` |
    `protected static Node` | `wrapInFunction​(Node node, String function)` |

    - ### Methods inherited from class org.apache.cayenne.access.sqlbuilder.sqltree.SimpleNodeTreeVisitor

      `onChildNodeEnd, onNodeEnd, onNodeStart`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BaseSQLTreeProcessor

          public BaseSQLTreeProcessor()

  - ### Method Detail

    - #### process

          public Node process​(Node node)

      Specified by:
        `process` in interface `SQLTreeProcessor`

    - #### onValueNode

          protected void onValueNode​(Node parent,
                                     ValueNode child,
                                     int index)

    - #### onFunctionNode

          protected void onFunctionNode​(Node parent,
                                        FunctionNode child,
                                        int index)

    - #### onLimitOffsetNode

          protected void onLimitOffsetNode​(Node parent,
                                           LimitOffsetNode child,
                                           int index)

    - #### onColumnNode

          protected void onColumnNode​(Node parent,
                                      ColumnNode child,
                                      int index)

    - #### onInNode

          protected void onInNode​(Node parent,
                                  InNode child,
                                  int index)

    - #### onLikeNode

          protected void onLikeNode​(Node parent,
                                    LikeNode child,
                                    int index)

    - #### onResultNode

          protected void onResultNode​(Node parent,
                                      Node child,
                                      int index)

    - #### onDistinctNode

          protected void onDistinctNode​(Node parent,
                                        DistinctNode child,
                                        int index)

    - #### onUndefinedNode

          protected void onUndefinedNode​(Node parent,
                                         Node child,
                                         int index)

    - #### replaceChild

          protected static void replaceChild​(Node parent,
                                             int index,
                                             Node newChild)

    - #### replaceChild

          protected static void replaceChild​(Node parent,
                                             int index,
                                             Node newChild,
                                             boolean transferChildren)

    - #### wrapInFunction

          protected static Node wrapInFunction​(Node node,
                                               String function)

    - #### onChildNodeStart

          public boolean onChildNodeStart​(Node parent,
                                          Node child,
                                          int index,
                                          boolean hasMore)

      Specified by:
        `onChildNodeStart` in interface `NodeTreeVisitor`
      Overrides:
        `onChildNodeStart` in class `SimpleNodeTreeVisitor`
      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