/** * Print the table's SQL from clause. */ public void printSQL(ExpressionSQLPrinter printer) throws IOException { this.subSelect.printSQL(printer); } }
/** * Translate an expression i.e. call the appropriate * translation method for the expression based on its * type. The translation method is then responsible * for translating the subexpressions. */ protected void translateExpression(Expression theExpression) { theExpression.printSQL(this); } }
/** * Print the table's SQL from clause. */ public void printSQL(ExpressionSQLPrinter printer) throws IOException { this.subSelect.printSQL(printer); } }
/** * Translate an expression i.e. call the appropriate * translation method for the expression based on its * type. The translation method is then responsible * for translating the subexpressions. */ protected void translateExpression(Expression theExpression) { theExpression.printSQL(this); } }
/** * INTERNAL: * Print SQL, this is called from functions, so must not be converted through the mapping. */ public void printSQLWithoutConversion(ExpressionSQLPrinter printer) { printSQL(printer); }
/** * Translate an expression i.e. call the appropriate * translation method for the expression based on its * type. The translation method is then responsible * for translating the subexpressions. */ protected void translateExpression(Expression theExpression) { theExpression.printSQL(this); } }
@Override public String getArgument(int index) { String argumentString = argumentStrings[index]; if (argumentString == null) { StringWriter writer = (StringWriter) expressionSQLPrinter.getWriter(); writer.getBuffer().setLength(0); arguments.get(index).printSQL(expressionSQLPrinter); argumentStrings[index] = argumentString = writer.toString(); } return argumentString; }
@Override public String getArgument(int index) { String argumentString = argumentStrings[index]; if (argumentString == null) { StringWriter writer = (StringWriter) expressionSQLPrinter.getWriter(); writer.getBuffer().setLength(0); arguments.get(index).printSQL(expressionSQLPrinter); argumentStrings[index] = argumentString = writer.toString(); } return argumentString; }
/** * This method will append the order clause to the end of the * select statement. */ public void appendOrderClauseToWriter(ExpressionSQLPrinter printer) throws IOException { if (!hasOrderByExpressions()) { return; } printer.getWriter().write(" ORDER BY "); for (Iterator expressionsEnum = getOrderByExpressions().iterator(); expressionsEnum.hasNext();) { Expression expression = (Expression)expressionsEnum.next(); expression.printSQL(printer); if (expressionsEnum.hasNext()) { printer.getWriter().write(", "); } } }
/** * This method will append the order clause to the end of the * select statement. */ public void appendOrderClauseToWriter(ExpressionSQLPrinter printer) throws IOException { if (!hasOrderByExpressions()) { return; } printer.getWriter().write(" ORDER BY "); for (Iterator expressionsEnum = getOrderByExpressions().iterator(); expressionsEnum.hasNext();) { Expression expression = (Expression)expressionsEnum.next(); expression.printSQL(printer); if (expressionsEnum.hasNext()) { printer.getWriter().write(", "); } } }
/** * This method will append the order clause to the end of the * select statement. */ public void appendOrderClauseToWriter(ExpressionSQLPrinter printer) throws IOException { if (!hasOrderByExpressions()) { return; } printer.getWriter().write(" ORDER BY "); for (Iterator expressionsEnum = getOrderByExpressions().iterator(); expressionsEnum.hasNext();) { Expression expression = (Expression)expressionsEnum.next(); expression.printSQL(printer); if (expressionsEnum.hasNext()) { printer.getWriter().write(", "); } } }
/** * Print the outer join ON clause. * Some databases do not allow brackets. */ protected void printOnClause(Expression onClause, ExpressionSQLPrinter printer, DatabasePlatform platform) throws IOException { printer.getWriter().write(" ON "); if (!platform.supportsOuterJoinsWithBrackets()) { ((RelationExpression)onClause).printSQLNoParens(printer); } else { onClause.printSQL(printer); } }
/** * Print the outer join ON clause. * Some databases do not allow brackets. */ protected void printOnClause(Expression onClause, ExpressionSQLPrinter printer, DatabasePlatform platform) throws IOException { printer.getWriter().write(" ON "); if (!platform.supportsOuterJoinsWithBrackets()) { ((RelationExpression)onClause).printSQLNoParens(printer); } else { onClause.printSQL(printer); } }
/** * This method will append the union clause to the end of the * select statement. */ public void appendUnionClauseToWriter(ExpressionSQLPrinter printer) throws IOException { if (!hasUnionExpressions()) { return; } for (Iterator expressionsEnum = getUnionExpressions().iterator(); expressionsEnum.hasNext();) { Expression expression = (Expression)expressionsEnum.next(); printer.getWriter().write(" "); expression.printSQL(printer); printer.printString(")"); } }
/** * This method will append the union clause to the end of the * select statement. */ public void appendUnionClauseToWriter(ExpressionSQLPrinter printer) throws IOException { if (!hasUnionExpressions()) { return; } for (Iterator expressionsEnum = getUnionExpressions().iterator(); expressionsEnum.hasNext();) { Expression expression = (Expression)expressionsEnum.next(); printer.getWriter().write(" "); expression.printSQL(printer); printer.printString(")"); } }
/** * Print the outer join ON clause. * Some databases do not allow brackets. */ protected void printOnClause(Expression onClause, ExpressionSQLPrinter printer, DatabasePlatform platform) throws IOException { printer.getWriter().write(" ON "); if (!platform.supportsOuterJoinsWithBrackets()) { ((RelationExpression)onClause).printSQLNoParens(printer); } else { onClause.printSQL(printer); } }
/** * INTERNAL: * Print SQL */ public void printSQL(ExpressionSQLPrinter printer) { // If both sides are parameters, some databases don't allow binding. if (printer.getPlatform().isDynamicSQLRequiredForFunctions() && ((this.firstChild.isParameterExpression() || this.firstChild.isConstantExpression()) && (this.secondChild.isParameterExpression() || this.secondChild.isConstantExpression()))) { printer.getCall().setUsesBinding(false); } if (isEqualNull(printer)) { this.firstChild.isNull().printSQL(printer); } else if (isNotEqualNull(printer)) { this.firstChild.notNull().printSQL(printer); } else { super.printSQL(printer); } }
/** * INTERNAL: * Print SQL onto the stream, using the ExpressionPrinter for context */ public void printSQL(ExpressionSQLPrinter printer) { // to support custom types, print expressions derived from field expressions and direct query keys with their aliases // Note: This is also necessary for TableExpressions, but they are taken care of by their associated FieldExpression. if (getBaseExpression() != null && getBaseExpression().isFieldExpression() || (getBaseExpression().isQueryKeyExpression() && ((QueryKeyExpression)getBaseExpression()).isAttribute())){ getBaseExpression().printSQL(printer); printer.printString("."); } printer.printField(getAliasedField()); }
/** * INTERNAL: * Print SQL onto the stream, using the ExpressionPrinter for context */ public void printSQL(ExpressionSQLPrinter printer) { // to support custom types, print expressions derived from field expressions and direct query keys with their aliases // Note: This is also necessary for TableExpressions, but they are taken care of by their associated FieldExpression. if (getBaseExpression() != null && getBaseExpression().isFieldExpression() || (getBaseExpression().isQueryKeyExpression() && ((QueryKeyExpression)getBaseExpression()).isAttribute())){ getBaseExpression().printSQL(printer); printer.printString("."); } printer.printField(getAliasedField()); }
/** * INTERNAL: * Print SQL onto the stream, using the ExpressionPrinter for context */ public void printSQL(ExpressionSQLPrinter printer) { // to support custom types, print expressions derived from field expressions and direct query keys with their aliases // Note: This is also necessary for TableExpressions, but they are taken care of by their associated FieldExpression. if (getBaseExpression() != null && getBaseExpression().isFieldExpression() || (getBaseExpression().isQueryKeyExpression() && ((QueryKeyExpression)getBaseExpression()).isAttribute())){ getBaseExpression().printSQL(printer); printer.printString("."); } printer.printField(getAliasedField()); }