From dba89fbc3885890c48b243ffec9687996c517d139523459c3c57f75b45d6741d Mon Sep 17 00:00:00 2001 From: Michal Vyskocil Date: Thu, 19 Sep 2013 14:22:42 +0000 Subject: [PATCH] - update to 5.1.25 (see CHANGES for full list) * support for Connection Attributes when used with MySQL Server versions (5.6+). 5.1.24 * support of password expiration protocol. This introduces new boolean connection property disconnectOnExpiredPasswords. 5.1.23 * added support of password expiration protocol. * driver now allows the mechanism for caching MySQL server configuration values replaceable at runtime. * Connection.setReadOnly() will take advantage of server-side support for read-only transactions present in MySQL-5.6 and newer. Calling .isReadOnly() will incur a round-trip if useLocalSessionState. 5.1.22 * support of ON UPDATE CURRENT_TIMESTAMP for TIMESTAMP and DATETIME fields. 5.1.21 * new built-in authentication plugin com.mysql.jdbc.authentication.Sha256PasswordPlugin ("sha256_password"). * Added new built-in authentication plugin com.mysql.jdbc.authentication.MysqlClearPasswordPlugin ("mysql_clear_password"). It allows C/J based clients to connect to MySQL accounts. * the ability to add new client-side prepared statement parse info caches * implemented several JDBC-4.1 methods from Java-7: 5.1.19: * Added support for pluggable authentication via the com.mysql.jdbc.AuthenticationPlugin - rebase and rename mysql-connector-java-5.1.19-java7.patch to * mysql-connector-java-7-jdbc-4.1.patch OBS-URL: https://build.opensuse.org/package/show/Java:packages/mysql-connector-java?expand=0&rev=15 --- mysql-connector-java-5.1.19-java7.patch | 81 - mysql-connector-java-5.1.19-suse.tar.xz | 3 - mysql-connector-java-5.1.25-suse.tar.xz | 3 + mysql-connector-java-7-jdbc-4.1.patch | 1978 +++++++++++++++++++++++ mysql-connector-java.changes | 30 + mysql-connector-java.spec | 14 +- 6 files changed, 2019 insertions(+), 90 deletions(-) delete mode 100644 mysql-connector-java-5.1.19-java7.patch delete mode 100644 mysql-connector-java-5.1.19-suse.tar.xz create mode 100644 mysql-connector-java-5.1.25-suse.tar.xz create mode 100644 mysql-connector-java-7-jdbc-4.1.patch diff --git a/mysql-connector-java-5.1.19-java7.patch b/mysql-connector-java-5.1.19-java7.patch deleted file mode 100644 index f928aa9..0000000 --- a/mysql-connector-java-5.1.19-java7.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff -Naur mysql-connector-java-5.1.17.orig/src/com/mysql/jdbc/JDBC4Connection.java mysql-connector-java-5.1.17/src/com/mysql/jdbc/JDBC4Connection.java ---- mysql-connector-java-5.1.17.orig/src/com/mysql/jdbc/JDBC4Connection.java 2011-07-04 10:24:08.000000000 -0400 -+++ mysql-connector-java-5.1.17/src/com/mysql/jdbc/JDBC4Connection.java 2012-05-03 18:03:28.311324320 -0400 -@@ -28,9 +28,11 @@ - import java.sql.Clob; - import java.sql.SQLClientInfoException; - import java.sql.SQLException; -+import java.sql.SQLFeatureNotSupportedException; - import java.sql.SQLXML; - import java.sql.NClob; - import java.sql.Struct; -+import java.util.concurrent.Executor; - import java.util.Properties; - import java.util.TimerTask; - -@@ -234,4 +236,25 @@ - - return this.infoProvider; - } -+ -+ public int getNetworkTimeout() throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public void setNetworkTimeout(Executor executor, int millis) throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public void abort(Executor executor) throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public String getSchema() throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public void setSchema(String schema) throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ - } -diff -Naur mysql-connector-java-5.1.17.orig/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java mysql-connector-java-5.1.17/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java ---- mysql-connector-java-5.1.17.orig/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java 2011-07-04 10:24:08.000000000 -0400 -+++ mysql-connector-java-5.1.17/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java 2012-05-03 18:03:28.312324397 -0400 -@@ -29,9 +29,11 @@ - import java.sql.Clob; - import java.sql.SQLClientInfoException; - import java.sql.SQLException; -+import java.sql.SQLFeatureNotSupportedException; - import java.sql.SQLXML; - import java.sql.NClob; - import java.sql.Struct; -+import java.util.concurrent.Executor; - import java.util.Properties; - import java.util.TimerTask; - -@@ -129,4 +131,24 @@ - return this.getJDBC4Connection().getClientInfoProviderImpl(); - - } -+ -+ public int getNetworkTimeout() throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public void setNetworkTimeout(Executor executor, int millis) throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public void abort(Executor executor) throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public String getSchema() throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } -+ -+ public void setSchema(String schema) throws SQLException { -+ throw new SQLFeatureNotSupportedException("Not supported"); -+ } - } diff --git a/mysql-connector-java-5.1.19-suse.tar.xz b/mysql-connector-java-5.1.19-suse.tar.xz deleted file mode 100644 index 75759d5..0000000 --- a/mysql-connector-java-5.1.19-suse.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5715fe210ad0d6ff606841b65ea02840babbf4d0c881e30478d2f9bcb6762420 -size 1307836 diff --git a/mysql-connector-java-5.1.25-suse.tar.xz b/mysql-connector-java-5.1.25-suse.tar.xz new file mode 100644 index 0000000..4cb0730 --- /dev/null +++ b/mysql-connector-java-5.1.25-suse.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37a31f6afea8ce3b4c382dd0b0e93b284bdbb3e9c7180919581c0fbfdf551260 +size 1336544 diff --git a/mysql-connector-java-7-jdbc-4.1.patch b/mysql-connector-java-7-jdbc-4.1.patch new file mode 100644 index 0000000..39e3731 --- /dev/null +++ b/mysql-connector-java-7-jdbc-4.1.patch @@ -0,0 +1,1978 @@ +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/CallableStatement.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/CallableStatement.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/CallableStatement.java +@@ -31,11 +31,15 @@ import java.net.URL; + import java.sql.Array; + import java.sql.Blob; + import java.sql.Clob; ++import java.sql.NClob; + import java.sql.Date; + import java.sql.ParameterMetaData; + import java.sql.Ref; + import java.sql.ResultSet; ++import java.sql.RowId; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.SQLXML; + import java.sql.Time; + import java.sql.Timestamp; + import java.sql.Types; +@@ -426,11 +430,11 @@ public class CallableStatement extends P + * @throws java.sql.SQLException If no object found that implements the interface + * @since 1.6 + */ +- public Object unwrap(Class iface) throws java.sql.SQLException { ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { + try { + // This works for classes that aren't actually wrapping + // anything +- return Util.cast(iface, this); ++ return iface.cast(this); + } catch (ClassCastException cce) { + throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), + SQLError.SQL_STATE_ILLEGAL_ARGUMENT, getExceptionInterceptor()); +@@ -2670,4 +2674,95 @@ public class CallableStatement extends P + } + } + } ++ ++ @Override ++ public void setNClob(String parameterName, NClob value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(String parameterName, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(String parameterName, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getCharacterStream(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getCharacterStream(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob (int parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob (String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNString(String parameterName, String value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setRowId(String parameterName, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/ConnectionImpl.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/ConnectionImpl.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/ConnectionImpl.java +@@ -34,11 +34,16 @@ import java.nio.charset.Charset; + import java.nio.charset.CharsetEncoder; + import java.sql.Blob; + import java.sql.DatabaseMetaData; ++import java.sql.NClob; + import java.sql.ResultSet; + import java.sql.SQLException; ++import java.sql.SQLXML; + import java.sql.SQLPermission; + import java.sql.SQLWarning; + import java.sql.Savepoint; ++import java.sql.SQLClientInfoException; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.Struct; + import java.util.ArrayList; + import java.util.Calendar; + import java.util.Collections; +@@ -6101,4 +6106,71 @@ public class ConnectionImpl extends Conn + return getSocketTimeout(); + } + } ++ ++ @Override ++ public Struct createStruct(String typeName, Object[] attributes) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getClientInfo(String name) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Properties getClientInfo() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClientInfo(String name, String value) ++ throws SQLClientInfoException { ++ //throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClientInfo(Properties properties) throws SQLClientInfoException { ++ //throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isValid(int timeout) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML createSQLXML() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob createNClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Blob createBlob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Clob createClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/DatabaseMetaData.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/DatabaseMetaData.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/DatabaseMetaData.java +@@ -30,6 +30,8 @@ import java.sql.ResultSet; + import java.sql.SQLException; + import java.sql.Statement; + import java.sql.Types; ++import java.sql.RowIdLifetime; ++import java.sql.SQLFeatureNotSupportedException; + import java.util.ArrayList; + import java.util.Collections; + import java.util.HashMap; +@@ -8540,4 +8542,37 @@ public class DatabaseMetaData implements + throws SQLException { + return true; + } ++ ++ @Override ++ public ResultSet getFunctions(String catalog, String schemaPattern, ++ String functionNamePattern) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public ResultSet getClientInfoProperties() ++ throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean autoCommitFailureClosesAllResultSets() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowIdLifetime getRowIdLifetime() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/Driver.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/Driver.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/Driver.java +@@ -26,6 +26,8 @@ + package com.mysql.jdbc; + + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; ++import java.util.logging.Logger; + + /** + * The Java SQL framework allows for multiple database drivers. Each driver +@@ -78,4 +80,9 @@ public class Driver extends NonRegisteri + public Driver() throws SQLException { + // Required for Class.forName().newInstance() + } ++ ++ @Override ++ public Logger getParentLogger() throws SQLFeatureNotSupportedException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java +@@ -35,8 +35,12 @@ import java.sql.Blob; + 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.SQLFeatureNotSupportedException; ++import java.sql.SQLXML; + import java.sql.Time; + import java.sql.Timestamp; + import java.util.Calendar; +@@ -2636,4 +2640,169 @@ public class CallableStatementWrapper ex + // throw SQLError.notImplemented(); + // } + ++ @Override ++ public T getObject(int parameterIndex, Class type) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T getObject(String parameterName, Class type) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBlob(String parameterName, InputStream inputStream) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClob(String parameterName, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNCharacterStream(String parameterName, Reader value) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setCharacterStream(String parameterName, java.io.Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBinaryStream(String parameterName, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setAsciiStream(String parameterName, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setCharacterStream(String parameterName, java.io.Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBinaryStream(String parameterName, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setAsciiStream(String parameterName, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClob (String parameterName, Clob x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBlob (String parameterName, Blob x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getCharacterStream(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getCharacterStream(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob (String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob (int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(String parameterName, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClob(String parameterName, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(String parameterName, NClob value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNString(String parameterName, String value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setRowId(String parameterName, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(String parameterName) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(int parameterIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java +@@ -26,8 +26,15 @@ + package com.mysql.jdbc.jdbc2.optional; + + import java.lang.reflect.Constructor; ++import java.sql.Blob; ++import java.sql.Clob; ++import java.sql.NClob; + import java.sql.SQLException; ++import java.sql.SQLXML; + import java.sql.Savepoint; ++import java.sql.SQLClientInfoException; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.Struct; + import java.sql.Statement; + import java.util.Map; + import java.util.Properties; +@@ -2834,4 +2841,68 @@ public class ConnectionWrapper extends W + return this.mc.getConnectionMutex(); + } + +-} +\ No newline at end of file ++ @Override ++ public Struct createStruct(String typeName, Object[] attributes) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getClientInfo(String name) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Properties getClientInfo() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ @Override ++ public void setClientInfo(String name, String value) throws SQLClientInfoException { ++ //throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClientInfo(Properties properties) throws SQLClientInfoException { ++ //throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isValid(int timeout) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML createSQLXML() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob createNClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Blob createBlob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Clob createClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++} +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java +@@ -28,8 +28,10 @@ package com.mysql.jdbc.jdbc2.optional; + import java.io.PrintWriter; + import java.io.Serializable; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.util.Iterator; + import java.util.Properties; ++import java.util.logging.Logger; + + import javax.naming.NamingException; + import javax.naming.Reference; +@@ -450,4 +452,19 @@ public class MysqlDataSource extends Con + // public T unwrap(Class iface) throws SQLException { + // throw SQLError.notImplemented(); + // } ++ ++ @Override ++ public Logger getParentLogger() throws SQLFeatureNotSupportedException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java +@@ -27,6 +27,7 @@ package com.mysql.jdbc.jdbc2.optional; + import java.lang.reflect.Constructor; + import java.sql.Connection; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.util.HashMap; + import java.util.Iterator; + import java.util.Map; +@@ -34,6 +35,7 @@ import java.util.Map; + import javax.sql.ConnectionEvent; + import javax.sql.ConnectionEventListener; + import javax.sql.PooledConnection; ++import javax.sql.StatementEventListener; + + import com.mysql.jdbc.ExceptionInterceptor; + import com.mysql.jdbc.SQLError; +@@ -254,4 +256,13 @@ public class MysqlPooledConnection imple + protected ExceptionInterceptor getExceptionInterceptor() { + return this.exceptionInterceptor; + } +-} +\ No newline at end of file ++ ++ @Override ++ public void addStatementEventListener(StatementEventListener listener) { ++ } ++ ++ @Override ++ public void removeStatementEventListener(StatementEventListener listener) { ++ } ++ ++} +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java +@@ -34,12 +34,16 @@ import java.sql.Array; + 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.SQLFeatureNotSupportedException; ++import java.sql.SQLXML; + import java.sql.Time; + import java.sql.Timestamp; + import java.util.Calendar; +@@ -1224,4 +1228,107 @@ public class PreparedStatementWrapper ex + // public Object unwrap(Class arg0) throws SQLException { + // throw SQLError.notImplemented(); + // } ++ ++ public void setNClob(String parameterName, NClob value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void setNClob(String parameterName, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void setNClob(String parameterName, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(int parameterName, NClob value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(int parameterName, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(int parameterName, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClob(int parameterIndex, Reader reader) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNCharacterStream(int parameterIndex, Reader value) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setCharacterStream(int parameterIndex, java.io.Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBinaryStream(int parameterIndex, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setAsciiStream(int parameterIndex, java.io.InputStream x) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setCharacterStream(int parameterIndex, java.io.Reader reader, long length) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBinaryStream(int parameterIndex, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setAsciiStream(int parameterIndex, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClob(int parameterIndex, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNString(int parameterIndex, String value) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setRowId(int parameterIndex, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java +@@ -29,6 +29,7 @@ import java.lang.reflect.Constructor; + import java.sql.Connection; + import java.sql.ResultSet; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.sql.SQLWarning; + import java.sql.Statement; + +@@ -866,4 +867,41 @@ public class StatementWrapper extends Wr + checkAndFireConnectionError(sqlEx); + } + } ++ ++ @Override ++ public boolean isCloseOnCompletion() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void closeOnCompletion() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isPoolable() throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setPoolable(boolean poolable) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isClosed() throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/JDBC4Connection.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/JDBC4Connection.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/JDBC4Connection.java +@@ -28,9 +28,11 @@ import java.sql.Blob; + import java.sql.Clob; + import java.sql.SQLClientInfoException; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.sql.SQLXML; + import java.sql.NClob; + import java.sql.Struct; ++import java.util.concurrent.Executor; + import java.util.Properties; + import java.util.TimerTask; + +@@ -200,7 +202,8 @@ public class JDBC4Connection extends Con + /** + * @see java.sql.Connection#createClob() + */ +- public Clob createClob() { ++ @Override ++ public com.mysql.jdbc.Clob createClob() throws SQLException { + return new com.mysql.jdbc.Clob(getExceptionInterceptor()); + } + +@@ -238,4 +241,25 @@ public class JDBC4Connection extends Con + return this.infoProvider; + } + } ++ ++ public int getNetworkTimeout() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void setNetworkTimeout(Executor executor, int millis) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void abort(Executor executor) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public String getSchema() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void setSchema(String schema) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java +@@ -29,9 +29,11 @@ import java.sql.Blob; + import java.sql.Clob; + import java.sql.SQLClientInfoException; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.sql.SQLXML; + import java.sql.NClob; + import java.sql.Struct; ++import java.util.concurrent.Executor; + import java.util.Properties; + import java.util.TimerTask; + +@@ -109,21 +111,24 @@ public class JDBC4LoadBalancedMySQLConne + /** + * @see java.sql.Connection#createBlob() + */ +- public Blob createBlob() { ++ @Override ++ public Blob createBlob() throws SQLException { + return this.getJDBC4Connection().createBlob(); + } + + /** + * @see java.sql.Connection#createClob() + */ +- public Clob createClob() { ++ @Override ++ public Clob createClob() throws SQLException { + return this.getJDBC4Connection().createClob(); + } + + /** + * @see java.sql.Connection#createNClob() + */ +- public NClob createNClob() { ++ @Override ++ public NClob createNClob() throws SQLException { + return this.getJDBC4Connection().createNClob(); + } + +@@ -133,6 +138,26 @@ public class JDBC4LoadBalancedMySQLConne + } + + } ++ ++ public int getNetworkTimeout() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void setNetworkTimeout(Executor executor, int millis) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void abort(Executor executor) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public String getSchema() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ public void setSchema(String schema) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + + + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/JDBC4MySQLConnection.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/JDBC4MySQLConnection.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/JDBC4MySQLConnection.java +@@ -63,11 +63,14 @@ public interface JDBC4MySQLConnection ex + + public T unwrap(java.lang.Class iface) throws java.sql.SQLException; + +- public Blob createBlob(); ++ @Override ++ public Blob createBlob() throws SQLException; + +- public Clob createClob(); ++ @Override ++ public Clob createClob() throws SQLException; + +- public NClob createNClob(); ++ @Override ++ public NClob createNClob() throws SQLException; + + + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/LoadBalancedMySQLConnection.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/LoadBalancedMySQLConnection.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/LoadBalancedMySQLConnection.java +@@ -29,6 +29,14 @@ import java.sql.SQLException; + import java.sql.SQLWarning; + import java.sql.Savepoint; + import java.sql.Statement; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.SQLClientInfoException; ++import java.sql.Struct; ++import java.sql.Array; ++import java.sql.Blob; ++import java.sql.Clob; ++import java.sql.NClob; ++import java.sql.SQLXML; + import java.util.Calendar; + import java.util.List; + import java.util.Map; +@@ -2553,34 +2561,34 @@ public class LoadBalancedMySQLConnection + getActiveMySQLConnection().setIncludeThreadNamesAsStatementComment(flag); + } + +- public boolean isServerLocal() throws SQLException { +- return getActiveMySQLConnection().isServerLocal(); +- } +- +- public void setAuthenticationPlugins(String authenticationPlugins) { +- getActiveMySQLConnection().setAuthenticationPlugins(authenticationPlugins); +- } +- +- public String getAuthenticationPlugins() { +- return getActiveMySQLConnection().getAuthenticationPlugins(); +- } +- +- public void setDisabledAuthenticationPlugins( +- String disabledAuthenticationPlugins) { +- getActiveMySQLConnection().setDisabledAuthenticationPlugins(disabledAuthenticationPlugins); +- } +- +- public String getDisabledAuthenticationPlugins() { +- return getActiveMySQLConnection().getDisabledAuthenticationPlugins(); +- } +- +- public void setDefaultAuthenticationPlugin( +- String defaultAuthenticationPlugin) { +- getActiveMySQLConnection().setDefaultAuthenticationPlugin(defaultAuthenticationPlugin); +- } +- +- public String getDefaultAuthenticationPlugin() { +- return getActiveMySQLConnection().getDefaultAuthenticationPlugin(); ++ public boolean isServerLocal() throws SQLException { ++ return getActiveMySQLConnection().isServerLocal(); ++ } ++ ++ public void setAuthenticationPlugins(String authenticationPlugins) { ++ getActiveMySQLConnection().setAuthenticationPlugins(authenticationPlugins); ++ } ++ ++ public String getAuthenticationPlugins() { ++ return getActiveMySQLConnection().getAuthenticationPlugins(); ++ } ++ ++ public void setDisabledAuthenticationPlugins( ++ String disabledAuthenticationPlugins) { ++ getActiveMySQLConnection().setDisabledAuthenticationPlugins(disabledAuthenticationPlugins); ++ } ++ ++ public String getDisabledAuthenticationPlugins() { ++ return getActiveMySQLConnection().getDisabledAuthenticationPlugins(); ++ } ++ ++ public void setDefaultAuthenticationPlugin( ++ String defaultAuthenticationPlugin) { ++ getActiveMySQLConnection().setDefaultAuthenticationPlugin(defaultAuthenticationPlugin); ++ } ++ ++ public String getDefaultAuthenticationPlugin() { ++ return getActiveMySQLConnection().getDefaultAuthenticationPlugin(); + } + + public void setParseInfoCacheFactory(String factoryClassname) { +@@ -2635,4 +2643,66 @@ public class LoadBalancedMySQLConnection + public String getConnectionAttributes() throws SQLException { + return getActiveMySQLConnection().getConnectionAttributes(); + } ++ ++ @Override ++ public Struct createStruct(String typeName, Object[] attributes) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Array createArrayOf(String typeName, Object[] elements) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ @Override ++ public String getClientInfo(String name) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Properties getClientInfo() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClientInfo(Properties properties) throws SQLClientInfoException { ++ } ++ ++ @Override ++ public void setClientInfo(String name, String value) throws SQLClientInfoException { ++ } ++ @Override ++ public boolean isValid(int timeout) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML createSQLXML() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob createNClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Blob createBlob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Clob createClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/MysqlParameterMetadata.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/MysqlParameterMetadata.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/MysqlParameterMetadata.java +@@ -26,6 +26,7 @@ package com.mysql.jdbc; + + import java.sql.ParameterMetaData; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.sql.Types; + + public class MysqlParameterMetadata implements ParameterMetaData { +@@ -202,11 +203,11 @@ public class MysqlParameterMetadata impl + * @throws java.sql.SQLException If no object found that implements the interface + * @since 1.6 + */ +- public Object unwrap(Class iface) throws java.sql.SQLException { ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { + try { + // This works for classes that aren't actually wrapping + // anything +- return Util.cast(iface, this); ++ return iface.cast(this); + } catch (ClassCastException cce) { + throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), + SQLError.SQL_STATE_ILLEGAL_ARGUMENT, this.exceptionInterceptor); +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/NonRegisteringDriver.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/NonRegisteringDriver.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/NonRegisteringDriver.java +@@ -33,6 +33,7 @@ import java.lang.ref.ReferenceQueue; + import java.net.URLDecoder; + import java.sql.DriverPropertyInfo; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.util.ArrayList; + import java.util.Iterator; + import java.util.List; +@@ -40,6 +41,9 @@ import java.util.Locale; + import java.util.Properties; + import java.util.StringTokenizer; + import java.util.concurrent.ConcurrentHashMap; ++ ++import java.util.logging.Logger; ++ + /** + * The Java SQL framework allows for multiple database drivers. Each driver + * should supply a class that implements the Driver interface +@@ -966,4 +970,9 @@ public class NonRegisteringDriver implem + } + } + } ++ ++ @Override ++ public Logger getParentLogger() throws SQLFeatureNotSupportedException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/PreparedStatement.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/PreparedStatement.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/PreparedStatement.java +@@ -40,6 +40,7 @@ import java.nio.charset.Charset; + import java.nio.charset.CharsetEncoder; + import java.sql.Array; + import java.sql.Clob; ++import java.sql.NClob; + import java.sql.DatabaseMetaData; + import java.sql.Date; + import java.sql.ParameterMetaData; +@@ -48,6 +49,9 @@ import java.sql.SQLException; + import java.sql.Time; + import java.sql.Timestamp; + import java.sql.Types; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.SQLXML; ++import java.sql.RowId; + import java.text.ParsePosition; + import java.text.SimpleDateFormat; + import java.util.ArrayList; +@@ -5757,4 +5761,20 @@ public class PreparedStatement extends c + statementStartPos, sql, "SELECT", "\"'`", + "\"'`", false) == -1 && rewritableOdku; + } ++ ++ @Override ++ public void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException{ ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setNClob(int parameterIndex, NClob value) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setRowId(int parameterIndex, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/ReplicationConnection.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/ReplicationConnection.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/ReplicationConnection.java +@@ -21,6 +21,12 @@ + */ + package com.mysql.jdbc; + ++import java.sql.Blob; ++import java.sql.NClob; ++import java.sql.SQLXML; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.SQLClientInfoException; ++import java.sql.Struct; + import java.sql.CallableStatement; + import java.sql.DatabaseMetaData; + import java.sql.PreparedStatement; +@@ -2695,4 +2701,67 @@ public class ReplicationConnection imple + public Object getConnectionMutex() { + return getCurrentConnection().getConnectionMutex(); + } ++ ++ @Override ++ public Struct createStruct(String typeName, Object[] attributes) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getClientInfo(String name) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Properties getClientInfo() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void setClientInfo(String name, String value) throws SQLClientInfoException { ++ } ++ ++ @Override ++ public void setClientInfo(Properties properties) throws SQLClientInfoException { ++ } ++ ++ @Override ++ public boolean isValid(int timeout) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML createSQLXML() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob createNClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Blob createBlob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public Clob createClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/ResultSetImpl.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/ResultSetImpl.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/ResultSetImpl.java +@@ -29,6 +29,7 @@ import java.io.ByteArrayInputStream; + import java.io.IOException; + import java.io.InputStream; + import java.io.ObjectInputStream; ++import java.io.Reader; + import java.io.StringReader; + import java.io.UnsupportedEncodingException; + import java.lang.reflect.Constructor; +@@ -38,9 +39,13 @@ import java.net.MalformedURLException; + import java.net.URL; + import java.sql.Array; + 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.SQLFeatureNotSupportedException; ++import java.sql.SQLXML; + import java.sql.Time; + import java.sql.Timestamp; + import java.sql.Types; +@@ -8747,4 +8752,258 @@ public class ResultSetImpl implements Re + protected ExceptionInterceptor getExceptionInterceptor() { + return this.exceptionInterceptor; + } ++ ++ @Override ++ public void updateNClob(int columnIndex, NClob nClob) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(String columnLabel, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(int columnIndex, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(String columnLabel, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(int columnIndex, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(int columnIndex, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(String columnLabel, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(int columnIndex, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(String columnLabel, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBlob(String columnLabel, InputStream inputStream) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(String columnLabel, java.io.Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(String columnLabel, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateAsciiStream(String columnLabel, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(int columnIndex, java.io.Reader x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(int columnIndex, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ ++ @Override ++ public void updateAsciiStream(int columnIndex, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(String columnLabel, java.io.Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(int columnIndex, java.io.Reader x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ ++ @Override ++ public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(String columnLabel, java.io.Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(String columnLabel, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateAsciiStream(String columnLabel, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(int columnIndex, java.io.Reader x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(int columnIndex, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ ++ @Override ++ public void updateAsciiStream(int columnIndex, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(String columnLabel, java.io.Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(int columnIndex, java.io.Reader x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(String columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(String columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(String columnLabel) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob(String columnLabel) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(String columnLabel, NClob nClob) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNString(String columnLabel, String nString) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNString(int columnLabel, String nString) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isClosed() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public int getHoldability() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateRowId(int columnIndex, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateRowId(String columnLabel, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(String columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/ResultSetMetaData.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/ResultSetMetaData.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/ResultSetMetaData.java +@@ -23,7 +23,9 @@ + */ + package com.mysql.jdbc; + ++import java.sql.NClob; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + import java.sql.Types; + + /** +@@ -849,14 +851,18 @@ public class ResultSetMetaData implement + * @throws java.sql.SQLException If no object found that implements the interface + * @since 1.6 + */ +- public Object unwrap(Class iface) throws java.sql.SQLException { ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { + try { + // This works for classes that aren't actually wrapping + // anything +- return Util.cast(iface, this); ++ return iface.cast(this); + } catch (ClassCastException cce) { + throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), + SQLError.SQL_STATE_ILLEGAL_ARGUMENT, this.exceptionInterceptor); + } + } ++ ++ public void updateNClob(int columnIndex, NClob nClob) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + } +Index: mysql-connector-java-5.1.25/src/com/mysql/jdbc/StatementImpl.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/com/mysql/jdbc/StatementImpl.java ++++ mysql-connector-java-5.1.25/src/com/mysql/jdbc/StatementImpl.java +@@ -29,6 +29,8 @@ import java.sql.ResultSet; + import java.sql.SQLException; + import java.sql.SQLWarning; + import java.sql.Types; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.*; + import java.util.ArrayList; + import java.util.Calendar; + import java.util.Collections; +@@ -2971,16 +2973,16 @@ public class StatementImpl implements St + * @throws java.sql.SQLException If no object found that implements the interface + * @since 1.6 + */ +- public Object unwrap(Class iface) throws java.sql.SQLException { ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { + try { + // This works for classes that aren't actually wrapping + // anything +- return Util.cast(iface, this); ++ return iface.cast(this); + } catch (ClassCastException cce) { + throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), + SQLError.SQL_STATE_ILLEGAL_ARGUMENT, getExceptionInterceptor()); + } +- } ++ } + + protected int findStartOfStatement(String sql) { + int statementStartPos = 0; +@@ -3051,4 +3053,4 @@ public class StatementImpl implements St + return closeOnCompletion; + } + } +-} +\ No newline at end of file ++} +Index: mysql-connector-java-5.1.25/src/testsuite/regression/StatementRegressionTest.java +=================================================================== +--- mysql-connector-java-5.1.25.orig/src/testsuite/regression/StatementRegressionTest.java ++++ mysql-connector-java-5.1.25/src/testsuite/regression/StatementRegressionTest.java +@@ -55,6 +55,11 @@ import java.sql.Ref; + import java.sql.ResultSet; + import java.sql.ResultSetMetaData; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.NClob; ++import java.sql.RowId; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.SQLXML; + import java.sql.SQLWarning; + import java.sql.Statement; + import java.sql.Time; +@@ -2542,7 +2547,8 @@ public class StatementRegressionTest ext + try { + pStmt = this.conn + .prepareStatement("INSERT INTO testNullClob VALUES (?)"); +- pStmt.setClob(1, null); ++ Clob x = null; ++ pStmt.setClob(1, x); + pStmt.executeUpdate(); + } finally { + if (pStmt != null) { +@@ -5272,6 +5278,276 @@ public class StatementRegressionTest ext + public int getBytesSize() throws SQLException { + return 0; + } ++ @Override ++ public T getObject(int columnIndex, Class type) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ @Override ++ public T getObject(String columnLabel, Class type) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ @Override ++ public void updateNClob(int columnIndex, NClob nClob) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(String columnLabel, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(int columnIndex, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(String columnLabel, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(int columnIndex, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(int columnIndex, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(String columnLabel, Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(int columnIndex, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateClob(String columnLabel, Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBlob(String columnLabel, InputStream inputStream) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(String columnLabel, java.io.Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(String columnLabel, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateAsciiStream(String columnLabel, java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(int columnIndex, ++ java.io.Reader x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(int columnIndex, ++ java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ ++ @Override ++ public void updateAsciiStream(int columnIndex, ++ java.io.InputStream x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(String columnLabel, ++ java.io.Reader reader) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(int columnIndex, ++ java.io.Reader x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ ++ @Override ++ public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(String columnLabel, java.io.Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(String columnLabel, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateAsciiStream(String columnLabel, java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateCharacterStream(int columnIndex, ++ java.io.Reader x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateBinaryStream(int columnIndex, ++ java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ ++ @Override ++ public void updateAsciiStream(int columnIndex, ++ java.io.InputStream x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(String columnLabel, ++ java.io.Reader reader, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNCharacterStream(int columnIndex, ++ java.io.Reader x, long length) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public java.io.Reader getNCharacterStream(String columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public String getNString(String columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public SQLXML getSQLXML(String columnLabel) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public NClob getNClob(String columnLabel) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNClob(String columnLabel, NClob nClob) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNString(String columnLabel, String nString) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateNString(int columnLabel, String nString) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isClosed() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public int getHoldability() throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateRowId(int columnIndex, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public void updateRowId(String columnLabel, RowId x) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(int columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public RowId getRowId(String columnIndex) throws SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } ++ ++ @Override ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException("Not supported"); ++ } + }; + } + +@@ -6906,4 +7182,5 @@ public class StatementRegressionTest ext + + } + ++ + } diff --git a/mysql-connector-java.changes b/mysql-connector-java.changes index d89a6d6..08ef62b 100644 --- a/mysql-connector-java.changes +++ b/mysql-connector-java.changes @@ -1,3 +1,33 @@ +------------------------------------------------------------------- +Thu Sep 19 14:12:57 UTC 2013 - mvyskocil@suse.com + +- update to 5.1.25 (see CHANGES for full list) + * support for Connection Attributes when used with MySQL Server versions (5.6+). + 5.1.24 + * support of password expiration protocol. This introduces new boolean + connection property disconnectOnExpiredPasswords. + 5.1.23 + * added support of password expiration protocol. + * driver now allows the mechanism for caching MySQL server configuration + values replaceable at runtime. + * Connection.setReadOnly() will take advantage of server-side support for + read-only transactions present in MySQL-5.6 and newer. Calling .isReadOnly() + will incur a round-trip if useLocalSessionState. + 5.1.22 + * support of ON UPDATE CURRENT_TIMESTAMP for TIMESTAMP and DATETIME fields. + 5.1.21 + * new built-in authentication plugin + com.mysql.jdbc.authentication.Sha256PasswordPlugin ("sha256_password"). + * Added new built-in authentication plugin + com.mysql.jdbc.authentication.MysqlClearPasswordPlugin ("mysql_clear_password"). + It allows C/J based clients to connect to MySQL accounts. + * the ability to add new client-side prepared statement parse info caches + * implemented several JDBC-4.1 methods from Java-7: + 5.1.19: + * Added support for pluggable authentication via the com.mysql.jdbc.AuthenticationPlugin +- rebase and rename mysql-connector-java-5.1.19-java7.patch to + * mysql-connector-java-7-jdbc-4.1.patch + ------------------------------------------------------------------- Fri Sep 13 09:04:23 UTC 2013 - pgajdos@suse.com diff --git a/mysql-connector-java.spec b/mysql-connector-java.spec index 50439dc..9c8d56a 100644 --- a/mysql-connector-java.spec +++ b/mysql-connector-java.spec @@ -18,13 +18,14 @@ Name: mysql-connector-java -Version: 5.1.19 +Version: 5.1.25 Release: 0 Summary: Official JDBC Driver for MySQL License: GPL-2.0+ Group: Development/Libraries/Java Url: http://www.mysql.com/downloads/api-jdbc-stable.html +# url-for-download: http://dev.mysql.com/get/Downloads/Connector-J/%{name}-%{version}.zip/from/pick#mirrors # docs are now under very strict proprietary license by Oracle, so lets not distribute them # remove bundled jars as well # tar -xf %{name}-%{version}.tar.gz @@ -32,8 +33,8 @@ Url: http://www.mysql.com/downloads/api-jdbc-stable.html # find %{name}-%{version} -name '*jar' -delete # tar -xJf %{name}-%{version}-suse.tar.xz Source0: %{name}-%{version}-suse.tar.xz -# Patch to build with JDBC 4.1/Java 7 -Patch0: mysql-connector-java-5.1.19-java7.patch +# Patch to build Java 7/jdbc 4.1 +Patch0: mysql-connector-java-7-jdbc-4.1.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch @@ -41,10 +42,11 @@ BuildArch: noarch BuildRequires: ant BuildRequires: ant-contrib BuildRequires: apache-commons-logging -BuildRequires: java-1_5_0-gcj-compat-devel +#BuildRequires: java-1_5_0-gcj-compat-devel BuildRequires: java-devel >= 1.6.0 +#BuildRequires: jta >= 1.0 +BuildRequires: geronimo-jta-1_1-api BuildRequires: javapackages-tools -BuildRequires: jta BuildRequires: junit BuildRequires: slf4j #!BuildIgnore: maven2-bootstrap @@ -99,7 +101,7 @@ export CLASSPATH=$(build-classpath \ # we need jdk5 for jdbc3.0 # XXX: JAVA_HOME must be setup **after** CLASSPATH -export JAVA_HOME=%{_libdir}/jvm/java-1.5.0-gcj +#export JAVA_HOME=%{_libdir}/jvm/java-1.5.0-gcj ant -DbuildDir=build-mysql-jdbc \ -DdistDir=dist-mysql-jdbc \ -Dcom.mysql.jdbc.java6.javac="%{javac}" \