Package org.apache.cayenne.dba.openbase

## Class OpenBaseQualifierTranslator

- java.lang.Object
- - org.apache.cayenne.access.translator.select.QueryAssemblerHelper
  - - org.apache.cayenne.access.translator.select.QualifierTranslator
    - - org.apache.cayenne.dba.openbase.OpenBaseQualifierTranslator

- All Implemented Interfaces:
    `TraversalHandler`

      public class OpenBaseQualifierTranslator
      extends QualifierTranslator

  Translates query qualifier to SQL. Used as a helper class by query translators.
  Since:
    1.1

- - ### Field Summary

    - ### Fields inherited from class org.apache.cayenne.access.translator.select.QualifierTranslator

      `caseInsensitive, matchingObject, objectMatchTranslator, qualifier, useAliasForExpressions, waitingForEndNode`

    - ### Fields inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelper

      `out, queryAssembler, strategy`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OpenBaseQualifierTranslator​(QueryAssembler queryAssembler)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `appendExtractFunction​(ASTExtract functionExpression)` | Special case for extract date/time parts functions as they have many variants
    `protected void` | `appendLiteralDirect​(Object val, DbAttribute attr, Expression parentExpression)` | Appends SQL code to the query buffer to handle `val` as a parameter to the PreparedStatement being built.
    `void` | `endNode​(Expression node, Expression parentNode)` | Called during the traversal after an expression node children processing is finished.
    `void` | `finishedChild​(Expression node, int childIndex, boolean hasMoreChildren)` | Called during traversal after a child of expression has been visited.
    `void` | `startNode​(Expression node, Expression parentNode)` | Called during the traversal before an expression node children processing is started.

    - ### Methods inherited from class org.apache.cayenne.access.translator.select.QualifierTranslator

      `appendFunction, appendFunctionArg, appendFunctionArgDivider, appendLiteral, appendObjectMatch, clearLastFunctionArgDivider, detectObjectMatch, doAppendPart, doAppendPart, extractQualifier, objectNode, operandForBitwiseAnd, operandForBitwiseLeftShift, operandForBitwiseNot, operandForBitwiseOr, operandForBitwiseRightShift, operandForBitwiseXor, parenthesisNeeded, processRelTermination, setCaseInsensitive, setQualifier, setUseAliasForExpressions`

    - ### Methods inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelper

      `appendDbPath, appendLikeEscapeCharacter, appendObjPath, appendPart, getDbEntity, getObjEntity, paramsDbType, processColumn, processColumnWithQuoteSqlIdentifiers, processRelTermination, setForceJoinForRelations`

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

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

- - ### Constructor Detail

    - #### OpenBaseQualifierTranslator

          public OpenBaseQualifierTranslator​(QueryAssembler queryAssembler)

  - ### Method Detail

    - #### startNode

          public void startNode​(Expression node,
                                Expression parentNode)

      Description copied from interface: `TraversalHandler`
      Called during the traversal before an expression node children processing is started.
      Specified by:
        `startNode` in interface `TraversalHandler`
      Overrides:
        `startNode` in class `QualifierTranslator`

    - #### endNode

          public void endNode​(Expression node,
                              Expression parentNode)

      Description copied from interface: `TraversalHandler`
      Called during the traversal after an expression node children processing is finished.
      Specified by:
        `endNode` in interface `TraversalHandler`
      Overrides:
        `endNode` in class `QualifierTranslator`

    - #### appendLiteralDirect

          protected void appendLiteralDirect​(Object val,
                                             DbAttribute attr,
                                             Expression parentExpression)
                                      throws IOException

      Description copied from class: `QueryAssemblerHelper`
      Appends SQL code to the query buffer to handle `val` as a parameter to the PreparedStatement being built. Adds `val` into QueryAssembler parameter list.
      Overrides:
        `appendLiteralDirect` in class `QueryAssemblerHelper`
      Throws:
        `IOException`

    - #### finishedChild

          public void finishedChild​(Expression node,
                                    int childIndex,
                                    boolean hasMoreChildren)

      Description copied from interface: `TraversalHandler`
      Called during traversal after a child of expression has been visited.
      Specified by:
        `finishedChild` in interface `TraversalHandler`
      Overrides:
        `finishedChild` in class `QualifierTranslator`

    - #### appendExtractFunction

          protected void appendExtractFunction​(ASTExtract functionExpression)

      Description copied from class: `QualifierTranslator`
      Special case for extract date/time parts functions as they have many variants
      Overrides:
        `appendExtractFunction` in class `QualifierTranslator`