diff options
| author | Barry Lind <barry@xythos.com> | 2002-08-14 20:35:40 +0000 |
|---|---|---|
| committer | Barry Lind <barry@xythos.com> | 2002-08-14 20:35:40 +0000 |
| commit | b3dd55c6517a6a9f531a7bab463e9bcf6291aa9b (patch) | |
| tree | e78512bb088ee72bff62abd640335c29cc5965c9 /src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java | |
| parent | 64a0649432408b407e477caf11056b380b5689bd (diff) | |
| download | postgresql-b3dd55c6517a6a9f531a7bab463e9bcf6291aa9b.tar.gz | |
Added support for JDBC3. The driver will now build under JDBC3 (i.e. Java 1.4).
This concludes my changes that restructured the code to support JDBC3.
The jdbc unit tests were also resturctured to allow different tests between
jdbc2 and jdbc3, although currently make check (aka ant test) for JDBC3 just
runs the JDBC2 tests. Of special note the largeobject/PGblob and PGclob
classes have been moved under the jdbc2/jdbc3 specific directories as they
now differ by jdbc version. Also note that this checkin removes the
PostgresqlDataSource and files in the xa directory. A recent checkin has
added new datasource support that replaces the functionality provided by these
classes.
Modified Files:
jdbc/build.xml
jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2Connection.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2DatabaseMetaData.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
jdbc/org/postgresql/jdbc2/Array.java
jdbc/org/postgresql/jdbc2/Jdbc2CallableStatement.java
jdbc/org/postgresql/jdbc2/Jdbc2Connection.java
jdbc/org/postgresql/jdbc2/Jdbc2DatabaseMetaData.java
jdbc/org/postgresql/jdbc2/Jdbc2PreparedStatement.java
jdbc/org/postgresql/jdbc2/Jdbc2ResultSet.java
jdbc/org/postgresql/jdbc2/Jdbc2ResultSetMetaData.java
jdbc/org/postgresql/jdbc2/Jdbc2Statement.java
jdbc/org/postgresql/test/jdbc2/BatchExecuteTest.java
jdbc/org/postgresql/test/jdbc2/BlobTest.java
jdbc/org/postgresql/test/jdbc2/CallableStmtTest.java
jdbc/org/postgresql/test/jdbc2/ConnectionTest.java
jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java
jdbc/org/postgresql/test/jdbc2/DateTest.java
jdbc/org/postgresql/test/jdbc2/DriverTest.java
jdbc/org/postgresql/test/jdbc2/JBuilderTest.java
jdbc/org/postgresql/test/jdbc2/MiscTest.java
jdbc/org/postgresql/test/jdbc2/ResultSetTest.java
jdbc/org/postgresql/test/jdbc2/TimeTest.java
jdbc/org/postgresql/test/jdbc2/TimestampTest.java
jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java
Added Files:
jdbc/org/postgresql/jdbc2/AbstractJdbc2Blob.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2Clob.java
jdbc/org/postgresql/jdbc2/Jdbc2Blob.java
jdbc/org/postgresql/jdbc2/Jdbc2Clob.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3Blob.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3Clob.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3Connection.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3DatabaseMetaData.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3ResultSet.java
jdbc/org/postgresql/jdbc3/AbstractJdbc3Statement.java
jdbc/org/postgresql/jdbc3/Jdbc3Blob.java
jdbc/org/postgresql/jdbc3/Jdbc3CallableStatement.java
jdbc/org/postgresql/jdbc3/Jdbc3Clob.java
jdbc/org/postgresql/jdbc3/Jdbc3Connection.java
jdbc/org/postgresql/jdbc3/Jdbc3DatabaseMetaData.java
jdbc/org/postgresql/jdbc3/Jdbc3PreparedStatement.java
jdbc/org/postgresql/jdbc3/Jdbc3ResultSet.java
jdbc/org/postgresql/jdbc3/Jdbc3ResultSetMetaData.java
jdbc/org/postgresql/jdbc3/Jdbc3Statement.java
jdbc/org/postgresql/test/TestUtil.java
jdbc/org/postgresql/test/jdbc2/Jdbc2TestSuite.java
jdbc/org/postgresql/test/jdbc3/Jdbc3TestSuite.java
Removed Files:
jdbc/org/postgresql/PostgresqlDataSource.java
jdbc/org/postgresql/largeobject/PGblob.java
jdbc/org/postgresql/largeobject/PGclob.java
jdbc/org/postgresql/test/JDBC2Tests.java
jdbc/org/postgresql/xa/ClientConnection.java
jdbc/org/postgresql/xa/TwoPhaseConnection.java
jdbc/org/postgresql/xa/TxConnection.java
jdbc/org/postgresql/xa/XAConnectionImpl.java
jdbc/org/postgresql/xa/XADataSourceImpl.java
Diffstat (limited to 'src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java')
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java b/src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java deleted file mode 100644 index 7b0ce88f49..0000000000 --- a/src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java +++ /dev/null @@ -1,116 +0,0 @@ -/* -* Redistribution and use of this software and associated documentation -* ("Software"), with or without modification, are permitted provided -* that the following conditions are met: -* -* 1. Redistributions of source code must retain copyright -* statements and notices. Redistributions must also contain a -* copy of this document. -* -* 2. Redistributions in binary form must reproduce the -* above copyright notice, this list of conditions and the -* following disclaimer in the documentation and/or other -* materials provided with the distribution. -* -* 3. The name "Exolab" must not be used to endorse or promote -* products derived from this Software without prior written -* permission of Exoffice Technologies. For written permission, -* please contact info@exolab.org. -* -* 4. Products derived from this Software may not be called "Exolab" -* nor may "Exolab" appear in their names without prior written -* permission of Exoffice Technologies. Exolab is a registered -* trademark of Exoffice Technologies. -* -* 5. Due credit should be given to the Exolab Project -* (http://www.exolab.org/). -* -* THIS SOFTWARE IS PROVIDED BY EXOFFICE TECHNOLOGIES AND CONTRIBUTORS -* ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT -* NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL -* EXOFFICE TECHNOLOGIES OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -* OF THE POSSIBILITY OF SUCH DAMAGE. -* -* Copyright 1999 (C) Exoffice Technologies Inc. All Rights Reserved. -* -* $Id: TwoPhaseConnection.java,v 1.3 2001/11/19 22:33:39 momjian Exp $ -*/ - - -package org.postgresql.xa; - - -import java.sql.SQLException; - - -/* - * Defines two-phase commit support for a JDBC connection used by - * {@link XAConnection}. A JDBC connection that can implement any of - * these features should extend this interface and attempt to - * implement as much as it can. - * <p> - * {@link #prepare} is used as part of the two phase commit protocol - * to determine whether the transaction can commit or must rollback. - * Failure to implement this method will cause all connections to vote - * for commit, whether or not they can actually commit, leading to - * mixed heuristics. - * <p> - * {@link #enableSQLTransactions} allows the SQL begin/commit/rollback - * commands to be disabled for the duration of a transaction managed - * through an {@link javax.transaction.xaXAResource}, preventing the - * application from demarcating transactions directly. - * <p> - * {@link #isCriticalError} is used to tell if an exception thrown by - * the connection is fatal and the connection should not be returned - * to the pool. - * - * - * @author <a href="arkin@exoffice.com">Assaf Arkin</a> - * @version 1.0 - */ -public interface TwoPhaseConnection -{ - - - /* - * Enables or disables transaction demarcation through SQL commit - * and rollback. When the connection falls under control of - * {@link XAConnection}, SQL commit/rollback commands will be - * disabled to prevent direct transaction demarcation. - * - * @param flag True to enable SQL transactions (the default) - */ - public void enableSQLTransactions( boolean flag ); - - - /* - * Called to prepare the transaction for commit. Returns true if - * the transaction is prepared, false if the transaction is - * read-only. If the transaction has been marked for rollback, - * throws a {@link RollbackException}. - * - * @return True if can commit, false if read-only - * @throws SQLException If transaction has been marked for - * rollback or cannot commit for any other reason - */ - public boolean prepare() - throws SQLException; - - - /* - * Returns true if the error issued by this connection is a - * critical error and the connection should be terminated. - * - * @param except The exception thrown by this connection - */ - public boolean isCriticalError( SQLException except ); - - -} |
