public abstract class AbstractQueryRewriter extends Object implements IQueryRewriter
Constructor and Description |
---|
AbstractQueryRewriter(JdbcDataContext dataContext) |
Modifier and Type | Method and Description |
---|---|
protected Query |
beforeRewrite(Query query)
Method to modify query before rewriting begins.
|
ColumnType |
getColumnType(int jdbcType,
String nativeType,
Integer columnSize)
Gets the column type for a specific JDBC type (as defined in
Types ), native type name and column size. |
JdbcDataContext |
getDataContext() |
Object |
getResultSetValue(ResultSet resultSet,
int columnIndex,
Column column)
Retrieves a value from a JDBC
ResultSet when the anticipated value is mapped to a particular column. |
boolean |
isSchemaIncludedInColumnPaths() |
protected boolean |
isSupportedVersion(String databaseProductName,
int databaseVersion) |
boolean |
isTransactional()
Determines if the JDBC data source supports transactions or not.
|
String |
rewriteColumnType(ColumnType columnType,
Integer columnSize)
Rewrites the name of a column type, as it is written in CREATE TABLE
statements.
|
protected String |
rewriteColumnTypeInternal(String columnType,
Object columnParameter) |
String |
rewriteFilterItem(FilterItem item) |
protected String |
rewriteFromClause(Query query,
FromClause fromClause) |
String |
rewriteFromItem(FromItem item) |
protected String |
rewriteFromItem(Query query,
FromItem item) |
protected String |
rewriteGroupByClause(Query query,
GroupByClause groupByClause) |
protected String |
rewriteGroupByItem(Query query,
GroupByItem item) |
protected String |
rewriteHavingClause(Query query,
FilterClause havingClause) |
protected String |
rewriteOrderByClause(Query query,
OrderByClause orderByClause) |
protected String |
rewriteOrderByItem(Query query,
OrderByItem item) |
String |
rewriteQuery(Query query) |
protected String |
rewriteSelectClause(Query query,
SelectClause selectClause) |
protected String |
rewriteSelectItem(Query query,
SelectItem item) |
protected String |
rewriteWhereClause(Query query,
FilterClause whereClause) |
void |
setStatementParameter(PreparedStatement st,
int valueIndex,
Column column,
Object value)
Method which handles the action of setting a parameterized value on a
statement.
|
protected Time |
toTime(Date value) |
protected Timestamp |
toTimestamp(Date value) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
escapeQuotes, isAggregateFunctionSupported, isFirstRowSupported, isMaxRowsSupported, isScalarFunctionSupported
public AbstractQueryRewriter(JdbcDataContext dataContext)
public JdbcDataContext getDataContext()
public boolean isTransactional()
IQueryRewriter
isTransactional
in interface IQueryRewriter
public ColumnType getColumnType(int jdbcType, String nativeType, Integer columnSize)
IQueryRewriter
Types
), native type name and column size.getColumnType
in interface IQueryRewriter
public String rewriteQuery(Query query)
rewriteQuery
in interface IQueryRewriter
public boolean isSchemaIncludedInColumnPaths()
protected Query beforeRewrite(Query query)
query
- public String rewriteColumnType(ColumnType columnType, Integer columnSize)
IQueryRewriter
rewriteColumnType
in interface IQueryRewriter
columnType
- the (non-null) ColumnType
to rewritecolumnSize
- the (possibly null) column size that may or may not have been
specifiedprotected String rewriteColumnTypeInternal(String columnType, Object columnParameter)
protected String rewriteOrderByClause(Query query, OrderByClause orderByClause)
public String rewriteFromItem(FromItem item)
rewriteFromItem
in interface IQueryRewriter
protected String rewriteOrderByItem(Query query, OrderByItem item)
protected String rewriteHavingClause(Query query, FilterClause havingClause)
protected String rewriteGroupByClause(Query query, GroupByClause groupByClause)
protected String rewriteGroupByItem(Query query, GroupByItem item)
protected String rewriteWhereClause(Query query, FilterClause whereClause)
public String rewriteFilterItem(FilterItem item)
rewriteFilterItem
in interface IQueryRewriter
protected String rewriteFromClause(Query query, FromClause fromClause)
protected String rewriteSelectClause(Query query, SelectClause selectClause)
protected String rewriteSelectItem(Query query, SelectItem item)
public void setStatementParameter(PreparedStatement st, int valueIndex, Column column, Object value) throws SQLException
IQueryRewriter
PreparedStatement.setObject(int, Object)
method but for some
types we use more specific setter methods.setStatementParameter
in interface IQueryRewriter
SQLException
public Object getResultSetValue(ResultSet resultSet, int columnIndex, Column column) throws SQLException
IQueryRewriter
ResultSet
when the anticipated value is mapped to a particular column.getResultSetValue
in interface IQueryRewriter
SQLException
protected boolean isSupportedVersion(String databaseProductName, int databaseVersion)
Copyright © 2007–2017 The Apache Software Foundation. All rights reserved.