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
trimFunctionFields 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 DB2QualifierTranslator(QueryAssembler queryAssembler, String trimFunction) -
Method Summary
Modifier 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 voidappendLiteralDirect(Object val, DbAttribute attr, Expression parentExpression)Appends SQL code to the query buffer to handlevalas a parameter to the PreparedStatement being built.protected voidclearLastFunctionArgDivider(ASTFunctionCall functionExpression)Clear last divider as we currently don't now position of argument until parent element is ended.protected voidprocessColumnWithQuoteSqlIdentifiers(DbAttribute dbAttr, Expression pathExp)Adds special handling of CHAR columns.Methods inherited from class org.apache.cayenne.access.translator.select.TrimmingQualifierTranslator
getTrimFunction, processColumn, setTrimFunctionMethods 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, startNodeMethods inherited from class org.apache.cayenne.access.translator.select.QueryAssemblerHelper
appendDbPath, appendLikeEscapeCharacter, appendObjPath, appendPart, getDbEntity, getObjEntity, paramsDbType, processRelTermination, setForceJoinForRelations
-
Constructor Details
-
DB2QualifierTranslator
-
-
Method Details
-
appendLiteralDirect
protected void appendLiteralDirect(Object val, DbAttribute attr, Expression parentExpression) throws IOExceptionDescription copied from class:QueryAssemblerHelperAppends SQL code to the query buffer to handlevalas a parameter to the PreparedStatement being built. Addsvalinto QueryAssembler parameter list.- Overrides:
appendLiteralDirectin classQueryAssemblerHelper- Throws:
IOException
-
processColumnWithQuoteSqlIdentifiers
Description copied from class:TrimmingQualifierTranslatorAdds special handling of CHAR columns.- Overrides:
processColumnWithQuoteSqlIdentifiersin classTrimmingQualifierTranslator
-
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- Since:
- 4.0
-
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- Since:
- 4.0
-
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- Since:
- 4.0
-
appendExtractFunction
Description copied from class:QualifierTranslatorSpecial case for extract date/time parts functions as they have many variants- Overrides:
appendExtractFunctionin classQualifierTranslator- Since:
- 4.0
-