--- src/com/mysql/jdbc/CallableStatement.java.orig 2009-11-28 20:29:56.000000000 +0100 +++ src/com/mysql/jdbc/CallableStatement.java 2009-11-28 23:57:51.000000000 +0100 @@ -32,10 +32,13 @@ import java.sql.Blob; import java.sql.Clob; import java.sql.Date; +import java.sql.NClob; import java.sql.ParameterMetaData; import java.sql.Ref; import java.sql.ResultSet; +import java.sql.RowId; import java.sql.SQLException; +import java.sql.SQLXML; import java.sql.Statement; import java.sql.Time; import java.sql.Timestamp; @@ -2441,5 +2444,86 @@ return (super.checkReadOnlySafeStatement() || this.checkReadOnlyProcedure()); } + public void setNClob(String parameterName, Reader reader) + throws SQLException { + throw SQLError.notImplemented(); + } + + public Reader getCharacterStream(String parameterName) throws SQLException { + throw SQLError.notImplemented(); + } + + public Reader getCharacterStream(int parameterIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public String getNString(String parameterName) throws SQLException { + throw SQLError.notImplemented(); + } + + public String getNString(int parameterIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public Reader getNCharacterStream(String parameterName) + throws SQLException { + throw SQLError.notImplemented(); + } + + public Reader getNCharacterStream(int parameterIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public SQLXML getSQLXML(String parameterName) throws SQLException { + throw SQLError.notImplemented(); + } + + public SQLXML getSQLXML(int parameterIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public void setSQLXML(String parameterName, SQLXML xmlObject) + throws SQLException { + throw SQLError.notImplemented(); + } + + public NClob getNClob(String parameterName) throws SQLException { + throw SQLError.notImplemented(); + } + + public NClob getNClob(int parameterIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public void setNClob(String parameterName, Reader reader, long length) + throws SQLException { + throw SQLError.notImplemented(); + } + + public void setNClob(String parameterName, NClob value) + throws SQLException { + throw SQLError.notImplemented(); + } + + public void setNString(String parameterName, String value) + throws SQLException { + throw SQLError.notImplemented(); + } + + public void setRowId(String parameterName, RowId x) + throws SQLException { + throw SQLError.notImplemented(); + } + + public RowId getRowId(String parameterName) + throws SQLException { + throw SQLError.notImplemented(); + } + + public RowId getRowId(int parameterIndex) + throws SQLException { + throw SQLError.notImplemented(); + } + } --- src/com/mysql/jdbc/ConnectionImpl.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/ConnectionImpl.java 2009-11-29 00:56:52.000000000 +0100 @@ -34,11 +34,16 @@ import java.nio.charset.Charset; import java.nio.charset.CharsetEncoder; import java.sql.Blob; +import java.sql.Clob; import java.sql.DatabaseMetaData; +import java.sql.NClob; import java.sql.ResultSet; +import java.sql.SQLClientInfoException; import java.sql.SQLException; import java.sql.SQLWarning; +import java.sql.SQLXML; import java.sql.Savepoint; +import java.sql.Struct; import java.util.ArrayList; import java.util.Calendar; import java.util.GregorianCalendar; @@ -5699,4 +5704,60 @@ public boolean getRequiresEscapingEncoder() { return requiresEscapingEncoder; } + + public Struct createStruct(String typeName, Object[] attributes) + throws SQLException { + throw SQLError.notImplemented(); + } + + public java.sql.Array createArrayOf(String typeName, Object[] elements) + throws SQLException { + throw SQLError.notImplemented(); + } + + public Properties getClientInfo() throws SQLException { + throw SQLError.notImplemented(); + } + + public String getClientInfo(String name) throws SQLException { + throw SQLError.notImplemented(); + } + + public void setClientInfo(Properties properties) + throws SQLClientInfoException { + throw new SQLClientInfoException(); + } + + public void setClientInfo(String name, String value) + throws SQLClientInfoException { + throw new SQLClientInfoException(); + } + + public boolean isValid(int timeout) throws SQLException { + throw SQLError.notImplemented(); + } + + public SQLXML createSQLXML() throws SQLException { + throw SQLError.notImplemented(); + } + + public NClob createNClob() throws SQLException { + throw SQLError.notImplemented(); + } + + public Blob createBlob() throws SQLException { + throw SQLError.notImplemented(); + } + + public Clob createClob() throws SQLException { + throw SQLError.notImplemented(); + } + + public boolean isWrapperFor(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } + + public T unwrap(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } } --- src/com/mysql/jdbc/DatabaseMetaData.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/DatabaseMetaData.java 2009-11-28 23:31:07.000000000 +0100 @@ -27,6 +27,7 @@ import java.io.UnsupportedEncodingException; import java.lang.reflect.Constructor; import java.sql.ResultSet; +import java.sql.RowIdLifetime; import java.sql.SQLException; import java.sql.Statement; import java.sql.Types; @@ -8158,4 +8159,29 @@ return pStmt; } + + public ResultSet getFunctions(String catalog, String schemaPattern, + String functionNamePattern) throws SQLException { + throw SQLError.notImplemented(); + } + + public ResultSet getClientInfoProperties() throws SQLException { + throw SQLError.notImplemented(); + } + + public boolean autoCommitFailureClosesAllResultSets() throws SQLException { + throw SQLError.notImplemented(); + } + + public RowIdLifetime getRowIdLifetime() throws SQLException { + throw SQLError.notImplemented(); + } + + public boolean isWrapperFor(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } + + public T unwrap(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } } --- src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java.orig 2009-11-28 22:41:30.000000000 +0100 +++ src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java 2009-11-29 01:26:01.000000000 +0100 @@ -34,8 +34,11 @@ import java.sql.CallableStatement; import java.sql.Clob; import java.sql.Date; +import java.sql.NClob; import java.sql.Ref; +import java.sql.RowId; import java.sql.SQLException; +import java.sql.SQLXML; import java.sql.Time; import java.sql.Timestamp; import java.util.Calendar; @@ -1800,817 +1803,817 @@ return null; } -// -// public Reader getCharacterStream(int parameterIndex) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getCharacterStream(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public Reader getCharacterStream(String parameterName) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getCharacterStream(parameterName); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public Reader getNCharacterStream(int parameterIndex) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getCharacterStream(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public Reader getNCharacterStream(String parameterName) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getNCharacterStream(parameterName); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public NClob getNClob(int parameterIndex) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getNClob(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public NClob getNClob(String parameterName) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getNClob(parameterName); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public String getNString(int parameterIndex) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getNString(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public String getNString(String parameterName) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getNString(parameterName); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public RowId getRowId(int parameterIndex) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getRowId(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public RowId getRowId(String parameterName) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getRowId(parameterName); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public SQLXML getSQLXML(int parameterIndex) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getSQLXML(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public SQLXML getSQLXML(String parameterName) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .getSQLXML(parameterName); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return null; -// } -// -// public void setAsciiStream(String parameterName, InputStream x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setAsciiStream(parameterName, x) ; -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setAsciiStream(String parameterName, InputStream x, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setAsciiStream(parameterName, x, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBinaryStream(String parameterName, InputStream x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBinaryStream(parameterName, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBinaryStream(String parameterName, InputStream x, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBinaryStream(parameterName, x, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(String parameterName, Blob x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBlob(parameterName, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(String parameterName, InputStream inputStream) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBlob(parameterName, inputStream); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBlob(parameterName, inputStream, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setCharacterStream(String parameterName, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setCharacterStream(parameterName, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setCharacterStream(String parameterName, Reader reader, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setCharacterStream(parameterName, reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(String parameterName, Clob x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setClob(parameterName, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(String parameterName, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setClob(parameterName, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(String parameterName, Reader reader, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setClob(parameterName, reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNCharacterStream(String parameterName, Reader value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNCharacterStream(parameterName, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNCharacterStream(parameterName, value, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(String parameterName, NClob value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNClob(parameterName, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(String parameterName, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNClob(parameterName, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(String parameterName, Reader reader, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNClob(parameterName, reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNString(String parameterName, String value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNString(parameterName, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setRowId(String parameterName, RowId x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setRowId(parameterName, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setSQLXML(parameterName, xmlObject); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setAsciiStream(int parameterIndex, InputStream x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setAsciiStream(parameterIndex, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setAsciiStream(parameterIndex, x, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBinaryStream(int parameterIndex, InputStream x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBinaryStream(parameterIndex, x) ; -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBinaryStream(parameterIndex, x, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBlob(parameterIndex, inputStream); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setBlob(parameterIndex, inputStream, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setCharacterStream(int parameterIndex, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setCharacterStream(parameterIndex, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .getCharacterStream(parameterIndex); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(int parameterIndex, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setClob(parameterIndex, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(int parameterIndex, Reader reader, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setClob(parameterIndex, reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNCharacterStream(int parameterIndex, Reader value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNCharacterStream(parameterIndex, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// } -// -// public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNCharacterStream(parameterIndex, value, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(int parameterIndex, NClob value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNClob(parameterIndex, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(int parameterIndex, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNClob(parameterIndex, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(int parameterIndex, Reader reader, long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNClob(parameterIndex, reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNString(int parameterIndex, String value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setNString(parameterIndex, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setRowId(int parameterIndex, RowId x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setRowId(parameterIndex, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((CallableStatement) this.wrappedStmt) -// .setSQLXML(parameterIndex, xmlObject); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// } -// -// public boolean isClosed() throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// .isClosed(); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return true; -// } -// -// public boolean isPoolable() throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((CallableStatement) this.wrappedStmt) -// . isPoolable(); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return false; -// } -// + + public Reader getCharacterStream(int parameterIndex) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getCharacterStream(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public Reader getCharacterStream(String parameterName) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getCharacterStream(parameterName); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public Reader getNCharacterStream(int parameterIndex) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getCharacterStream(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public Reader getNCharacterStream(String parameterName) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getNCharacterStream(parameterName); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public NClob getNClob(int parameterIndex) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getNClob(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public NClob getNClob(String parameterName) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getNClob(parameterName); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public String getNString(int parameterIndex) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getNString(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public String getNString(String parameterName) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getNString(parameterName); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public RowId getRowId(int parameterIndex) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getRowId(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public RowId getRowId(String parameterName) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getRowId(parameterName); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public SQLXML getSQLXML(int parameterIndex) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getSQLXML(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public SQLXML getSQLXML(String parameterName) throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .getSQLXML(parameterName); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return null; + } + + public void setAsciiStream(String parameterName, InputStream x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setAsciiStream(parameterName, x) ; + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setAsciiStream(String parameterName, InputStream x, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setAsciiStream(parameterName, x, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBinaryStream(String parameterName, InputStream x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBinaryStream(parameterName, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBinaryStream(String parameterName, InputStream x, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBinaryStream(parameterName, x, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(String parameterName, Blob x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBlob(parameterName, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(String parameterName, InputStream inputStream) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBlob(parameterName, inputStream); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBlob(parameterName, inputStream, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setCharacterStream(String parameterName, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setCharacterStream(parameterName, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setCharacterStream(String parameterName, Reader reader, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setCharacterStream(parameterName, reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(String parameterName, Clob x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setClob(parameterName, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(String parameterName, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setClob(parameterName, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(String parameterName, Reader reader, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setClob(parameterName, reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNCharacterStream(String parameterName, Reader value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNCharacterStream(parameterName, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNCharacterStream(parameterName, value, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(String parameterName, NClob value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNClob(parameterName, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(String parameterName, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNClob(parameterName, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(String parameterName, Reader reader, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNClob(parameterName, reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNString(String parameterName, String value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNString(parameterName, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setRowId(String parameterName, RowId x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setRowId(parameterName, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setSQLXML(parameterName, xmlObject); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setAsciiStream(int parameterIndex, InputStream x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setAsciiStream(parameterIndex, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setAsciiStream(parameterIndex, x, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBinaryStream(int parameterIndex, InputStream x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBinaryStream(parameterIndex, x) ; + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBinaryStream(parameterIndex, x, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBlob(parameterIndex, inputStream); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setBlob(parameterIndex, inputStream, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setCharacterStream(int parameterIndex, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setCharacterStream(parameterIndex, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .getCharacterStream(parameterIndex); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(int parameterIndex, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setClob(parameterIndex, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(int parameterIndex, Reader reader, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setClob(parameterIndex, reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNCharacterStream(int parameterIndex, Reader value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNCharacterStream(parameterIndex, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + } + + public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNCharacterStream(parameterIndex, value, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(int parameterIndex, NClob value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNClob(parameterIndex, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(int parameterIndex, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNClob(parameterIndex, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(int parameterIndex, Reader reader, long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNClob(parameterIndex, reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNString(int parameterIndex, String value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setNString(parameterIndex, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setRowId(int parameterIndex, RowId x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setRowId(parameterIndex, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((CallableStatement) this.wrappedStmt) + .setSQLXML(parameterIndex, xmlObject); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + } + + public boolean isClosed() throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + .isClosed(); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return true; + } + + public boolean isPoolable() throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((CallableStatement) this.wrappedStmt) + . isPoolable(); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return false; + } + // public void setPoolable(boolean poolable) throws SQLException { // try { // if (this.wrappedStmt != null) { --- src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java 2009-11-29 01:26:55.000000000 +0100 @@ -25,9 +25,16 @@ package com.mysql.jdbc.jdbc2.optional; import java.lang.reflect.Constructor; +import java.sql.Array; +import java.sql.Blob; +import java.sql.Clob; +import java.sql.NClob; +import java.sql.SQLClientInfoException; import java.sql.SQLException; +import java.sql.SQLXML; import java.sql.Savepoint; import java.sql.Statement; +import java.sql.Struct; import java.util.Map; import java.util.Properties; import java.util.TimeZone; @@ -2619,4 +2627,58 @@ public Properties getProperties() { return this.mc.getProperties(); } + + public boolean isValid(int timeout) throws SQLException { + return this.isValid(timeout); + } + + public Array createArrayOf(String typeName, Object[] elements) throws SQLException { + return this.mc.createArrayOf(typeName, elements); + } + + public Blob createBlob() throws SQLException { + return this.mc.createBlob(); + } + + public Clob createClob() throws SQLException { + return this.mc.createClob(); + } + + public NClob createNClob() throws SQLException { + return this.mc.createNClob(); + } + + public SQLXML createSQLXML() throws SQLException { + return this.mc.createSQLXML(); + } + + public Struct createStruct(String typeName, Object[] attributes) throws SQLException { + return this.mc.createStruct(typeName, attributes); + } + + public Properties getClientInfo() throws SQLException { + return this.mc.getClientInfo(); + } + + public String getClientInfo(String name) throws SQLException { + return this.mc.getClientInfo(name); + } + + public void setClientInfo(Properties properties) + throws SQLClientInfoException { + this.mc.setClientInfo(properties); + } + + public void setClientInfo(String name, String value) + throws SQLClientInfoException { + this.mc.setClientInfo(name, value); + } + + public boolean isWrapperFor(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } + + public T unwrap(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } } \ No newline at end of file --- src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java 2009-11-29 01:15:15.000000000 +0100 @@ -38,6 +38,7 @@ import com.mysql.jdbc.ConnectionPropertiesImpl; import com.mysql.jdbc.NonRegisteringDriver; +import com.mysql.jdbc.SQLError; /** * A JNDI DataSource for a Mysql JDBC connection @@ -438,12 +439,12 @@ return mysqlDriver.connect(jdbcUrlToUse, props); } -// -// public boolean isWrapperFor(Class iface) throws SQLException { -// throw SQLError.notImplemented(); -// } -// -// public T unwrap(Class iface) throws SQLException { -// throw SQLError.notImplemented(); -// } + + public boolean isWrapperFor(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } + + public T unwrap(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } } --- src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java 2009-11-29 01:20:09.000000000 +0100 @@ -33,6 +33,7 @@ import javax.sql.ConnectionEvent; import javax.sql.ConnectionEventListener; import javax.sql.PooledConnection; +import javax.sql.StatementEventListener; import com.mysql.jdbc.ConnectionImpl; import com.mysql.jdbc.ExceptionInterceptor; @@ -255,4 +256,10 @@ protected ExceptionInterceptor getExceptionInterceptor() { return this.exceptionInterceptor; } + + public void addStatementEventListener(StatementEventListener listener) { + } + + public void removeStatementEventListener(StatementEventListener listener) { + } } \ No newline at end of file --- src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java.orig 2009-11-28 21:35:25.000000000 +0100 +++ src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java 2009-11-29 01:24:42.000000000 +0100 @@ -33,12 +33,15 @@ import java.sql.Blob; import java.sql.Clob; import java.sql.Date; +import java.sql.NClob; import java.sql.ParameterMetaData; import java.sql.PreparedStatement; import java.sql.Ref; import java.sql.ResultSet; import java.sql.ResultSetMetaData; +import java.sql.RowId; import java.sql.SQLException; +import java.sql.SQLXML; import java.sql.Time; import java.sql.Timestamp; import java.util.Calendar; @@ -885,323 +888,323 @@ // that out } -// -// public void setAsciiStream(int parameterIndex, InputStream x) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setAsciiStream( -// parameterIndex, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setAsciiStream(int parameterIndex, InputStream x, long length) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setAsciiStream( -// parameterIndex, x, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBinaryStream(int parameterIndex, InputStream x) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setBinaryStream( -// parameterIndex, x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBinaryStream(int parameterIndex, InputStream x, long length) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setBinaryStream( -// parameterIndex, x, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(int parameterIndex, InputStream inputStream) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setBlob(parameterIndex, -// inputStream); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setBlob(int parameterIndex, InputStream inputStream, long length) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setBlob(parameterIndex, -// inputStream, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setCharacterStream(int parameterIndex, Reader reader) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setCharacterStream( -// parameterIndex, reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setCharacterStream(int parameterIndex, Reader reader, -// long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setCharacterStream( -// parameterIndex, reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(int parameterIndex, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setClob(parameterIndex, -// reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setClob(int parameterIndex, Reader reader, long length) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setClob(parameterIndex, -// reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNCharacterStream(int parameterIndex, Reader value) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setNCharacterStream( -// parameterIndex, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNCharacterStream(int parameterIndex, Reader value, -// long length) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setNCharacterStream( -// parameterIndex, value, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(int parameterIndex, NClob value) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setNClob(parameterIndex, -// value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(int parameterIndex, Reader reader) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setNClob(parameterIndex, -// reader); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNClob(int parameterIndex, Reader reader, long length) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setNClob(parameterIndex, -// reader, length); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setNString(int parameterIndex, String value) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setNString( -// parameterIndex, value); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setRowId(int parameterIndex, RowId x) throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setRowId(parameterIndex, -// x); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public void setSQLXML(int parameterIndex, SQLXML xmlObject) -// throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// ((PreparedStatement) this.wrappedStmt).setSQLXML( -// parameterIndex, xmlObject); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// } -// -// public boolean isClosed() throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((PreparedStatement) this.wrappedStmt).isClosed(); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return true; -// } -// -// public boolean isPoolable() throws SQLException { -// try { -// if (this.wrappedStmt != null) { -// return ((PreparedStatement) this.wrappedStmt).isPoolable(); -// } else { -// throw SQLError.createSQLException( -// "No operations allowed after statement closed", -// SQLError.SQL_STATE_GENERAL_ERROR); -// } -// } catch (SQLException sqlEx) { -// checkAndFireConnectionError(sqlEx); -// } -// -// return false; -// } -// + + public void setAsciiStream(int parameterIndex, InputStream x) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setAsciiStream( + parameterIndex, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setAsciiStream(int parameterIndex, InputStream x, long length) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setAsciiStream( + parameterIndex, x, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBinaryStream(int parameterIndex, InputStream x) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setBinaryStream( + parameterIndex, x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBinaryStream(int parameterIndex, InputStream x, long length) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setBinaryStream( + parameterIndex, x, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(int parameterIndex, InputStream inputStream) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setBlob(parameterIndex, + inputStream); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setBlob(int parameterIndex, InputStream inputStream, long length) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setBlob(parameterIndex, + inputStream, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setCharacterStream(int parameterIndex, Reader reader) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setCharacterStream( + parameterIndex, reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setCharacterStream(int parameterIndex, Reader reader, + long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setCharacterStream( + parameterIndex, reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(int parameterIndex, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setClob(parameterIndex, + reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setClob(int parameterIndex, Reader reader, long length) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setClob(parameterIndex, + reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNCharacterStream(int parameterIndex, Reader value) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setNCharacterStream( + parameterIndex, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNCharacterStream(int parameterIndex, Reader value, + long length) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setNCharacterStream( + parameterIndex, value, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(int parameterIndex, NClob value) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setNClob(parameterIndex, + value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(int parameterIndex, Reader reader) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setNClob(parameterIndex, + reader); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNClob(int parameterIndex, Reader reader, long length) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setNClob(parameterIndex, + reader, length); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setNString(int parameterIndex, String value) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setNString( + parameterIndex, value); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setRowId(int parameterIndex, RowId x) throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setRowId(parameterIndex, + x); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public void setSQLXML(int parameterIndex, SQLXML xmlObject) + throws SQLException { + try { + if (this.wrappedStmt != null) { + ((PreparedStatement) this.wrappedStmt).setSQLXML( + parameterIndex, xmlObject); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public boolean isClosed() throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((PreparedStatement) this.wrappedStmt).isClosed(); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return true; + } + + public boolean isPoolable() throws SQLException { + try { + if (this.wrappedStmt != null) { + return ((PreparedStatement) this.wrappedStmt).isPoolable(); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return false; + } + // public void setPoolable(boolean poolable) throws SQLException { // try { // if (this.wrappedStmt != null) { --- src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java 2009-11-29 01:26:15.000000000 +0100 @@ -864,4 +864,58 @@ checkAndFireConnectionError(sqlEx); } } + + public boolean isPoolable() throws SQLException { + try { + if (this.wrappedStmt != null) { + return this.wrappedStmt.isPoolable(); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return false; + } + + public void setPoolable(boolean poolable) throws SQLException { + try { + if (this.wrappedStmt != null) { + this.wrappedStmt.setPoolable(poolable); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + } + + public boolean isClosed() throws SQLException { + try { + if (this.wrappedStmt != null) { + return this.wrappedStmt.isClosed(); + } else { + throw SQLError.createSQLException( + "No operations allowed after statement closed", + SQLError.SQL_STATE_GENERAL_ERROR, this.exceptionInterceptor); + } + } catch (SQLException sqlEx) { + checkAndFireConnectionError(sqlEx); + } + + return true; + } + + public boolean isWrapperFor(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } + + public T unwrap(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } } --- src/com/mysql/jdbc/PreparedStatement.java.orig 2009-11-28 21:58:03.000000000 +0100 +++ src/com/mysql/jdbc/PreparedStatement.java 2009-11-28 23:30:09.000000000 +0100 @@ -44,10 +44,13 @@ import java.sql.Clob; import java.sql.DatabaseMetaData; import java.sql.Date; +import java.sql.NClob; import java.sql.ParameterMetaData; import java.sql.Ref; import java.sql.ResultSet; +import java.sql.RowId; import java.sql.SQLException; +import java.sql.SQLXML; import java.sql.Time; import java.sql.Timestamp; import java.sql.Types; @@ -5595,4 +5598,19 @@ statementStartPos, sql, "SELECT", "\"'`", "\"'`", false) == -1 && rewritableOdku; } + + public void setSQLXML(int parameterIndex, SQLXML xmlObject) + throws SQLException { + throw SQLError.notImplemented(); + } + + public void setNClob(int parameterIndex, NClob value) + throws SQLException { + throw SQLError.notImplemented(); + } + + public void setRowId(int parameterIndex, RowId x) + throws SQLException { + throw SQLError.notImplemented(); + } } --- src/com/mysql/jdbc/ReplicationConnection.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/ReplicationConnection.java 2009-11-29 00:59:02.000000000 +0100 @@ -21,13 +21,20 @@ */ package com.mysql.jdbc; +import java.sql.Array; +import java.sql.Blob; import java.sql.CallableStatement; +import java.sql.Clob; import java.sql.DatabaseMetaData; +import java.sql.NClob; import java.sql.PreparedStatement; +import java.sql.SQLClientInfoException; import java.sql.SQLException; import java.sql.SQLWarning; +import java.sql.SQLXML; import java.sql.Savepoint; import java.sql.Statement; +import java.sql.Struct; import java.util.Map; import java.util.Properties; import java.util.TimeZone; @@ -2412,4 +2419,60 @@ boolean queryTimeoutKillsConnection) { this.currentConnection.setQueryTimeoutKillsConnection(queryTimeoutKillsConnection); } + + public boolean isValid(int timeout) throws SQLException { + return this.currentConnection.isValid(timeout); + } + + public Properties getClientInfo() throws SQLException { + return this.currentConnection.getClientInfo(); + } + + public String getClientInfo(String name) throws SQLException { + return this.currentConnection.getClientInfo(name); + } + + public void setClientInfo(Properties properties) + throws SQLClientInfoException { + this.currentConnection.setClientInfo(properties); + } + + public void setClientInfo(String name, String value) + throws SQLClientInfoException { + this.currentConnection.setClientInfo(name, value); + } + + public Array createArrayOf(String typeName, Object[] elements) + throws SQLException { + return this.currentConnection.createArrayOf(typeName, elements); + } + + public Blob createBlob() throws SQLException { + return this.currentConnection.createBlob(); + } + + public Clob createClob() throws SQLException { + return this.currentConnection.createClob(); + } + + public NClob createNClob() throws SQLException { + return this.currentConnection.createNClob(); + } + + public SQLXML createSQLXML() throws SQLException { + return this.currentConnection.createSQLXML(); + } + + public Struct createStruct(String typeName, Object[] attributes) + throws SQLException { + return this.currentConnection.createStruct(typeName, attributes); + } + + public boolean isWrapperFor(Class iface) throws SQLException { + return this.currentConnection.isWrapperFor(iface); + } + + public T unwrap(Class iface) throws SQLException { + return this.currentConnection.unwrap(iface); + } } --- src/com/mysql/jdbc/ResultSetImpl.java.orig 2009-11-28 18:58:49.000000000 +0100 +++ src/com/mysql/jdbc/ResultSetImpl.java 2009-11-29 01:21:22.000000000 +0100 @@ -25,6 +25,7 @@ package com.mysql.jdbc; import java.io.ByteArrayInputStream; +import java.io.Reader; import java.io.IOException; import java.io.InputStream; import java.io.ObjectInputStream; @@ -36,10 +37,14 @@ import java.net.MalformedURLException; import java.net.URL; import java.sql.Array; +import java.sql.Clob; import java.sql.Date; +import java.sql.NClob; import java.sql.Ref; +import java.sql.RowId; import java.sql.SQLException; import java.sql.SQLWarning; +import java.sql.SQLXML; import java.sql.Time; import java.sql.Timestamp; import java.sql.Types; @@ -8779,4 +8784,244 @@ protected ExceptionInterceptor getExceptionInterceptor() { return this.exceptionInterceptor; } + + public boolean isClosed() throws SQLException { + return this.isClosed; + } + + public int getHoldability() throws SQLException { + throw SQLError.notImplemented(); + } + + public void updateAsciiStream(int columnIndex, InputStream inputStream) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateAsciiStream(String columnLabel, InputStream inputStream) + throws SQLException { + updateAsciiStream(findColumn(columnLabel), inputStream); + } + + public void updateAsciiStream(int columnIndex, InputStream inputStream, + long length) throws SQLException { + throw new NotUpdatable(); + } + + public void updateAsciiStream(String columnLabel, InputStream inputStream, + long length) throws SQLException { + updateAsciiStream(findColumn(columnLabel), inputStream, length); + } + + public void updateBinaryStream(int columnIndex, InputStream inputStream) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateBinaryStream(String columnLabel, + InputStream inputStream) throws SQLException { + updateBinaryStream(findColumn(columnLabel), inputStream); + } + + public void updateBinaryStream(int columnIndex, InputStream inputStream, + long length) throws SQLException { + throw new NotUpdatable(); + } + + public void updateBinaryStream(String columnLabel, InputStream inputStream, + long length) throws SQLException { + updateBinaryStream(findColumn(columnLabel), inputStream, length); + } + + public void updateBlob(int columnIndex, InputStream inputStream) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateBlob(String columnLabel, InputStream inputStream) + throws SQLException { + updateBlob(findColumn(columnLabel), inputStream); + } + + public void updateBlob(int columnIndex, InputStream inputStream, + long length) throws SQLException { + throw new NotUpdatable(); + } + + public void updateBlob(String columnLabel, InputStream inputStream, + long length) throws SQLException { + updateBlob(findColumn(columnLabel), inputStream, length); + } + + public void updateCharacterStream(int columnIndex, Reader reader) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateCharacterStream(String columnLabel, Reader reader) + throws SQLException { + updateCharacterStream(findColumn(columnLabel), reader); + } + + public void updateCharacterStream(int columnIndex, Reader reader, + long length) throws SQLException { + throw new NotUpdatable(); + } + + public void updateCharacterStream(String columnLabel, Reader reader, + long length) throws SQLException { + updateCharacterStream(findColumn(columnLabel), reader, length); + } + + public void updateClob(int columnIndex, Reader reader) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateClob(String columnLabel, Reader reader) + throws SQLException { + updateClob(findColumn(columnLabel), reader); + } + + public void updateClob(int columnIndex, Reader reader, long length) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateClob(String columnLabel, Reader reader, long length) + throws SQLException { + updateClob(findColumn(columnLabel), reader, length); + } + + public Reader getNCharacterStream(int columnIndex) + throws SQLException { + throw SQLError.notImplemented(); + } + + public Reader getNCharacterStream(String columnLabel) + throws SQLException { + return getNCharacterStream(findColumn(columnLabel)); + } + + public void updateNCharacterStream(int columnIndex, Reader reader) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateNCharacterStream(String columnLabel, Reader reader) + throws SQLException { + updateNCharacterStream(findColumn(columnLabel), reader); + } + + public void updateNCharacterStream(int columnIndex, Reader reader, + long length) throws SQLException { + throw new NotUpdatable(); + } + + public void updateNCharacterStream(String columnLabel, Reader reader, + long length) throws SQLException { + updateNCharacterStream(findColumn(columnLabel), reader, length); + } + + public NClob getNClob(int columnIndex) + throws SQLException { + throw SQLError.notImplemented(); + } + + public NClob getNClob(String columnLabel) + throws SQLException { + return getNClob(findColumn(columnLabel)); + } + + public void updateNClob(int columnIndex, NClob value) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateNClob(String columnLabel, NClob value) + throws SQLException { + updateNClob(findColumn(columnLabel), value); + } + + public void updateNClob(int columnIndex, Reader reader) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateNClob(String columnLabel, Reader reader) + throws SQLException { + updateNClob(findColumn(columnLabel), reader); + } + + public void updateNClob(int columnIndex, Reader reader, long length) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateNClob(String columnLabel, Reader reader, long length) + throws SQLException { + updateNClob(findColumn(columnLabel), reader, length); + } + + public String getNString(int columnIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public String getNString(String columnLabel) throws SQLException { + return getNString(findColumn(columnLabel)); + } + + public void updateNString(int columnIndex, String value) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateNString(String columnLabel, String value) + throws SQLException { + updateNString(findColumn(columnLabel), value); + } + + public SQLXML getSQLXML(int columnIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public SQLXML getSQLXML(String columnLabel) throws SQLException { + return getSQLXML(findColumn(columnLabel)); + } + + public void updateSQLXML(int columnIndex, SQLXML xmlObject) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateSQLXML(String columnLabel, SQLXML xmlObject) + throws SQLException { + updateSQLXML(findColumn(columnLabel), xmlObject); + } + + public RowId getRowId(int columnIndex) throws SQLException { + throw SQLError.notImplemented(); + } + + public RowId getRowId(String columnLabel) throws SQLException { + return getRowId(findColumn(columnLabel)); + } + + public void updateRowId(int columnIndex, RowId x) + throws SQLException { + throw new NotUpdatable(); + } + + public void updateRowId(String columnLabel, RowId x) + throws SQLException { + updateRowId(findColumn(columnLabel), x); + } + + public boolean isWrapperFor(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } + + public T unwrap(Class iface) throws SQLException { + throw SQLError.notImplemented(); + } }