bloritsch 01/11/05 05:45:27
Modified: . build.xml
src/java/org/apache/avalon/excalibur/datasource
Jdbc3Connection.java JdbcConnectionFactory.java
Added: src/java/org/apache/avalon/excalibur/datasource
AbstractJdbcConnection.java JdbcConnection.java
Removed: src/java/org/apache/avalon/excalibur/datasource
Jdbc2Connection.java
Log:
Change to DataSource heirarchy. Including conditional compile
Revision Changes Path
1.74 +53 -11 jakarta-avalon-excalibur/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/build.xml,v
retrieving revision 1.73
retrieving revision 1.74
diff -u -r1.73 -r1.74
--- build.xml 2001/10/31 19:32:17 1.73
+++ build.xml 2001/11/05 13:45:27 1.74
@@ -46,7 +46,6 @@
<!-- Set the properties for intermediate directory -->
<property name="build.dir" value="build"/>
<property name="build.lib" value="${build.dir}/lib"/>
- <property name="build.src" value="${build.dir}/src"/>
<property name="build.classes" value="${build.dir}/classes"/>
<property name="build.scratchpad" value="${build.dir}/scratchpad"/>
<property name="build.javadocs" value="${build.dir}/javadocs"/>
@@ -185,18 +184,20 @@
<property name="j2ee.present" value="true"/>
</target>
- <target name="jdbc2" unless="jdbc3.present">
- <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/Jdbc2Connection.java"
-
tofile="${build.src}/org/apache/avalon/excalibur/datasource/JdbcConnection.java"/>
+ <target name="prepare-jdbc" depends="filter-jdbc,nofilter-jdbc"/>
+
+ <target name="filter-jdbc" unless="jdbc3.present">
+ <filter token="JDBC3_START" value="/*"/>
+ <filter token="JDBC3_END" value="*/"/>
</target>
- <target name="jdbc3" if="jdbc3.present">
- <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/Jdbc3Connection.java"
-
tofile="${build.src}/org/apache/avalon/excalibur/datasource/JdbcConnection.java"
/>
+ <target name="nofilter-jdbc" if="jdbc3.present">
+ <filter token="JDBC3_START" value=""/>
+ <filter token="JDBC3_END" value=""/>
</target>
<!-- Prepares the build directory -->
- <target name="prepare"
depends="check-datasource,setup-properties,jdbc2,jdbc3">
+ <target name="prepare"
depends="check-datasource,setup-properties,prepare-jdbc">
<tstamp/>
<mkdir dir="${build.dir}"/>
</target>
@@ -207,6 +208,28 @@
<mkdir dir="${build.classes}"/>
<mkdir dir="${build.scratchpad}"/>
+ <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.java"
+
tofile="${java.dir}/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.tmp"
+ filtering="no"
+ overwrite="yes"
+ preservelastmodified="yes"/>
+ <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.tmp"
+
tofile="${java.dir}/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.java"
+ filtering="yes"
+ overwrite="yes"
+ preservelastmodified="yes"/>
+
+ <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/JdbcConnection.java"
+
tofile="${java.dir}/org/apache/avalon/excalibur/datasource/JdbcConnection.tmp"
+ filtering="no"
+ overwrite="yes"
+ preservelastmodified="yes"/>
+ <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/JdbcConnection.tmp"
+
tofile="${java.dir}/org/apache/avalon/excalibur/datasource/JdbcConnection.java"
+ filtering="yes"
+ overwrite="yes"
+ preservelastmodified="yes"/>
+
<copy todir="${build.scratchpad}">
<fileset dir="${scratchpad.dir}">
<include name="**/test/**"/>
@@ -235,16 +258,18 @@
deprecation="${build.deprecation}">
<classpath refid="project.class.path" />
<src path="${test.dir}"/>
- <src path="${build.src}"/>
<exclude
name="org/apache/avalon/excalibur/datasource/J2eeDataSource.java"
unless="j2ee.present"/>
<exclude
name="org/apache/avalon/excalibur/datasource/InformixDataSource.java"
unless="informix.present"/>
<exclude
name="org/apache/avalon/excalibur/datasource/Jdbc2Connection.java"/>
- <exclude name="**/Jaxen*" unless="jaxen.present"/>
+ <exclude name="**/Jaxen*"
+ unless="jaxen.present"/>
<exclude
name="org/apache/avalon/excalibur/xml/xpath/XPathProcessorImpl.java"
unless="xpath.present"/>
- <exclude
name="org/apache/avalon/excalibur/datasource/Jdbc3Connection.java"/>
+ <exclude
name="org/apache/avalon/excalibur/datasource/Jdbc3Connection.java"
+ unless="jdbc3.present"/>
+ <exclude name="java/sql/Savepoint.java" if="jdbc3.present"/>
<exclude
name="org/apache/avalon/excalibur/logger/factory/ServletTargetFactory.java"
unless="servlet.present"/>
<exclude
name="org/apache/avalon/excalibur/logger/factory/JMSTargetFactory.java"
@@ -269,6 +294,23 @@
<classpath refid="project.class.path" />
</rmic>
+ <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.tmp"
+
tofile="${java.dir}/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.java"
+ filtering="no"
+ overwrite="yes"
+ preservelastmodified="yes"/>
+
+ <copy
file="${java.dir}/org/apache/avalon/excalibur/datasource/JdbcConnection.tmp"
+
tofile="${java.dir}/org/apache/avalon/excalibur/datasource/JdbcConnection.java"
+ filtering="no"
+ overwrite="yes"
+ preservelastmodified="yes"/>
+
+ <delete>
+ <fileset dir="${java.dir}/org/apache/avalon/excalibur/datasource">
+ <include name="*.tmp"/>
+ </fileset>
+ </delete>
</target>
<target name="test" depends="check"/>
1.8 +29 -249
jakarta-avalon-excalibur/src/java/org/apache/avalon/excalibur/datasource/Jdbc3Connection.java
Index: Jdbc3Connection.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/src/java/org/apache/avalon/excalibur/datasource/Jdbc3Connection.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- Jdbc3Connection.java 2001/11/01 14:25:57 1.7
+++ Jdbc3Connection.java 2001/11/05 13:45:27 1.8
@@ -16,11 +16,6 @@
import java.sql.Statement;
import java.sql.Savepoint;
import java.util.Map;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
-import org.apache.avalon.framework.activity.Disposable;
-import org.apache.avalon.excalibur.pool.Recyclable;
-import org.apache.avalon.excalibur.pool.Pool;
-import org.apache.avalon.framework.logger.Logger;
/**
* The Connection object used in conjunction with the JdbcDataSource
@@ -31,94 +26,17 @@
* total number of Connection objects that are created.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
- * @version CVS $Revision: 1.7 $ $Date: 2001/11/01 14:25:57 $
+ * @version CVS $Revision: 1.8 $ $Date: 2001/11/05 13:45:27 $
* @since 4.0
*/
-public class JdbcConnection
- extends AbstractLogEnabled
- implements Connection, Recyclable, Disposable
+public class Jdbc3Connection
+ extends AbstractJdbcConnection
{
- protected Connection m_connection;
- protected Pool m_pool;
- protected PreparedStatement m_test_statement;
- protected SQLException m_test_exception;
- protected int m_num_uses = 15;
- protected final boolean m_isJDBC3;
-
- /**
- * @deprecated Use the version with keepAlive specified
- */
- public JdbcConnection( final Connection connection, final boolean oradb )
- {
- this(connection, (oradb) ? "select 1 from dual" : "select 1");
- }
-
- public JdbcConnection( final Connection connection, final String
keepAlive )
- {
- m_connection = connection;
-
- // subclasses can override initialize()
- this.initialize();
-
- if (null != keepAlive && "".equals(keepAlive.trim()))
- {
- try
- {
- m_test_statement = prepareStatement(keepAlive);
- }
- catch ( final SQLException se )
- {
- m_test_statement = null;
- m_test_exception = se;
- }
- }
- else
- {
- m_test_statement = null;
- m_test_exception = null;
- }
-
- boolean use3 = false;
- try
- {
- java.lang.reflect.Method meth =
m_connection.getClass().getMethod("getHoldability", new Class[] {});
- use3 = true;
- }
- catch (Exception e)
- {
- use3 = false;
- }
-
- m_isJDBC3 = use3;
- }
-
- /**
- * Extend this for connection initialization--only needed for some
drivers.
- */
- public void initialize()
- {
- }
-
- protected void setPool(Pool pool)
+ public Jdbc3Connection( final Connection connection, final String
keepAlive )
{
- this.m_pool = pool;
+ super( connection, keepAlive );
}
- public final void enableLogging( final Logger log )
- {
- super.enableLogging(log);
-
- if (m_test_statement == null)
- {
- if (getLogger().isWarnEnabled())
- {
- getLogger().warn("Could not prepare test statement",
m_test_exception);
- }
-
- m_test_exception = null;
- }
- }
-
public final Statement createStatement()
throws SQLException
{
@@ -167,60 +85,6 @@
m_connection.rollback();
}
- public final void close()
- throws SQLException
- {
- clearWarnings();
- m_pool.put( this );
- }
-
- public final void dispose()
- {
- try { m_connection.close(); }
- catch( final SQLException se )
- {
- if (getLogger().isWarnEnabled())
- {
- getLogger().warn( "Could not close connection", se );
- }
- }
- }
-
- public final void recycle() {
- this.m_num_uses--;
- this.m_test_exception = null;
- }
-
- public final boolean isClosed()
- throws SQLException
- {
- if ( m_connection.isClosed())
- {
- return true;
- }
-
- if ( this.m_num_uses <= 0 )
- {
- this.dispose();
- return true;
- }
-
- if (m_test_statement != null)
- {
- try
- {
- m_test_statement.executeQuery();
- }
- catch (final SQLException se)
- {
- this.dispose();
- return true;
- }
- }
-
- return false;
- }
-
public final DatabaseMetaData getMetaData()
throws SQLException
{
@@ -307,85 +171,43 @@
public final void setTypeMap( final Map map )
throws SQLException
{
- m_connection.setTypeMap( map );
+ m_connection.setTypeMap( map );
}
public final void setHoldability(int holdability)
throws SQLException
{
- if (m_isJDBC3)
- {
- m_connection.setHoldability(holdability);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ m_connection.setHoldability(holdability);
}
public final int getHoldability()
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.getHoldability();
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.getHoldability();
}
public final Savepoint setSavepoint()
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.setSavepoint();
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.setSavepoint();
}
public final Savepoint setSavepoint(String savepoint)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.setSavepoint(savepoint);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.setSavepoint(savepoint);
}
public final void rollback(Savepoint savepoint)
throws SQLException
{
- if (m_isJDBC3)
- {
- m_connection.rollback(savepoint);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ m_connection.rollback(savepoint);
}
public final void releaseSavepoint(Savepoint savepoint)
throws SQLException
{
- if (m_isJDBC3)
- {
- m_connection.releaseSavepoint(savepoint);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ m_connection.releaseSavepoint(savepoint);
}
public final Statement createStatement(int resulSetType,
@@ -393,16 +215,9 @@
int resultSetHoldability)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.createStatement(resulSetType,
- resultSetConcurrency,
- resultSetHoldability);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.createStatement(resulSetType,
+ resultSetConcurrency,
+ resultSetHoldability);
}
public final PreparedStatement prepareStatement(String sql,
@@ -411,17 +226,10 @@
int resultSetHoldability)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.prepareStatement(sql,
- resulSetType,
- resultSetConcurrency,
- resultSetHoldability);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.prepareStatement(sql,
+ resulSetType,
+ resultSetConcurrency,
+ resultSetHoldability);
}
public final CallableStatement prepareCall(String sql,
@@ -430,61 +238,33 @@
int resultSetHoldability)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.prepareCall(sql,
- resulSetType,
- resultSetConcurrency,
- resultSetHoldability);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.prepareCall(sql,
+ resulSetType,
+ resultSetConcurrency,
+ resultSetHoldability);
}
public final PreparedStatement prepareStatement(String sql,
int autoGeneratedKeys)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.prepareStatement(sql,
- autoGeneratedKeys);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.prepareStatement(sql,
+ autoGeneratedKeys);
}
public final PreparedStatement prepareStatement(String sql,
int[] columnIndexes)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.prepareStatement(sql,
- columnIndexes);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.prepareStatement(sql,
+ columnIndexes);
}
public final PreparedStatement prepareStatement(String sql,
String[] columnNames)
throws SQLException
{
- if (m_isJDBC3)
- {
- return m_connection.prepareStatement(sql,
- columnNames);
- }
- else
- {
- throw new SQLException("Not a JDBC 3.0 compliant Connection");
- }
+ return m_connection.prepareStatement(sql,
+ columnNames);
}
}
1.7 +20 -5
jakarta-avalon-excalibur/src/java/org/apache/avalon/excalibur/datasource/JdbcConnectionFactory.java
Index: JdbcConnectionFactory.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/src/java/org/apache/avalon/excalibur/datasource/JdbcConnectionFactory.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- JdbcConnectionFactory.java 2001/11/01 14:25:57 1.6
+++ JdbcConnectionFactory.java 2001/11/05 13:45:27 1.7
@@ -18,7 +18,7 @@
* The Factory implementation for JdbcConnections.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
- * @version CVS $Revision: 1.6 $ $Date: 2001/11/01 14:25:57 $
+ * @version CVS $Revision: 1.7 $ $Date: 2001/11/05 13:45:27 $
* @since 4.0
*/
public class JdbcConnectionFactory extends AbstractLogEnabled implements
ObjectFactory
@@ -28,7 +28,7 @@
private final String m_password;
private final boolean m_autoCommit;
private final String m_keepAlive;
- private final String m_connectionClass;
+ private String m_connectionClass;
private final static String DEFAULT_KEEPALIVE = "SELECT 1";
private final static String ORACLE_KEEPALIVE =
JdbcConnectionFactory.DEFAULT_KEEPALIVE + " FROM DUAL";
@@ -90,15 +90,24 @@
if ( null == this.m_connectionClass )
{
- jdbcConnection = new JdbcConnection(connection, m_keepAlive);
+ try
+ {
+ java.lang.reflect.Method meth =
connection.getClass().getMethod("getHoldability", new Class[] {});
+ this.m_connectionClass =
"org.apache.avalon.excalibur.datasource.Jdbc3Connection";
+ }
+ catch (Exception e)
+ {
+ this.m_connectionClass =
"org.apache.avalon.excalibur.datasource.JdbcConnection";
+ }
}
- else
+
+ if ( null != this.m_connectionClass )
{
try
{
Class clazz =
Thread.currentThread().getContextClassLoader().loadClass(
this.m_connectionClass );
Class[] paramTypes = new Class[] { Connection.class,
String.class };
- Object[] params = new Object[] { connection, new Boolean(
this.m_keepAlive ) };
+ Object[] params = new Object[] { connection,
this.m_keepAlive };
Constructor constructor = clazz.getConstructor( paramTypes );
jdbcConnection = (JdbcConnection) constructor.newInstance(
params );
@@ -120,8 +129,14 @@
{
getLogger().debug("Exception in
JdbcConnectionFactory.newInstance:", ie);
}
+
+ throw new NoValidConnectionException(ie.getMessage());
}
}
+ }
+ else
+ {
+ throw new NoValidConnectionException("No valid JdbcConnection
class available");
}
jdbcConnection.enableLogging(getLogger());
1.1
jakarta-avalon-excalibur/src/java/org/apache/avalon/excalibur/datasource/AbstractJdbcConnection.java
Index: AbstractJdbcConnection.java
===================================================================
/*
* Copyright (C) The Apache Software Foundation. All rights reserved.
*
* This software is published under the terms of the Apache Software License
* version 1.1, a copy of which has been included with this distribution in
* the LICENSE file.
*/
package org.apache.avalon.excalibur.datasource;
import org.apache.avalon.framework.logger.AbstractLogEnabled;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.activity.Initializable;
import org.apache.avalon.framework.activity.Disposable;
import org.apache.avalon.excalibur.pool.Recyclable;
import org.apache.avalon.excalibur.pool.Pool;
import org.apache.avalon.framework.logger.Logger;
/**
* The Connection object used in conjunction with the JdbcDataSource
* object.
*
* TODO: Implement a configurable closed end Pool, where the Connection
* acts like JDBC PooledConnections work. That means we can limit the
* total number of Connection objects that are created.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
* @version CVS $Revision: 1.1 $ $Date: 2001/11/05 13:45:27 $
* @since 4.1
*/
public abstract class AbstractJdbcConnection
extends AbstractLogEnabled
implements Connection, Recyclable, Disposable, Initializable
{
protected Connection m_connection;
protected Pool m_pool;
protected PreparedStatement m_test_statement;
protected SQLException m_test_exception;
protected int m_num_uses = 15;
/**
* Private default constructor so that it cannot be instantiated any
* other way than we desire.
*/
private AbstractJdbcConnection() {}
/**
* @deprecated Use the version with keepAlive specified
*/
public AbstractJdbcConnection( final Connection connection, final boolean
oradb )
{
this(connection, (oradb) ? "select 1 from dual" : "select 1");
}
public AbstractJdbcConnection( final Connection connection, final String
keepAlive )
{
m_connection = connection;
// subclasses can override initialize()
this.initialize();
if (null != keepAlive && "".equals(keepAlive.trim()))
{
try
{
m_test_statement = prepareStatement(keepAlive);
}
catch ( final SQLException se )
{
m_test_statement = null;
m_test_exception = se;
}
}
else
{
m_test_statement = null;
m_test_exception = null;
}
}
public void initialize() {}
public void enableLogging( final Logger log )
{
super.enableLogging(log);
if (m_test_statement == null && m_test_exception != null)
{
if (getLogger().isWarnEnabled())
{
getLogger().warn("Could not prepare test statement",
m_test_exception);
}
m_test_exception = null;
}
}
protected void setPool(Pool pool)
{
this.m_pool = pool;
}
public void recycle() {
this.m_num_uses--;
this.m_test_exception = null;
}
public boolean isClosed()
throws SQLException
{
if ( m_connection.isClosed())
{
return true;
}
if ( this.m_num_uses <= 0 )
{
this.dispose();
return true;
}
if (m_test_statement != null)
{
try
{
m_test_statement.executeQuery();
}
catch (final SQLException se)
{
this.dispose();
return true;
}
}
return false;
}
public void close()
throws SQLException
{
clearWarnings();
m_pool.put( this );
}
public void dispose()
{
try { m_connection.close(); }
catch( final SQLException se )
{
if (getLogger().isWarnEnabled())
{
getLogger().warn( "Could not close connection", se );
}
}
}
/*
public abstract void setHoldability(int holdability)
throws SQLException;
public abstract int getHoldability()
throws SQLException;
public abstract java.sql.Savepoint setSavepoint()
throws SQLException;
public abstract java.sql.Savepoint setSavepoint(String savepoint)
throws SQLException;
public abstract void rollback(java.sql.Savepoint savepoint)
throws SQLException;
public abstract void releaseSavepoint(java.sql.Savepoint savepoint)
throws SQLException;
public abstract Statement createStatement(int resulSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException;
public abstract PreparedStatement prepareStatement(String sql,
int resulSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException;
public abstract CallableStatement prepareCall(String sql,
int resulSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException;
public abstract PreparedStatement prepareStatement(String sql,
int autoGeneratedKeys)
throws SQLException;
public abstract PreparedStatement prepareStatement(String sql,
int[] columnIndexes)
throws SQLException;
public abstract PreparedStatement prepareStatement(String sql,
String[] columnNames)
throws SQLException;
*/
}
1.1
jakarta-avalon-excalibur/src/java/org/apache/avalon/excalibur/datasource/JdbcConnection.java
Index: JdbcConnection.java
===================================================================
/*
* Copyright (C) The Apache Software Foundation. All rights reserved.
*
* This software is published under the terms of the Apache Software License
* version 1.1, a copy of which has been included with this distribution in
* the LICENSE file.
*/
package org.apache.avalon.excalibur.datasource;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.SQLWarning;
import java.sql.Statement;
import java.util.Map;
/**
* The Connection object used in conjunction with the JdbcDataSource
* object.
*
* TODO: Implement a configurable closed end Pool, where the Connection
* acts like JDBC PooledConnections work. That means we can limit the
* total number of Connection objects that are created.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
* @version CVS $Revision: 1.1 $ $Date: 2001/11/05 13:45:27 $
* @since 4.0
*/
public class JdbcConnection
extends AbstractJdbcConnection
{
public JdbcConnection( final Connection connection, final String
keepAlive )
{
super( connection, keepAlive );
}
public final Statement createStatement()
throws SQLException
{
return m_connection.createStatement();
}
public final PreparedStatement prepareStatement( final String sql )
throws SQLException
{
return m_connection.prepareStatement( sql );
}
public final CallableStatement prepareCall( final String sql )
throws SQLException
{
return m_connection.prepareCall( sql );
}
public final String nativeSQL( final String sql )
throws SQLException
{
return m_connection.nativeSQL( sql );
}
public final void setAutoCommit( final boolean autoCommit )
throws SQLException
{
m_connection.setAutoCommit( autoCommit );
}
public final boolean getAutoCommit()
throws SQLException
{
return m_connection.getAutoCommit();
}
public final void commit()
throws SQLException
{
m_connection.commit();
}
public final void rollback()
throws SQLException
{
m_connection.rollback();
}
public final DatabaseMetaData getMetaData()
throws SQLException
{
return m_connection.getMetaData();
}
public final void setReadOnly( final boolean readOnly )
throws SQLException
{
m_connection.setReadOnly( readOnly );
}
public final boolean isReadOnly()
throws SQLException
{
return m_connection.isReadOnly();
}
public final void setCatalog( final String catalog )
throws SQLException
{
m_connection.setCatalog( catalog );
}
public final String getCatalog()
throws SQLException
{
return m_connection.getCatalog();
}
public final void setTransactionIsolation( final int level )
throws SQLException
{
m_connection.setTransactionIsolation(level);
}
public final int getTransactionIsolation()
throws SQLException
{
return m_connection.getTransactionIsolation();
}
public final SQLWarning getWarnings()
throws SQLException
{
return m_connection.getWarnings();
}
public final void clearWarnings()
throws SQLException
{
m_connection.clearWarnings();
}
public final Statement createStatement( final int resultSetType,
final int resultSetConcurrency )
throws SQLException
{
return m_connection.createStatement(resultSetType,
resultSetConcurrency);
}
public final PreparedStatement prepareStatement( final String sql,
final int resultSetType,
final int resultSetConcurrency
)
throws SQLException
{
return m_connection.prepareStatement( sql, resultSetType,
resultSetConcurrency );
}
public final CallableStatement prepareCall( final String sql,
final int resultSetType,
final int resultSetConcurrency )
throws SQLException
{
return m_connection.prepareCall( sql, resultSetType,
resultSetConcurrency );
}
public final Map getTypeMap()
throws SQLException
{
return m_connection.getTypeMap();
}
public final void setTypeMap( final Map map )
throws SQLException
{
m_connection.setTypeMap( map );
}
/*
public final void setHoldability(int holdability)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final int getHoldability()
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final java.sql.Savepoint setSavepoint()
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final java.sql.Savepoint setSavepoint(String savepoint)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final void rollback(java.sql.Savepoint savepoint)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final void releaseSavepoint(java.sql.Savepoint savepoint)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final Statement createStatement(int resulSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final PreparedStatement prepareStatement(String sql,
int resulSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final CallableStatement prepareCall(String sql,
int resulSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final PreparedStatement prepareStatement(String sql,
int autoGeneratedKeys)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final PreparedStatement prepareStatement(String sql,
int[] columnIndexes)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
public final PreparedStatement prepareStatement(String sql,
String[] columnNames)
throws SQLException
{
throw new SQLException("This is not a Jdbc 3.0 Compliant Connection");
}
*/
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>