| Modifier and Type | Field and Description |
|---|---|
protected Provider<DbAdapter> |
adapterProvider |
protected JdbcEventLogger |
logger |
protected PkGenerator |
pkGenerator |
| Constructor and Description |
|---|
AutoAdapter(Provider<DbAdapter> adapterProvider,
JdbcEventLogger logger)
Creates an
AutoAdapter based on a delegate adapter obtained via
"adapterProvider". |
| Modifier and Type | Method and Description |
|---|---|
void |
bindParameter(PreparedStatement statement,
ParameterBinding parameterBinding)
Binds an object value to PreparedStatement's parameter.
|
DbAttribute |
buildAttribute(String name,
String typeName,
int type,
int size,
int precision,
boolean allowNulls)
Creates and returns a DbAttribute based on supplied parameters (usually
obtained from database meta data).
|
String |
createFkConstraint(DbRelationship rel)
Returns a SQL string that can be used to create a foreign key constraint
for the relationship, or null if foreign keys are not supported.
|
String |
createTable(DbEntity entity)
Returns a SQL string that can be used to create database table
corresponding to
entity parameter. |
void |
createTableAppendColumn(StringBuffer sqlBuffer,
DbAttribute column)
Append the column type part of a "create table" to the given
StringBuffer |
String |
createUniqueConstraint(DbEntity source,
Collection<DbAttribute> columns)
Returns a DDL string to create a unique constraint over a set of columns,
or null if the unique constraints are not supported.
|
Collection<String> |
dropTableStatements(DbEntity table)
Returns a collection of SQL statements needed to drop a database table.
|
String[] |
externalTypesForJdbcType(int type)
Returns an array of RDBMS types that can be used with JDBC
type. |
SQLAction |
getAction(Query query,
DataNode node)
Returns an instance of SQLAction that should handle the query.
|
protected DbAdapter |
getAdapter()
Returns a proxied DbAdapter, lazily creating it on first invocation.
|
String |
getBatchTerminator()
Returns a String used to terminate a batch in command-line tools.
|
EJBQLTranslatorFactory |
getEjbqlTranslatorFactory()
Returns a translator factory for EJBQL to SQL translation.
|
ExtendedTypeMap |
getExtendedTypes()
Returns a map of ExtendedTypes that is used to translate values between
Java and JDBC layer.
|
PkGenerator |
getPkGenerator()
Returns a primary key generator.
|
QualifierTranslator |
getQualifierTranslator(QueryAssembler queryAssembler) |
QuotingStrategy |
getQuotingStrategy()
Returns SQL identifier quoting strategy object
|
QuotingStrategy |
getQuotingStrategy(boolean isQuoteStrategy)
Deprecated.
since 4.0
|
SelectTranslator |
getSelectTranslator(SelectQuery<?> query,
EntityResolver entityResolver)
Returns a SelectTranslator that works with the adapter target database.
|
protected DbAdapter |
loadAdapter()
Loads underlying DbAdapter delegate.
|
void |
setPkGenerator(PkGenerator pkGenerator)
Sets a PK generator override.
|
boolean |
supportsBatchUpdates()
Returns
true if the target database supports batch updates. |
boolean |
supportsCatalogsOnReverseEngineering()
Returns true if a target database supports catalogs on reverse
engineering.
|
boolean |
supportsGeneratedKeys()
Returns true if a target database supports key autogeneration.
|
boolean |
supportsUniqueConstraints()
Returns true if a target database supports UNIQUE constraints.
|
String |
tableTypeForTable()
Returns the name of the table type (as returned by
DatabaseMetaData.getTableTypes) for a simple user table. |
String |
tableTypeForView()
Returns the name of the table type (as returned by
DatabaseMetaData.getTableTypes) for a view table. |
boolean |
typeSupportsLength(int type) |
DbAdapter |
unwrap()
Allows the users to get access to the adapter decorated by a given
adapter.
|
protected PkGenerator pkGenerator
protected JdbcEventLogger logger
public AutoAdapter(Provider<DbAdapter> adapterProvider, JdbcEventLogger logger)
AutoAdapter based on a delegate adapter obtained via
"adapterProvider".protected DbAdapter getAdapter()
protected DbAdapter loadAdapter()
public SelectTranslator getSelectTranslator(SelectQuery<?> query, EntityResolver entityResolver)
DbAdaptergetSelectTranslator in interface DbAdapterpublic String getBatchTerminator()
DbAdaptergetBatchTerminator in interface DbAdapterpublic QualifierTranslator getQualifierTranslator(QueryAssembler queryAssembler)
getQualifierTranslator in interface DbAdapterpublic SQLAction getAction(Query query, DataNode node)
DbAdapterpublic boolean supportsUniqueConstraints()
DbAdaptersupportsUniqueConstraints in interface DbAdapterpublic boolean supportsCatalogsOnReverseEngineering()
DbAdaptersupportsCatalogsOnReverseEngineering in interface DbAdapterpublic boolean supportsGeneratedKeys()
DbAdaptersupportsGeneratedKeys in interface DbAdapterpublic boolean supportsBatchUpdates()
DbAdaptertrue if the target database supports batch updates.supportsBatchUpdates in interface DbAdapterpublic boolean typeSupportsLength(int type)
typeSupportsLength in interface DbAdapterpublic Collection<String> dropTableStatements(DbEntity table)
DbAdapterdropTableStatements in interface DbAdapterpublic String createTable(DbEntity entity)
DbAdapterentity parameter.createTable in interface DbAdapterpublic String createUniqueConstraint(DbEntity source, Collection<DbAttribute> columns)
DbAdaptercreateUniqueConstraint in interface DbAdapterpublic String createFkConstraint(DbRelationship rel)
DbAdaptercreateFkConstraint in interface DbAdapterpublic String[] externalTypesForJdbcType(int type)
DbAdaptertype. Valid JDBC types are defined in java.sql.Types.externalTypesForJdbcType in interface DbAdapterpublic ExtendedTypeMap getExtendedTypes()
DbAdaptergetExtendedTypes in interface DbAdapterpublic PkGenerator getPkGenerator()
getPkGenerator in interface DbAdapterpublic void setPkGenerator(PkGenerator pkGenerator)
public DbAttribute buildAttribute(String name, String typeName, int type, int size, int precision, boolean allowNulls)
DbAdapterbuildAttribute in interface DbAdaptername - database column nametypeName - database specific type name, may be used as a hint to
determine the right JDBC type.type - JDBC column typesize - database column size (ignored if less than zero)precision - database column scale, i.e. the number of decimal digits
(ignored if less than zero)allowNulls - database column nullable parameterpublic void bindParameter(PreparedStatement statement, ParameterBinding parameterBinding) throws SQLException, Exception
DbAdapterbindParameter in interface DbAdapterSQLExceptionExceptionpublic String tableTypeForTable()
DbAdapterDatabaseMetaData.getTableTypes) for a simple user table.tableTypeForTable in interface DbAdapterpublic String tableTypeForView()
DbAdapterDatabaseMetaData.getTableTypes) for a view table.tableTypeForView in interface DbAdapterpublic void createTableAppendColumn(StringBuffer sqlBuffer, DbAttribute column)
DbAdapterStringBuffercreateTableAppendColumn in interface DbAdaptersqlBuffer - the StringBuffer to append the column type tocolumn - the DbAttribute defining the column to append type for@Deprecated public QuotingStrategy getQuotingStrategy(boolean isQuoteStrategy)
getQuotingStrategy in interface DbAdapterpublic QuotingStrategy getQuotingStrategy()
DbAdaptergetQuotingStrategy in interface DbAdapterpublic DbAdapter unwrap()
DbAdapterpublic EJBQLTranslatorFactory getEjbqlTranslatorFactory()
DbAdaptergetEjbqlTranslatorFactory in interface DbAdapterCopyright © 2001–2023 Apache Cayenne. All rights reserved.