Package org.apache.cayenne.dba.hsqldb

## Class HSQLQualifierTranslator

- java.lang.Object
- - org.apache.cayenne.access.translator.select.QueryAssemblerHelper
  - - org.apache.cayenne.access.translator.select.QualifierTranslator
    - - org.apache.cayenne.access.translator.select.TrimmingQualifierTranslator
      - - org.apache.cayenne.dba.hsqldb.HSQLQualifierTranslator

- All Implemented Interfaces:
    `TraversalHandler`

      public class HSQLQualifierTranslator
      extends TrimmingQualifierTranslator

  Since:
    4.0

- - ### Field Summary

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

      `trimFunction`

    - ### 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
    --- | ---
    `HSQLQualifierTranslator​(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` | `appendFunction​(ASTFunctionCall functionExpression)` | Append function name to result SQL Override this method to rename or skip function if generic name isn't supported on target DB.
    `protected void` | `appendLikeEscapeCharacter​(PatternMatchNode patternMatchNode)` | Outputs the standard JDBC (database agnostic) expression for supplying the escape character to the database server when supplying a LIKE clause.

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

      `getTrimFunction, processColumn, processColumnWithQuoteSqlIdentifiers, setTrimFunction`

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

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

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

      `appendDbPath, appendLiteralDirect, appendObjPath, appendPart, getDbEntity, getObjEntity, paramsDbType, processRelTermination, setForceJoinForRelations`

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

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

- - ### Constructor Detail

    - #### HSQLQualifierTranslator

          public HSQLQualifierTranslator​(QueryAssembler queryAssembler)

  - ### Method Detail

    - #### appendLikeEscapeCharacter

          protected void appendLikeEscapeCharacter​(PatternMatchNode patternMatchNode)
                                            throws IOException

      Description copied from class: `QueryAssemblerHelper`

      Outputs the standard JDBC (database agnostic) expression for supplying the escape character to the database server when supplying a LIKE clause. This has been factored-out because some database adaptors handle LIKE differently and they need access to this common method in order not to repeat this code.

      If there is no escape character defined then this method will not output anything. An escape character of 0 will mean no escape character.

      Overrides:
        `appendLikeEscapeCharacter` in class `QueryAssemblerHelper`
      Throws:
        `IOException`

    - #### appendFunction

          protected void appendFunction​(ASTFunctionCall functionExpression)

      Description copied from class: `QualifierTranslator`
      Append function name to result SQL Override this method to rename or skip function if generic name isn't supported on target DB.
      Overrides:
        `appendFunction` 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`