MySQLTreeProcessor (cayenne-doc: Cayenne Documentation 5.0-M2 API)
Description: declaration: package: org.apache.cayenne.dba.mysql, class: MySQLTreeProcessor

# Class MySQLTreeProcessor

java.lang.Object
org.apache.cayenne.access.sqlbuilder.sqltree.SimpleNodeTreeVisitor
org.apache.cayenne.access.translator.select.TypeAwareSQLTreeProcessor
org.apache.cayenne.dba.mysql.MySQLTreeProcessor

All Implemented Interfaces:
  `NodeTreeVisitor, SQLTreeProcessor`

public class MySQLTreeProcessor extends TypeAwareSQLTreeProcessor

Since:
  4.2

- ## Field Summary

  ### Fields inherited from class TypeAwareSQLTreeProcessor

  `byColumnTypeProcessors, byNodeTypeProcessors, byValueTypeProcessors, DEFAULT_TYPE, DEFAULT_TYPE_NAME`
  Modifier and Type
  Field
  Description
  `protected final Map<String, ChildProcessor<ColumnNode>>`
  `byColumnTypeProcessors`
  `protected final Map<NodeType, ChildProcessor<Node>>`
  `byNodeTypeProcessors`
  `protected final Map<String, ChildProcessor<ValueNode>>`
  `byValueTypeProcessors`
  `protected static final Class<?>`
  `DEFAULT_TYPE`
  `protected static final String`
  `DEFAULT_TYPE_NAME`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `MySQLTreeProcessor(boolean ciCollations)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static MySQLTreeProcessor`
  `getInstance(boolean caseInsensitiveCollations)`
  `protected Optional<Node>`
  `onFunctionNode(Node parent, FunctionNode child, int index)`
  `protected Optional<Node>`
  `onLikeNode(Node parent, LikeNode child, int index)`
  `protected Optional<Node>`
  `onLimitOffsetNode(Node parent, LimitOffsetNode child, int index)`

  ### Methods inherited from class TypeAwareSQLTreeProcessor

  `defaultProcess, getColumnAttribute, getColumnProcessor, getObjAttributeFor, getValueAttribute, getValueProcessor, onChildNodeStart, process, registerColumnProcessor, registerProcessor, registerValueProcessor, replaceChild, wrapInFunction`
  Modifier and Type
  Method
  Description
  `protected Optional<Node>`
  `defaultProcess(Node parent, Node child, int index)`
  `protected DbAttribute`
  `getColumnAttribute(ColumnNode node)`
  `protected ChildProcessor<ColumnNode>`
  `getColumnProcessor(DbAttribute attr)`
  `protected static Optional<ObjAttribute>`
  `getObjAttributeFor(DbAttribute dbAttribute)`
  `protected DbAttribute`
  `getValueAttribute(ValueNode node)`
  `protected ChildProcessor<ValueNode>`
  `getValueProcessor(DbAttribute attr)`
  `boolean`
  `onChildNodeStart(Node parent, Node child, int index, boolean hasMore)`
  `Node`
  `process(Node node)`
  `protected void`
  `registerColumnProcessor(Class<?> columnType, ChildProcessor childProcessor)`
  `protected void`
  `registerProcessor(NodeType nodeType, ChildProcessor childProcessor)`
  `protected void`
  `registerValueProcessor(Class<?> columnType, ChildProcessor childProcessor)`
  `protected static void`
  `replaceChild(Node parent, int index, Node newChild)`
  `protected static Node`
  `wrapInFunction(Node node, String function)`

  ### Methods inherited from class SimpleNodeTreeVisitor

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

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### MySQLTreeProcessor

    protected MySQLTreeProcessor(boolean ciCollations)

- ## Method Details

  - ### getInstance

    public static MySQLTreeProcessor getInstance(boolean caseInsensitiveCollations)

  - ### onLikeNode

    protected Optional<Node> onLikeNode(Node parent, LikeNode child, int index)

  - ### onLimitOffsetNode

    protected Optional<Node> onLimitOffsetNode(Node parent, LimitOffsetNode child, int index)

  - ### onFunctionNode

    protected Optional<Node> onFunctionNode(Node parent, FunctionNode child, int index)