org.eclipse.net4j.spi.db
Class DBAdapter

java.lang.Object
  extended by org.eclipse.net4j.spi.db.DBAdapter
All Implemented Interfaces:
IDBAdapter

public abstract class DBAdapter
extends java.lang.Object
implements IDBAdapter


Field Summary
 
Fields inherited from interface org.eclipse.net4j.db.IDBAdapter
REGISTRY
 
Constructor Summary
DBAdapter(java.lang.String name, java.lang.String version)
           
 
Method Summary
protected  void addIndexField(java.lang.StringBuilder builder, IDBField field)
           
 void appendFieldNames(java.lang.Appendable appendable, IDBTable table)
           
 void appendValue(java.lang.StringBuilder builder, IDBField field, java.lang.Object value)
           
protected  java.lang.String createConstraints(org.eclipse.net4j.internal.db.ddl.DBTable table)
           
protected  java.lang.String createFieldDefinition(org.eclipse.net4j.internal.db.ddl.DBField field)
           
protected  void createIndex(org.eclipse.net4j.internal.db.ddl.DBIndex index, java.sql.Statement statement, int num)
           
 boolean createTable(IDBTable table, java.sql.Statement statement)
           
 java.util.Set<IDBTable> createTables(java.lang.Iterable<? extends IDBTable> tables, java.sql.Connection connection)
           
protected  void doCreateTable(org.eclipse.net4j.internal.db.ddl.DBTable table, java.sql.Statement statement)
           
 boolean dropTable(IDBTable table, java.sql.Statement statement)
           
 java.util.Collection<IDBTable> dropTables(java.lang.Iterable<? extends IDBTable> tables, java.sql.Connection connection)
           
protected  java.lang.String getDropTableSQL(IDBTable table)
           
protected  int getMaximumFieldNameLength()
           
protected  int getMaximumTableNameLength()
           
 java.lang.String getName()
           
 java.lang.String[] getSQL92ReservedWords()
           
protected  java.lang.String getTypeName(IDBField field)
           
 java.lang.String getVersion()
           
 boolean isReservedWord(java.lang.String word)
           
 boolean isTypeIndexable(DBType type)
           
 java.lang.String mangleFieldName(java.lang.String name, int attempt)
           
protected  java.lang.String mangleName(java.lang.String name, int max, int attempt)
           
 java.lang.String mangleTableName(java.lang.String name, int attempt)
           
 java.lang.String toString()
           
protected  void validateTable(org.eclipse.net4j.internal.db.ddl.DBTable table, java.sql.Statement statement)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.net4j.db.IDBAdapter
createJDBCDataSource, getJDBCDriver, getReservedWords
 

Constructor Detail

DBAdapter

public DBAdapter(java.lang.String name,
                 java.lang.String version)
Method Detail

getName

public java.lang.String getName()
Specified by:
getName in interface IDBAdapter

getVersion

public java.lang.String getVersion()
Specified by:
getVersion in interface IDBAdapter

createTables

public java.util.Set<IDBTable> createTables(java.lang.Iterable<? extends IDBTable> tables,
                                            java.sql.Connection connection)
                                     throws DBException
Specified by:
createTables in interface IDBAdapter
Throws:
DBException

createTable

public boolean createTable(IDBTable table,
                           java.sql.Statement statement)
                    throws DBException
Specified by:
createTable in interface IDBAdapter
Throws:
DBException

dropTables

public java.util.Collection<IDBTable> dropTables(java.lang.Iterable<? extends IDBTable> tables,
                                                 java.sql.Connection connection)
                                          throws DBException
Specified by:
dropTables in interface IDBAdapter
Throws:
DBException

dropTable

public boolean dropTable(IDBTable table,
                         java.sql.Statement statement)
Specified by:
dropTable in interface IDBAdapter

getDropTableSQL

protected java.lang.String getDropTableSQL(IDBTable table)

mangleTableName

public java.lang.String mangleTableName(java.lang.String name,
                                        int attempt)
Specified by:
mangleTableName in interface IDBAdapter

mangleFieldName

public java.lang.String mangleFieldName(java.lang.String name,
                                        int attempt)
Specified by:
mangleFieldName in interface IDBAdapter

appendValue

public void appendValue(java.lang.StringBuilder builder,
                        IDBField field,
                        java.lang.Object value)
Specified by:
appendValue in interface IDBAdapter

isTypeIndexable

public boolean isTypeIndexable(DBType type)
Specified by:
isTypeIndexable in interface IDBAdapter

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

doCreateTable

protected void doCreateTable(org.eclipse.net4j.internal.db.ddl.DBTable table,
                             java.sql.Statement statement)
                      throws java.sql.SQLException
Throws:
java.sql.SQLException

createIndex

protected void createIndex(org.eclipse.net4j.internal.db.ddl.DBIndex index,
                           java.sql.Statement statement,
                           int num)
                    throws java.sql.SQLException
Throws:
java.sql.SQLException

addIndexField

protected void addIndexField(java.lang.StringBuilder builder,
                             IDBField field)

createConstraints

protected java.lang.String createConstraints(org.eclipse.net4j.internal.db.ddl.DBTable table)

createFieldDefinition

protected java.lang.String createFieldDefinition(org.eclipse.net4j.internal.db.ddl.DBField field)

getTypeName

protected java.lang.String getTypeName(IDBField field)

getMaximumTableNameLength

protected int getMaximumTableNameLength()

getMaximumFieldNameLength

protected int getMaximumFieldNameLength()

mangleName

protected java.lang.String mangleName(java.lang.String name,
                                      int max,
                                      int attempt)

getSQL92ReservedWords

public java.lang.String[] getSQL92ReservedWords()

isReservedWord

public boolean isReservedWord(java.lang.String word)
Specified by:
isReservedWord in interface IDBAdapter

validateTable

protected void validateTable(org.eclipse.net4j.internal.db.ddl.DBTable table,
                             java.sql.Statement statement)
                      throws DBException
Throws:
DBException

appendFieldNames

public void appendFieldNames(java.lang.Appendable appendable,
                             IDBTable table)

Copyright (c) 2004 - 2008 Eike Stepper, Germany.
All Rights Reserved.