Package org.apache.cayenne.dba.frontbase

## Class FrontBaseQualifierTranslator

- java.lang.Object
- - org.apache.cayenne.access.translator.select.QueryAssemblerHelper
  - - org.apache.cayenne.access.translator.select.QualifierTranslator
    - - org.apache.cayenne.dba.frontbase.FrontBaseQualifierTranslator

- All Implemented Interfaces:
    `TraversalHandler`

      public class FrontBaseQualifierTranslator
      extends QualifierTranslator

  Since:
    4.0

- - ### 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
    --- | ---
    `FrontBaseQualifierTranslator​(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` | `appendFunctionArgDivider​(ASTFunctionCall functionExpression)` | Append divider between function arguments.
    `protected void` | `clearLastFunctionArgDivider​(ASTFunctionCall functionExpression)` | Clear last divider as we currently don't now position of argument until parent element is ended.
    `protected boolean` | `parenthesisNeeded​(Expression node, Expression parentNode)` |

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

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

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

      `appendDbPath, appendLikeEscapeCharacter, appendLiteralDirect, 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

    - #### FrontBaseQualifierTranslator

          public FrontBaseQualifierTranslator​(QueryAssembler queryAssembler)

  - ### Method Detail

    - #### 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`

    - #### appendFunctionArgDivider

          protected void appendFunctionArgDivider​(ASTFunctionCall functionExpression)

      Description copied from class: `QualifierTranslator`
      Append divider between function arguments. In overriding methods can be replaced e.g. for " || " for CONCAT operation
      Overrides:
        `appendFunctionArgDivider` in class `QualifierTranslator`

    - #### clearLastFunctionArgDivider

          protected void clearLastFunctionArgDivider​(ASTFunctionCall functionExpression)

      Description copied from class: `QualifierTranslator`
      Clear last divider as we currently don't now position of argument until parent element is ended.
      Overrides:
        `clearLastFunctionArgDivider` in class `QualifierTranslator`

    - #### parenthesisNeeded

          protected boolean parenthesisNeeded​(Expression node,
                                              Expression parentNode)

      Overrides:
        `parenthesisNeeded` 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`