Package org.apache.cayenne.dba.sqlite
Class SQLiteQualifierTranslator
java.lang.Object
org.apache.cayenne.access.translator.select.QueryAssemblerHelper
org.apache.cayenne.access.translator.select.QualifierTranslator
org.apache.cayenne.dba.sqlite.SQLiteQualifierTranslator
- All Implemented Interfaces:
TraversalHandler
public class SQLiteQualifierTranslator extends QualifierTranslator
- Since:
- 4.0
-
Field Summary
Fields inherited from class org.apache.cayenne.access.translator.select.QualifierTranslator
caseInsensitive, matchingObject, objectMatchTranslator, qualifier, useAliasForExpressions, waitingForEndNodeFields inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelper
out, queryAssembler, strategy -
Constructor Summary
Constructors Constructor Description SQLiteQualifierTranslator(QueryAssembler queryAssembler) -
Method Summary
Modifier and Type Method Description protected voidappendExtractFunction(ASTExtract functionExpression)Translates to cast(strftime('format', column) as integer).protected voidappendFunction(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 voidappendFunctionArgDivider(ASTFunctionCall functionExpression)Append divider between function arguments.protected voidclearLastFunctionArgDivider(ASTFunctionCall functionExpression)Clear last divider as we currently don't now position of argument until parent element is ended.voidendNode(Expression node, Expression parentNode)Called during the traversal after an expression node children processing is finished.protected booleanparenthesisNeeded(Expression node, Expression parentNode)Methods inherited from class org.apache.cayenne.access.translator.select.QualifierTranslator
appendFunctionArg, appendLiteral, appendObjectMatch, detectObjectMatch, doAppendPart, doAppendPart, extractQualifier, finishedChild, objectNode, operandForBitwiseAnd, operandForBitwiseLeftShift, operandForBitwiseNot, operandForBitwiseOr, operandForBitwiseRightShift, operandForBitwiseXor, processRelTermination, setCaseInsensitive, setQualifier, setUseAliasForExpressions, startNodeMethods inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelper
appendDbPath, appendLikeEscapeCharacter, appendLiteralDirect, appendObjPath, appendPart, getDbEntity, getObjEntity, paramsDbType, processColumn, processColumnWithQuoteSqlIdentifiers, processRelTermination, setForceJoinForRelations
-
Constructor Details
-
SQLiteQualifierTranslator
-
-
Method Details
-
endNode
Description copied from interface:TraversalHandlerCalled during the traversal after an expression node children processing is finished.- Specified by:
endNodein interfaceTraversalHandler- Overrides:
endNodein classQualifierTranslator
-
appendFunction
Description copied from class:QualifierTranslatorAppend function name to result SQL Override this method to rename or skip function if generic name isn't supported on target DB.- Overrides:
appendFunctionin classQualifierTranslator
-
appendFunctionArgDivider
Description copied from class:QualifierTranslatorAppend divider between function arguments. In overriding methods can be replaced e.g. for " || " for CONCAT operation- Overrides:
appendFunctionArgDividerin classQualifierTranslator
-
clearLastFunctionArgDivider
Description copied from class:QualifierTranslatorClear last divider as we currently don't now position of argument until parent element is ended.- Overrides:
clearLastFunctionArgDividerin classQualifierTranslator
-
parenthesisNeeded
- Overrides:
parenthesisNeededin classQualifierTranslator
-
appendExtractFunction
Translates to cast(strftime('format', column) as integer). Depends on connection property "date_class", can be set in connection URL (date_class=text). https://www.sqlite.org/lang_datefunc.html- Overrides:
appendExtractFunctionin classQualifierTranslator
-