diff options
| author | Barry Lind <barry@xythos.com> | 2002-07-26 05:29:35 +0000 |
|---|---|---|
| committer | Barry Lind <barry@xythos.com> | 2002-07-26 05:29:35 +0000 |
| commit | 40c44166dc8a2f266b6e739a954dd74a86d6188e (patch) | |
| tree | 1a33f11d74a176eba10394c5de97bf199fdc6079 /src/interfaces/jdbc/org/postgresql/jdbc1 | |
| parent | 68c6eff9454caa57de1b807f58eade19997c9c14 (diff) | |
| download | postgresql-40c44166dc8a2f266b6e739a954dd74a86d6188e.tar.gz | |
Fouth (and final) phase of restructuring to add jdbc3 support.
Modified Files:
jdbc/org/postgresql/Driver.java.in
jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
jdbc/org/postgresql/jdbc1/Jdbc1Connection.java
jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java
jdbc/org/postgresql/jdbc2/Jdbc2Connection.java
jdbc/org/postgresql/jdbc2/Jdbc2ResultSet.java
Added Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java
jdbc/org/postgresql/jdbc1/Jdbc1DatabaseMetaData.java
jdbc/org/postgresql/jdbc1/Jdbc1ResultSetMetaData.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2DatabaseMetaData.java
jdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java
jdbc/org/postgresql/jdbc2/Jdbc2DatabaseMetaData.java
jdbc/org/postgresql/jdbc2/Jdbc2ResultSetMetaData.java
Removed Files:
jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
jdbc/org/postgresql/jdbc1/ResultSetMetaData.java
jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
jdbc/org/postgresql/jdbc2/ResultSetMetaData.java
Diffstat (limited to 'src/interfaces/jdbc/org/postgresql/jdbc1')
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java | 8 | ||||
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java (renamed from src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java) | 69 | ||||
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java (renamed from src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java) | 24 | ||||
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1Connection.java | 4 | ||||
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1DatabaseMetaData.java | 16 | ||||
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java | 4 | ||||
| -rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSetMetaData.java | 11 |
7 files changed, 63 insertions, 73 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java index f6d3807bb9..b66cda3a6a 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java @@ -13,7 +13,7 @@ import org.postgresql.largeobject.LargeObjectManager; import org.postgresql.util.*; -/* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Attic/AbstractJdbc1Connection.java,v 1.2 2002/07/25 22:45:27 barry Exp $ +/* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Attic/AbstractJdbc1Connection.java,v 1.3 2002/07/26 05:29:34 barry Exp $ * This class defines methods of the jdbc1 specification. This class is * extended by org.postgresql.jdbc2.AbstractJdbc2Connection which adds the jdbc2 * methods. The real Connection class (for jdbc1) is org.postgresql.jdbc1.Jdbc1Connection @@ -78,6 +78,10 @@ public abstract class AbstractJdbc1Connection implements org.postgresql.PGConnec */ private int isolationLevel = java.sql.Connection.TRANSACTION_READ_COMMITTED; + + public abstract java.sql.Statement createStatement() throws SQLException; + + /* * This method actually opens the connection. It is called by Driver. * @@ -361,6 +365,8 @@ public abstract class AbstractJdbc1Connection implements org.postgresql.PGConnec public abstract java.sql.ResultSet getResultSet(Statement statement, org.postgresql.Field[] fields, Vector tuples, String status, int updateCount, long insertOID, boolean binaryCursor) throws SQLException; + public abstract java.sql.ResultSet getResultSet(Statement statement, org.postgresql.Field[] fields, Vector tuples, String status, int updateCount) throws SQLException; + /* * This adds a warning to the warning chain. * @param msg message to add diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java index bf81f78874..3fd64c8c36 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java @@ -1,52 +1,23 @@ package org.postgresql.jdbc1; -// IMPORTANT NOTE: This file implements the JDBC 1 version of the driver. -// If you make any modifications to this file, you must make sure that the -// changes are also made (if relevent) to the related JDBC 2 class in the -// org.postgresql.jdbc2 package. import java.sql.*; import java.util.*; import org.postgresql.Field; import org.postgresql.util.PSQLException; -/* - * This class provides information about the database as a whole. - * - * $Id: DatabaseMetaData.java,v 1.49 2002/07/25 22:45:28 barry Exp $ - * - * <p>Many of the methods here return lists of information in ResultSets. You - * can use the normal ResultSet methods such as getString and getInt to - * retrieve the data from these ResultSets. If a given form of metadata is - * not available, these methods should throw a SQLException. - * - * <p>Some of these methods take arguments that are String patterns. These - * arguments all have names such as fooPattern. Within a pattern String, - * "%" means match any substring of 0 or more characters, and "_" means - * match any one character. Only metadata entries matching the search - * pattern are returned. if a search pattern argument is set to a null - * ref, it means that argument's criteria should be dropped from the - * search. - * - * <p>A SQLException will be throws if a driver does not support a meta - * data method. In the case of methods that return a ResultSet, either - * a ResultSet (which may be empty) is returned or a SQLException is - * thrown. - * - * @see java.sql.DatabaseMetaData - */ -public class DatabaseMetaData implements java.sql.DatabaseMetaData +public abstract class AbstractJdbc1DatabaseMetaData { - Jdbc1Connection connection; // The connection association + protected AbstractJdbc1Connection connection; // The connection association // These define various OID's. Hopefully they will stay constant. - static final int iVarcharOid = 1043; // OID for varchar - static final int iBoolOid = 16; // OID for bool - static final int iInt2Oid = 21; // OID for int2 - static final int iInt4Oid = 23; // OID for int4 - static final int VARHDRSZ = 4; // length for int4 + protected static final int iVarcharOid = 1043; // OID for varchar + protected static final int iBoolOid = 16; // OID for bool + protected static final int iInt2Oid = 21; // OID for int2 + protected static final int iInt4Oid = 23; // OID for int4 + protected static final int VARHDRSZ = 4; // length for int4 - public DatabaseMetaData(Jdbc1Connection conn) + public AbstractJdbc1DatabaseMetaData(AbstractJdbc1Connection conn) { this.connection = conn; } @@ -2340,13 +2311,13 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData if (col > -1) { String rule = proname.substring(8, proname.length() - 4); - int action = importedKeyNoAction; + int action = java.sql.DatabaseMetaData.importedKeyNoAction; if ("cascade".equals(rule)) - action = importedKeyCascade; + action = java.sql.DatabaseMetaData.importedKeyCascade; else if ("setnull".equals(rule)) - action = importedKeySetNull; + action = java.sql.DatabaseMetaData.importedKeySetNull; else if ("setdefault".equals(rule)) - action = importedKeySetDefault; + action = java.sql.DatabaseMetaData.importedKeySetDefault; tuple[col] = Integer.toString(action).getBytes(); if (!foundRule) @@ -2388,15 +2359,15 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData tuple[12] = rs.getBytes(4); //PK_NAME // DEFERRABILITY - int deferrability = importedKeyNotDeferrable; + int deferrability = java.sql.DatabaseMetaData.importedKeyNotDeferrable; boolean deferrable = rs.getBoolean(5); boolean initiallyDeferred = rs.getBoolean(6); if (deferrable) { if (initiallyDeferred) - deferrability = importedKeyInitiallyDeferred; + deferrability = java.sql.DatabaseMetaData.importedKeyInitiallyDeferred; else - deferrability = importedKeyInitiallyImmediate; + deferrability = java.sql.DatabaseMetaData.importedKeyInitiallyImmediate; } tuple[13] = Integer.toString(deferrability).getBytes(); @@ -2669,8 +2640,8 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData byte b9[] = "9".getBytes(); byte b10[] = "10".getBytes(); byte bf[] = "f".getBytes(); - byte bnn[] = Integer.toString(typeNoNulls).getBytes(); - byte bts[] = Integer.toString(typeSearchable).getBytes(); + byte bnn[] = Integer.toString(java.sql.DatabaseMetaData.typeNoNulls).getBytes(); + byte bts[] = Integer.toString(java.sql.DatabaseMetaData.typeSearchable).getBytes(); while (rs.next()) { @@ -2811,10 +2782,10 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData tuple[4] = null; tuple[5] = r.getBytes(3); tuple[6] = r.getBoolean(4) ? - Integer.toString(tableIndexClustered).getBytes() : + Integer.toString(java.sql.DatabaseMetaData.tableIndexClustered).getBytes() : r.getString(5).equals("hash") ? - Integer.toString(tableIndexHashed).getBytes() : - Integer.toString(tableIndexOther).getBytes(); + Integer.toString(java.sql.DatabaseMetaData.tableIndexHashed).getBytes() : + Integer.toString(java.sql.DatabaseMetaData.tableIndexOther).getBytes(); tuple[7] = Integer.toString(i + 1).getBytes(); if (columnNameRS.next()) { diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java index ee737604a1..2a598d3c39 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSetMetaData.java @@ -1,31 +1,17 @@ package org.postgresql.jdbc1; -// IMPORTANT NOTE: This file implements the JDBC 1 version of the driver. -// If you make any modifications to this file, you must make sure that the -// changes are also made (if relevent) to the related JDBC 2 class in the -// org.postgresql.jdbc2 package. import java.lang.*; import java.util.*; import org.postgresql.*; import org.postgresql.util.*; - -// We explicitly import classes here as the original line: -//import java.sql.*; -// causes javac to get confused. import java.sql.SQLException; import java.sql.Types; -/* - * A ResultSetMetaData object can be used to find out about the types and - * properties of the columns in a ResultSet - * - * @see java.sql.ResultSetMetaData - */ -public class ResultSetMetaData implements java.sql.ResultSetMetaData +public abstract class AbstractJdbc1ResultSetMetaData { - Vector rows; - Field[] fields; + protected Vector rows; + protected Field[] fields; /* * Initialise for a result with a tuple set and @@ -34,7 +20,7 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData * @param rows the Vector of rows returned by the ResultSet * @param fields the array of field descriptors */ - public ResultSetMetaData(Vector rows, Field[] fields) + public AbstractJdbc1ResultSetMetaData(Vector rows, Field[] fields) { this.rows = rows; this.fields = fields; @@ -149,7 +135,7 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData * defined with NOT NULL or PRIMARY KEY, CHECK constraints, views, * functions etc. */ - return columnNullableUnknown; + return java.sql.ResultSetMetaData.columnNullableUnknown; } /* diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1Connection.java b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1Connection.java index b67b07fde9..618ffa0df8 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1Connection.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1Connection.java @@ -6,7 +6,7 @@ import java.sql.*; import org.postgresql.Field; import org.postgresql.util.PSQLException; -/* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Attic/Jdbc1Connection.java,v 1.3 2002/07/25 22:45:28 barry Exp $ +/* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Attic/Jdbc1Connection.java,v 1.4 2002/07/26 05:29:35 barry Exp $ * This class implements the java.sql.Connection interface for JDBC1. * However most of the implementation is really done in * org.postgresql.jdbc1.AbstractJdbc1Connection @@ -32,7 +32,7 @@ public class Jdbc1Connection extends org.postgresql.jdbc1.AbstractJdbc1Connectio public java.sql.DatabaseMetaData getMetaData() throws SQLException { if (metadata == null) - metadata = new org.postgresql.jdbc1.DatabaseMetaData(this); + metadata = new org.postgresql.jdbc1.Jdbc1DatabaseMetaData(this); return metadata; } diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1DatabaseMetaData.java new file mode 100644 index 0000000000..f2bde3e248 --- /dev/null +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1DatabaseMetaData.java @@ -0,0 +1,16 @@ +package org.postgresql.jdbc1; + + +import java.sql.*; +import java.util.*; +import org.postgresql.Field; +import org.postgresql.util.PSQLException; + +public class Jdbc1DatabaseMetaData extends AbstractJdbc1DatabaseMetaData implements java.sql.DatabaseMetaData +{ + public Jdbc1DatabaseMetaData(Jdbc1Connection conn) + { + super(conn); + } + +} diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java index 57850569ec..845889ed8c 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSet.java @@ -5,7 +5,7 @@ import java.sql.*; import java.util.Vector; import org.postgresql.Field; -/* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Attic/Jdbc1ResultSet.java,v 1.2 2002/07/25 22:45:28 barry Exp $ +/* $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Attic/Jdbc1ResultSet.java,v 1.3 2002/07/26 05:29:35 barry Exp $ * This class implements the java.sql.ResultSet interface for JDBC1. * However most of the implementation is really done in * org.postgresql.jdbc1.AbstractJdbc1ResultSet @@ -20,7 +20,7 @@ public class Jdbc1ResultSet extends org.postgresql.jdbc1.AbstractJdbc1ResultSet public java.sql.ResultSetMetaData getMetaData() throws SQLException { - return new ResultSetMetaData(rows, fields); + return new Jdbc1ResultSetMetaData(rows, fields); } } diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSetMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSetMetaData.java new file mode 100644 index 0000000000..998e7fd5a8 --- /dev/null +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/Jdbc1ResultSetMetaData.java @@ -0,0 +1,11 @@ +package org.postgresql.jdbc1; + +public class Jdbc1ResultSetMetaData extends AbstractJdbc1ResultSetMetaData implements java.sql.ResultSetMetaData +{ + public Jdbc1ResultSetMetaData(java.util.Vector rows, org.postgresql.Field[] fields) + { + super(rows, fields); + } + +} + |
