summaryrefslogtreecommitdiff
path: root/libjava/classpath/javax/sql
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/javax/sql')
-rw-r--r--libjava/classpath/javax/sql/ConnectionEvent.java78
-rw-r--r--libjava/classpath/javax/sql/ConnectionEventListener.java57
-rw-r--r--libjava/classpath/javax/sql/ConnectionPoolDataSource.java79
-rw-r--r--libjava/classpath/javax/sql/DataSource.java80
-rw-r--r--libjava/classpath/javax/sql/PooledConnection.java68
-rw-r--r--libjava/classpath/javax/sql/RowSet.java187
-rw-r--r--libjava/classpath/javax/sql/RowSetEvent.java52
-rw-r--r--libjava/classpath/javax/sql/RowSetInternal.java74
-rw-r--r--libjava/classpath/javax/sql/RowSetListener.java53
-rw-r--r--libjava/classpath/javax/sql/RowSetMetaData.java95
-rw-r--r--libjava/classpath/javax/sql/RowSetReader.java49
-rw-r--r--libjava/classpath/javax/sql/RowSetWriter.java49
-rw-r--r--libjava/classpath/javax/sql/XAConnection.java51
-rw-r--r--libjava/classpath/javax/sql/XADataSource.java61
-rw-r--r--libjava/classpath/javax/sql/package.html46
15 files changed, 1079 insertions, 0 deletions
diff --git a/libjava/classpath/javax/sql/ConnectionEvent.java b/libjava/classpath/javax/sql/ConnectionEvent.java
new file mode 100644
index 000000000..3821f4100
--- /dev/null
+++ b/libjava/classpath/javax/sql/ConnectionEvent.java
@@ -0,0 +1,78 @@
+/* ConnectionEvent.java
+ Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.SQLException;
+import java.util.EventObject;
+
+/**
+ * @since 1.4
+ */
+public class ConnectionEvent extends EventObject
+{
+ private static final long serialVersionUID = -4843217645290030002L;
+
+ // Note that the name is chosen for serialization.
+ private SQLException ex;
+
+ /**
+ * @since 1.4
+ */
+ public ConnectionEvent(PooledConnection con)
+ {
+ super(con);
+ }
+
+ /**
+ * @since 1.4
+ */
+ public ConnectionEvent(PooledConnection con, SQLException ex)
+ {
+ super(con);
+ this.ex = ex;
+ }
+
+ /**
+ * @since 1.4
+ */
+ public SQLException getSQLException()
+ {
+ return ex;
+ }
+}
diff --git a/libjava/classpath/javax/sql/ConnectionEventListener.java b/libjava/classpath/javax/sql/ConnectionEventListener.java
new file mode 100644
index 000000000..b9b69d34c
--- /dev/null
+++ b/libjava/classpath/javax/sql/ConnectionEventListener.java
@@ -0,0 +1,57 @@
+/* ConnectionEventListener.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.util.EventListener;
+
+/**
+ * @since 1.4
+ */
+public interface ConnectionEventListener extends EventListener
+{
+ /**
+ * @since 1.4
+ */
+ void connectionClosed(ConnectionEvent event);
+
+ /**
+ * @since 1.4
+ */
+ void connectionErrorOccurred(ConnectionEvent event);
+}
diff --git a/libjava/classpath/javax/sql/ConnectionPoolDataSource.java b/libjava/classpath/javax/sql/ConnectionPoolDataSource.java
new file mode 100644
index 000000000..545af3fe9
--- /dev/null
+++ b/libjava/classpath/javax/sql/ConnectionPoolDataSource.java
@@ -0,0 +1,79 @@
+/* ConnectionPoolDataSource.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.io.PrintWriter;
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface ConnectionPoolDataSource
+{
+ /**
+ * @since 1.4
+ */
+ PooledConnection getPooledConnection() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ PooledConnection getPooledConnection(String user, String password)
+ throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ PrintWriter getLogWriter() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void setLogWriter(PrintWriter out) throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void setLoginTimeout(int seconds) throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ int getLoginTimeout() throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/DataSource.java b/libjava/classpath/javax/sql/DataSource.java
new file mode 100644
index 000000000..da2017494
--- /dev/null
+++ b/libjava/classpath/javax/sql/DataSource.java
@@ -0,0 +1,80 @@
+/* DataSource.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.io.PrintWriter;
+import java.sql.Connection;
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface DataSource
+{
+ /**
+ * @since 1.4
+ */
+ Connection getConnection() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ Connection getConnection(String username, String password)
+ throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ PrintWriter getLogWriter() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void setLogWriter(PrintWriter out) throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void setLoginTimeout(int seconds) throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ int getLoginTimeout() throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/PooledConnection.java b/libjava/classpath/javax/sql/PooledConnection.java
new file mode 100644
index 000000000..8a839ba7d
--- /dev/null
+++ b/libjava/classpath/javax/sql/PooledConnection.java
@@ -0,0 +1,68 @@
+/* PooledConnection.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface PooledConnection
+{
+ /**
+ * @since 1.4
+ */
+ Connection getConnection() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void close() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void addConnectionEventListener(ConnectionEventListener listener);
+
+ /**
+ * @since 1.4
+ */
+ void removeConnectionEventListener(ConnectionEventListener listener);
+}
diff --git a/libjava/classpath/javax/sql/RowSet.java b/libjava/classpath/javax/sql/RowSet.java
new file mode 100644
index 000000000..ca7f72987
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSet.java
@@ -0,0 +1,187 @@
+/* RowSet.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.io.InputStream;
+import java.io.Reader;
+import java.math.BigDecimal;
+import java.sql.Array;
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.Date;
+import java.sql.Ref;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Time;
+import java.sql.Timestamp;
+import java.util.Calendar;
+import java.util.Map;
+
+/**
+ * @since 1.4
+ */
+public interface RowSet extends ResultSet
+{
+ String getUrl() throws SQLException;
+
+ void setUrl(String url) throws SQLException;
+
+ String getDataSourceName();
+
+ void setDataSourceName(String name) throws SQLException;
+
+ String getUsername();
+
+ void setUsername(String name) throws SQLException;
+
+ String getPassword();
+
+ void setPassword(String password) throws SQLException;
+
+ int getTransactionIsolation();
+
+ void setTransactionIsolation(int level) throws SQLException;
+
+ Map<String, Class<?>> getTypeMap() throws SQLException;
+
+ void setTypeMap(Map<String, Class<?>> map) throws SQLException;
+
+ String getCommand();
+
+ void setCommand(String cmd) throws SQLException;
+
+ boolean isReadOnly();
+
+ void setReadOnly(boolean value) throws SQLException;
+
+ int getMaxFieldSize() throws SQLException;
+
+ void setMaxFieldSize(int max) throws SQLException;
+
+ int getMaxRows() throws SQLException;
+
+ void setMaxRows(int max) throws SQLException;
+
+ boolean getEscapeProcessing() throws SQLException;
+
+ void setEscapeProcessing(boolean enable) throws SQLException;
+
+ int getQueryTimeout() throws SQLException;
+
+ void setQueryTimeout(int seconds) throws SQLException;
+
+ void setType(int type) throws SQLException;
+
+ void setConcurrency(int concurrency) throws SQLException;
+
+ void setNull(int parameterIndex, int sqlType) throws SQLException;
+
+ void setNull(int paramIndex, int sqlType, String typeName) throws
+ SQLException;
+
+ void setBoolean(int parameterIndex, boolean x) throws SQLException;
+
+ void setByte(int parameterIndex, byte x) throws SQLException;
+
+ void setShort(int parameterIndex, short x) throws SQLException;
+
+ void setInt(int parameterIndex, int x) throws SQLException;
+
+ void setLong(int parameterIndex, long x) throws SQLException;
+
+ void setFloat(int parameterIndex, float x) throws SQLException;
+
+ void setDouble(int parameterIndex, double x) throws SQLException;
+
+ void setBigDecimal(int parameterIndex, BigDecimal x) throws
+ SQLException;
+
+ void setString(int parameterIndex, String x) throws SQLException;
+
+ void setBytes(int parameterIndex, byte[] x) throws SQLException;
+
+ void setDate(int parameterIndex, Date x) throws SQLException;
+
+ void setTime(int parameterIndex, Time x) throws SQLException;
+
+ void setTimestamp(int parameterIndex, Timestamp x) throws
+ SQLException;
+
+ void setAsciiStream(int parameterIndex, InputStream x, int length)
+ throws SQLException;
+
+ void setBinaryStream(int parameterIndex, InputStream x, int length)
+ throws SQLException;
+
+ void setCharacterStream(int parameterIndex, Reader reader, int
+ length) throws SQLException;
+
+ void setObject(int parameterIndex, Object x, int targetSqlType, int
+ scale) throws SQLException;
+
+ void setObject(int parameterIndex, Object x, int targetSqlType)
+ throws SQLException;
+
+ void setObject(int parameterIndex, Object x) throws SQLException;
+
+ void setRef(int i, Ref x) throws SQLException;
+
+ void setBlob(int i, Blob x) throws SQLException;
+
+ void setClob(int i, Clob x) throws SQLException;
+
+ void setArray(int i, Array x) throws SQLException;
+
+ void setDate(int parameterIndex, Date x, Calendar cal) throws
+ SQLException;
+
+ void setTime(int parameterIndex, Time x, Calendar cal) throws
+ SQLException;
+
+ void setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
+ throws SQLException;
+
+ void clearParameters() throws SQLException;
+
+ void execute() throws SQLException;
+
+ void addRowSetListener(RowSetListener listener);
+
+ void removeRowSetListener(RowSetListener listener);
+}
diff --git a/libjava/classpath/javax/sql/RowSetEvent.java b/libjava/classpath/javax/sql/RowSetEvent.java
new file mode 100644
index 000000000..dd0a9bcc4
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSetEvent.java
@@ -0,0 +1,52 @@
+/* RowSetEvent.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.util.EventObject;
+
+/**
+ * @since 1.4
+ */
+public class RowSetEvent extends EventObject
+{
+ public RowSetEvent(RowSet source)
+ {
+ super(source);
+ }
+}
diff --git a/libjava/classpath/javax/sql/RowSetInternal.java b/libjava/classpath/javax/sql/RowSetInternal.java
new file mode 100644
index 000000000..7b3252cff
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSetInternal.java
@@ -0,0 +1,74 @@
+/* RowSetInternal.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface RowSetInternal
+{
+ /**
+ * @since 1.4
+ */
+ Object[] getParams() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ Connection getConnection() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ void setMetaData(RowSetMetaData md) throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ ResultSet getOriginal() throws SQLException;
+
+ /**
+ * @since 1.4
+ */
+ ResultSet getOriginalRow() throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/RowSetListener.java b/libjava/classpath/javax/sql/RowSetListener.java
new file mode 100644
index 000000000..1a887c548
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSetListener.java
@@ -0,0 +1,53 @@
+/* RowSetListener.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.util.EventListener;
+
+/**
+ * @since 1.4
+ */
+public interface RowSetListener extends EventListener
+{
+ void rowSetChanged(RowSetEvent event);
+
+ void rowChanged(RowSetEvent event);
+
+ void cursorMoved(RowSetEvent event);
+}
diff --git a/libjava/classpath/javax/sql/RowSetMetaData.java b/libjava/classpath/javax/sql/RowSetMetaData.java
new file mode 100644
index 000000000..72c58ac0c
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSetMetaData.java
@@ -0,0 +1,95 @@
+/* RowSetMetaData.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.ResultSetMetaData;
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface RowSetMetaData extends ResultSetMetaData
+{
+ void setColumnCount(int columnCount) throws SQLException;
+
+ void setAutoIncrement(int columnIndex, boolean property)
+ throws SQLException;
+
+ void setCaseSensitive(int columnIndex, boolean property)
+ throws SQLException;
+
+ void setSearchable(int columnIndex, boolean property)
+ throws SQLException;
+
+ void setCurrency(int columnIndex, boolean property)
+ throws SQLException;
+
+ void setNullable(int columnIndex, int property) throws SQLException;
+
+ void setSigned(int columnIndex, boolean property)
+ throws SQLException;
+
+ void setColumnDisplaySize(int columnIndex, int size)
+ throws SQLException;
+
+ void setColumnLabel(int columnIndex, String label)
+ throws SQLException;
+
+ void setColumnName(int columnIndex, String columnName)
+ throws SQLException;
+
+ void setSchemaName(int columnIndex, String schemaName)
+ throws SQLException;
+
+ void setPrecision(int columnIndex, int precision)
+ throws SQLException;
+
+ void setScale(int columnIndex, int scale) throws SQLException;
+
+ void setTableName(int columnIndex, String tableName)
+ throws SQLException;
+
+ void setCatalogName(int columnIndex, String catalogName)
+ throws SQLException;
+
+ void setColumnType(int columnIndex, int SQLType) throws SQLException;
+
+ void setColumnTypeName(int columnIndex, String typeName)
+ throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/RowSetReader.java b/libjava/classpath/javax/sql/RowSetReader.java
new file mode 100644
index 000000000..a6541e0e3
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSetReader.java
@@ -0,0 +1,49 @@
+/* RowSetReader.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface RowSetReader
+{
+ void readData(RowSetInternal caller) throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/RowSetWriter.java b/libjava/classpath/javax/sql/RowSetWriter.java
new file mode 100644
index 000000000..3d07541bc
--- /dev/null
+++ b/libjava/classpath/javax/sql/RowSetWriter.java
@@ -0,0 +1,49 @@
+/* RowSetWriter.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface RowSetWriter
+{
+ boolean writeData(RowSetInternal caller) throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/XAConnection.java b/libjava/classpath/javax/sql/XAConnection.java
new file mode 100644
index 000000000..4cb0b3086
--- /dev/null
+++ b/libjava/classpath/javax/sql/XAConnection.java
@@ -0,0 +1,51 @@
+/* XAConnection.java --
+ Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.sql.SQLException;
+
+import javax.transaction.xa.XAResource;
+
+/**
+ * @since 1.4
+ */
+public interface XAConnection extends PooledConnection
+{
+ XAResource getXAResource() throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/XADataSource.java b/libjava/classpath/javax/sql/XADataSource.java
new file mode 100644
index 000000000..0387140d9
--- /dev/null
+++ b/libjava/classpath/javax/sql/XADataSource.java
@@ -0,0 +1,61 @@
+/* XADataSource.java
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+
+package javax.sql;
+
+import java.io.PrintWriter;
+import java.sql.SQLException;
+
+/**
+ * @since 1.4
+ */
+public interface XADataSource
+{
+ XAConnection getXAConnection() throws SQLException;
+
+ XAConnection getXAConnection(String user, String password) throws
+ SQLException;
+
+ PrintWriter getLogWriter() throws SQLException;
+
+ void setLogWriter(PrintWriter out) throws SQLException;
+
+ void setLoginTimeout(int seconds) throws SQLException;
+
+ int getLoginTimeout() throws SQLException;
+}
diff --git a/libjava/classpath/javax/sql/package.html b/libjava/classpath/javax/sql/package.html
new file mode 100644
index 000000000..31be02623
--- /dev/null
+++ b/libjava/classpath/javax/sql/package.html
@@ -0,0 +1,46 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!-- package.html - describes classes in javax.sql package.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. -->
+
+<html>
+<head><title>GNU Classpath - javax.sql</title></head>
+
+<body>
+<p></p>
+
+</body>
+</html>