Package org.apache.cayenne.dba.db2
Class DB2QualifierTranslator
- 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.db2.DB2QualifierTranslator
-
- All Implemented Interfaces:
TraversalHandler
public class DB2QualifierTranslator extends TrimmingQualifierTranslator
-
-
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 DB2QualifierTranslator(QueryAssembler queryAssembler, String trimFunction)
-
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 variantsprotected 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
appendLiteralDirect(Object val, DbAttribute attr, Expression parentExpression)
Appends SQL code to the query buffer to handleval
as a parameter to the PreparedStatement being built.protected void
clearLastFunctionArgDivider(ASTFunctionCall functionExpression)
Clear last divider as we currently don't now position of argument until parent element is ended.protected void
processColumnWithQuoteSqlIdentifiers(DbAttribute dbAttr, Expression pathExp)
Adds special handling of CHAR columns.-
Methods inherited from class org.apache.cayenne.access.translator.select.TrimmingQualifierTranslator
getTrimFunction, processColumn, setTrimFunction
-
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, parenthesisNeeded, processRelTermination, setCaseInsensitive, setQualifier, setUseAliasForExpressions, startNode
-
Methods inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelper
appendDbPath, appendLikeEscapeCharacter, appendObjPath, appendPart, getDbEntity, getObjEntity, paramsDbType, processRelTermination, setForceJoinForRelations
-
-
-
-
Constructor Detail
-
DB2QualifierTranslator
public DB2QualifierTranslator(QueryAssembler queryAssembler, String trimFunction)
-
-
Method Detail
-
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 handleval
as a parameter to the PreparedStatement being built. Addsval
into QueryAssembler parameter list.- Overrides:
appendLiteralDirect
in classQueryAssemblerHelper
- Throws:
IOException
-
processColumnWithQuoteSqlIdentifiers
protected void processColumnWithQuoteSqlIdentifiers(DbAttribute dbAttr, Expression pathExp)
Description copied from class:TrimmingQualifierTranslator
Adds special handling of CHAR columns.- Overrides:
processColumnWithQuoteSqlIdentifiers
in classTrimmingQualifierTranslator
-
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 classQualifierTranslator
- Since:
- 4.0
-
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 classQualifierTranslator
- Since:
- 4.0
-
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 classQualifierTranslator
- Since:
- 4.0
-
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 classQualifierTranslator
- Since:
- 4.0
-
-