mysql-connector-java/mysql-connector-java-jdbc-4.1.patch

2055 lines
71 KiB
Diff

Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/CallableStatement.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/CallableStatement.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/CallableStatement.java
@@ -32,11 +32,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;
@@ -410,10 +414,10 @@ public class CallableStatement extends P
* If no object found that implements the interface
* @since 1.6
*/
- public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+ public <T> T unwrap(java.lang.Class<T> 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());
}
@@ -2450,4 +2454,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.35/src/com/mysql/jdbc/ConnectionImpl.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ConnectionImpl.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ConnectionImpl.java
@@ -35,11 +35,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;
@@ -5565,4 +5570,71 @@ public class ConnectionImpl extends Conn
public void setProfilerEventHandlerInstance(ProfilerEventHandler h) {
this.eventSink = h;
}
+
+ @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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/DatabaseMetaData.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/DatabaseMetaData.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/DatabaseMetaData.java
@@ -33,6 +33,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.Arrays;
import java.util.Collections;
@@ -7869,4 +7871,25 @@ public class DatabaseMetaData implements
public boolean generatedKeyAlwaysReturned() throws SQLException {
return true;
}
+
+ @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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/Driver.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/Driver.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/Driver.java
@@ -24,6 +24,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 should supply a class that implements the Driver interface
@@ -62,3 +64,8 @@ public class Driver extends NonRegisteri
// Required for Class.forName().newInstance()
}
}
+
+ @Override
+ public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4Connection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4Connection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4Connection.java
@@ -27,9 +27,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;
@@ -197,7 +199,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());
}
@@ -233,4 +236,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.35/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4LoadBalancedMySQLConnection.java
@@ -27,9 +27,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;
@@ -100,21 +102,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 com.mysql.jdbc.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();
}
@@ -123,4 +128,25 @@ public class JDBC4LoadBalancedMySQLConne
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");
+ }
+
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4MySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MySQLConnection.java
@@ -59,10 +59,13 @@ public interface JDBC4MySQLConnection ex
public <T> T unwrap(java.lang.Class<T> 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.35/src/com/mysql/jdbc/MysqlParameterMetadata.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/MysqlParameterMetadata.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/MysqlParameterMetadata.java
@@ -25,6 +25,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 {
@@ -199,10 +200,10 @@ public class MysqlParameterMetadata impl
* If no object found that implements the interface
* @since 1.6
*/
- public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+ public <T> T unwrap(java.lang.Class<T> 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.35/src/com/mysql/jdbc/NonRegisteringDriver.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/NonRegisteringDriver.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/NonRegisteringDriver.java
@@ -31,6 +31,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;
@@ -39,6 +40,9 @@ 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
*
@@ -904,4 +908,9 @@ public class NonRegisteringDriver implem
}
}
}
+
+ @Override
+ public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/PreparedStatement.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/PreparedStatement.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/PreparedStatement.java
@@ -41,6 +41,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;
@@ -49,6 +50,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;
@@ -5166,4 +5170,20 @@ public class PreparedStatement extends c
return StringUtils.startsWithIgnoreCaseAndWs(sql, "INSERT", statementStartPos)
&& StringUtils.indexOfIgnoreCase(statementStartPos, sql, "SELECT", "\"'`", "\"'`", StringUtils.SEARCH_MODE__MRK_COM_WS) == -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.35/src/com/mysql/jdbc/ReplicationConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ReplicationConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ReplicationConnection.java
@@ -23,6 +23,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;
@@ -2972,6 +2978,69 @@ public class ReplicationConnection imple
getCurrentConnection().setSocksProxyHost(socksProxyHost);
}
+
+ @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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
public String getSocksProxyHost() {
return getCurrentConnection().getSocksProxyHost();
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetImpl.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ResultSetImpl.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetImpl.java
@@ -27,6 +27,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;
@@ -36,9 +37,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;
@@ -7917,4 +7922,250 @@ 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 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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/ResultSetMetaData.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/ResultSetMetaData.java
+++ mysql-connector-java-5.1.35/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;
/**
@@ -832,12 +834,16 @@ public class ResultSetMetaData implement
* If no object found that implements the interface
* @since 1.6
*/
- public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+ public <T> T unwrap(java.lang.Class<T> 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.35/src/com/mysql/jdbc/StatementImpl.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/StatementImpl.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/StatementImpl.java
@@ -31,6 +31,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;
@@ -2700,10 +2702,10 @@ public class StatementImpl implements St
* If no object found that implements the interface
* @since 1.6
*/
- public Object unwrap(Class<?> iface) throws java.sql.SQLException {
+ public <T> T unwrap(java.lang.Class<T> 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());
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java
@@ -33,8 +33,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;
@@ -2345,4 +2349,169 @@ public class CallableStatementWrapper ex
// throw SQLError.notImplemented();
// }
+ @Override
+ public <T> T getObject(int parameterIndex, Class<T> type) throws SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
+ @Override
+ public <T> T getObject(String parameterName, Class<T> 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.35/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java
@@ -24,8 +24,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;
@@ -2836,4 +2843,67 @@ public class ConnectionWrapper extends W
public void setEnabledSSLCipherSuites(String cipherSuites) {
this.mc.setEnabledSSLCipherSuites(cipherSuites);
}
+
+ 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 Blob createBlob() throws SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
+ @Override
+ public NClob createNClob() 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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java
@@ -26,8 +26,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;
@@ -429,4 +431,20 @@ public class MysqlDataSource extends Con
// public <T> T unwrap(Class<T> iface) throws SQLException {
// throw SQLError.notImplemented();
// }
+
+ @Override
+ public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
+ @Override
+ public <T> T unwrap(java.lang.Class<T> 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.35/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java
@@ -26,6 +26,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;
@@ -33,6 +34,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;
@@ -230,4 +232,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.35/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java
@@ -32,12 +32,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;
@@ -1091,4 +1095,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.35/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java
@@ -27,6 +27,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;
@@ -767,4 +768,40 @@ 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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
}
Index: mysql-connector-java-5.1.35/src/testsuite/regression/StatementRegressionTest.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/testsuite/regression/StatementRegressionTest.java
+++ mysql-connector-java-5.1.35/src/testsuite/regression/StatementRegressionTest.java
@@ -52,6 +52,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;
@@ -2320,7 +2325,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) {
@@ -5277,6 +5283,271 @@ public class StatementRegressionTest ext
Connection conn1 = null;
+ @Override
+ public <T> T getObject(int columnIndex, Class<T> type) throws SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+ @Override
+ public <T> T getObject(String columnLabel, Class<T> 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 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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
try {
assertEquals(1, this.stmt.executeUpdate("INSERT INTO bug43196 (a) VALUES (1)", Statement.RETURN_GENERATED_KEYS));
@@ -6911,6 +7182,7 @@ public class StatementRegressionTest ext
expectedUpdCountBatchPStmt = expectedUpdCountBatchPStmtRW;
expectedGenKeysBatchPStmt = versionMeetsMinimum(5, 5) ? expectedGenKeysForBatchPStmtRW : expectedGenKeysForBatchPStmtRW51;
break;
+
case 4:
// dontCheckOnDuplicateKeyUpdateInSQL=true is canceled by rewriteBatchedStatements=true
testConn = getConnectionWithProps("rewriteBatchedStatements=true,dontCheckOnDuplicateKeyUpdateInSQL=true");
Index: mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLConnectionProxy.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/fabric/jdbc/FabricMySQLConnectionProxy.java
+++ mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLConnectionProxy.java
@@ -23,13 +23,20 @@
package com.mysql.fabric.jdbc;
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.NClob;
+import java.sql.SQLXML;
import java.sql.CallableStatement;
import java.sql.DatabaseMetaData;
import java.sql.PreparedStatement;
import java.sql.SQLException;
+import java.sql.SQLClientInfoException;
+import java.sql.SQLFeatureNotSupportedException;
import java.sql.SQLWarning;
import java.sql.Savepoint;
import java.sql.Statement;
+import java.sql.Struct;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.HashMap;
@@ -844,22 +851,6 @@ public class FabricMySQLConnectionProxy
return getActiveMySQLConnection().getMetadataSafeStatement();
}
- /**
- * Methods doing essentially nothing
- *
- * @param iface
- */
- public boolean isWrapperFor(Class<?> iface) {
- return false;
- }
-
- /**
- * @param iface
- */
- public <T> T unwrap(Class<T> iface) {
- return null;
- }
-
public void unSafeStatementInterceptors() throws SQLException {
}
@@ -2891,14 +2882,6 @@ public class FabricMySQLConnectionProxy
public void clearWarnings() {
}
- public Properties getClientInfo() {
- return null;
- }
-
- public String getClientInfo(String name) {
- return null;
- }
-
public int getHoldability() {
return -1;
}
@@ -2928,4 +2911,64 @@ public class FabricMySQLConnectionProxy
public void decachePreparedStatement(ServerPreparedStatement pstmt) throws SQLException {
}
+
+ @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 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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/MultiHostMySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/MultiHostMySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/MultiHostMySQLConnection.java
@@ -23,6 +23,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;
@@ -2411,4 +2417,67 @@ public class MultiHostMySQLConnection im
public void setEnabledSSLCipherSuites(String cipherSuites) {
getActiveMySQLConnection().setEnabledSSLCipherSuites(cipherSuites);
}
+
+ @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> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
}
Index: mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MultiHostMySQLConnection.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/jdbc/JDBC4MultiHostMySQLConnection.java
+++ mysql-connector-java-5.1.35/src/com/mysql/jdbc/JDBC4MultiHostMySQLConnection.java
@@ -102,21 +102,24 @@ public class JDBC4MultiHostMySQLConnecti
/**
* @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 com.mysql.jdbc.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();
}
Index: mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLDriver.java
===================================================================
--- mysql-connector-java-5.1.35.orig/src/com/mysql/fabric/jdbc/FabricMySQLDriver.java
+++ mysql-connector-java-5.1.35/src/com/mysql/fabric/jdbc/FabricMySQLDriver.java
@@ -28,6 +28,7 @@ import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
import java.util.Properties;
import java.util.logging.Logger;
@@ -103,7 +104,9 @@ public class FabricMySQLDriver extends N
return super.parseURL(url.replaceAll("fabric:", ""), defaults);
}
- public Logger getParentLogger() throws SQLException {
- throw new SQLException("no logging");
- }
+ @Override
+ public Logger getParentLogger() throws SQLFeatureNotSupportedException {
+ throw new SQLFeatureNotSupportedException("Not supported");
+ }
+
}