Package org.apache.cayenne.dba.postgres
Class PostgresQualifierTranslator
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.postgres.PostgresQualifierTranslator
- All Implemented Interfaces:
- TraversalHandler
public class PostgresQualifierTranslator extends TrimmingQualifierTranslator
Uses Postgres extensions to optimize various translations.
- Since:
- 1.1
- 
Field SummaryFields inherited from class org.apache.cayenne.access.translator.select.TrimmingQualifierTranslatortrimFunctionFields inherited from class org.apache.cayenne.access.translator.select.QualifierTranslatorcaseInsensitive, matchingObject, objectMatchTranslator, qualifier, useAliasForExpressions, waitingForEndNodeFields inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelperout, queryAssembler, strategy
- 
Constructor SummaryConstructors Constructor Description PostgresQualifierTranslator(QueryAssembler queryAssembler)
- 
Method SummaryModifier and Type Method Description protected voidappendExtractFunction(ASTExtract functionExpression)Special case for extract date/time parts functions as they have many variantsprotected 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.voidfinishedChild(Expression node, int childIndex, boolean hasMoreChildren)Called during traversal after a child of expression has been visited.protected booleanparenthesisNeeded(Expression node, Expression parentNode)voidstartNode(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.TrimmingQualifierTranslatorgetTrimFunction, processColumn, processColumnWithQuoteSqlIdentifiers, setTrimFunctionMethods inherited from class org.apache.cayenne.access.translator.select.QualifierTranslatorappendFunctionArg, appendLiteral, appendObjectMatch, detectObjectMatch, doAppendPart, doAppendPart, extractQualifier, objectNode, operandForBitwiseAnd, operandForBitwiseLeftShift, operandForBitwiseNot, operandForBitwiseOr, operandForBitwiseRightShift, operandForBitwiseXor, processRelTermination, setCaseInsensitive, setQualifier, setUseAliasForExpressionsMethods inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelperappendDbPath, appendLikeEscapeCharacter, appendLiteralDirect, appendObjPath, appendPart, getDbEntity, getObjEntity, paramsDbType, processRelTermination, setForceJoinForRelations
- 
Constructor Details- 
PostgresQualifierTranslator
 
- 
- 
Method Details- 
startNodeDescription copied from interface:TraversalHandlerCalled during the traversal before an expression node children processing is started.- Specified by:
- startNodein interface- TraversalHandler
- Overrides:
- startNodein class- QualifierTranslator
 
- 
endNodeDescription copied from interface:TraversalHandlerCalled during the traversal after an expression node children processing is finished.- Specified by:
- endNodein interface- TraversalHandler
- Overrides:
- endNodein class- QualifierTranslator
 
- 
finishedChildDescription copied from interface:TraversalHandlerCalled during traversal after a child of expression has been visited.- Specified by:
- finishedChildin interface- TraversalHandler
- Overrides:
- finishedChildin class- QualifierTranslator
 
- 
appendFunctionDescription 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 class- QualifierTranslator
- Since:
- 4.0
 
- 
appendFunctionArgDividerDescription copied from class:QualifierTranslatorAppend divider between function arguments. In overriding methods can be replaced e.g. for " || " for CONCAT operation- Overrides:
- appendFunctionArgDividerin class- QualifierTranslator
- Since:
- 4.0
 
- 
clearLastFunctionArgDividerDescription copied from class:QualifierTranslatorClear last divider as we currently don't now position of argument until parent element is ended.- Overrides:
- clearLastFunctionArgDividerin class- QualifierTranslator
- Since:
- 4.0
 
- 
parenthesisNeeded- Overrides:
- parenthesisNeededin class- QualifierTranslator
 
- 
appendExtractFunctionDescription copied from class:QualifierTranslatorSpecial case for extract date/time parts functions as they have many variants- Overrides:
- appendExtractFunctionin class- QualifierTranslator
 
 
-