diff --git a/mysql-connector-java-5.1.19-suse.tar.xz b/mysql-connector-java-5.1.19-suse.tar.xz new file mode 100644 index 0000000..e74b82b --- /dev/null +++ b/mysql-connector-java-5.1.19-suse.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6690c7895dad63bf2c81c62865ff123f607c27cd3086c982692f8f81942decfd +size 2054192 diff --git a/mysql-connector-java-5.1.6-disableJDBC4.patch b/mysql-connector-java-5.1.6-disableJDBC4.patch index d18b871..58af851 100644 --- a/mysql-connector-java-5.1.6-disableJDBC4.patch +++ b/mysql-connector-java-5.1.6-disableJDBC4.patch @@ -1,29 +1,18 @@ # This patch was taken from Debian package libmysql-java. It disables JDBC 4 support. ---- build.xml -+++ build.xml -@@ -120,9 +120,10 @@ - +Index: build.xml +=================================================================== +--- build.xml.orig 2012-04-25 11:15:50.608856591 +0200 ++++ build.xml 2012-04-25 15:52:16.992070845 +0200 +@@ -135,7 +135,7 @@ + - + - - -+ -+ -@@ -384,7 +386,7 @@ +@@ -429,7 +429,7 @@
@@ -32,7 +21,7 @@ -@@ -700,7 +702,7 @@ +@@ -756,12 +756,12 @@ @@ -40,17 +29,14 @@ + - -@@ -708,7 +710,7 @@ - - + - + ---- src/com/mysql/jdbc/Util.java -+++ src/com/mysql/jdbc/Util.java -@@ -100,7 +100,7 @@ +Index: src/com/mysql/jdbc/Util.java +=================================================================== +--- src/com/mysql/jdbc/Util.java.orig 2012-04-25 15:51:26.894312592 +0200 ++++ src/com/mysql/jdbc/Util.java 2012-04-25 15:52:38.843837776 +0200 +@@ -105,7 +105,7 @@ try { Class.forName("java.sql.NClob"); @@ -70,10 +58,3 @@ } catch (Throwable t) { isJdbc4 = false; } -@@ -590,4 +590,4 @@ - return extensionList; - } - --} -\ No newline at end of file -+} diff --git a/mysql-connector-java-5.1.6-java6-compatibility.patch b/mysql-connector-java-5.1.6-java6-compatibility.patch index 9034f32..56e705f 100644 --- a/mysql-connector-java-5.1.6-java6-compatibility.patch +++ b/mysql-connector-java-5.1.6-java6-compatibility.patch @@ -1,6 +1,28 @@ ---- src/com/mysql/jdbc/CallableStatement.java -+++ src/com/mysql/jdbc/CallableStatement.java -@@ -38,6 +38,10 @@ +--- + src/com/mysql/jdbc/CallableStatement.java | 99 ++++ + src/com/mysql/jdbc/Connection.java | 3 + src/com/mysql/jdbc/ConnectionImpl.java | 59 ++ + src/com/mysql/jdbc/DatabaseMetaData.java | 33 + + src/com/mysql/jdbc/LoadBalancedMySQLConnection.java | 62 ++ + src/com/mysql/jdbc/PreparedStatement.java | 20 + src/com/mysql/jdbc/ReplicationConnection.java | 68 +++ + src/com/mysql/jdbc/ResultSetImpl.java | 209 ++++++++++ + src/com/mysql/jdbc/Util.java | 23 + + src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java | 143 ++++++ + src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java | 66 +++ + src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java | 11 + src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java | 14 + src/com/mysql/jdbc/jdbc2/optional/MysqlXAConnection.java | 12 + src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java | 88 ++++ + src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java | 23 + + src/com/mysql/jdbc/jdbc2/optional/SuspendableXAConnection.java | 12 + 17 files changed, 931 insertions(+), 14 deletions(-) + +Index: src/com/mysql/jdbc/CallableStatement.java +=================================================================== +--- src/com/mysql/jdbc/CallableStatement.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/CallableStatement.java 2012-04-27 10:49:12.534118098 +0200 +@@ -39,6 +39,10 @@ import java.sql.Time; import java.sql.Timestamp; import java.sql.Types; @@ -11,10 +33,38 @@ import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; -@@ -2349,4 +2353,77 @@ - +@@ -426,16 +430,16 @@ + * @throws java.sql.SQLException If no object found that implements the interface + * @since 1.6 + */ +- public Object unwrap(Class iface) throws java.sql.SQLException { +- try { +- // This works for classes that aren't actually wrapping +- // anything +- return Util.cast(iface, this); +- } catch (ClassCastException cce) { +- throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), +- SQLError.SQL_STATE_ILLEGAL_ARGUMENT, getExceptionInterceptor()); +- } +- } ++ public T unwrap(Class iface) throws java.sql.SQLException { ++ try { ++ // This works for classes that aren't actually wrapping ++ // anything ++ return Util.cast(iface, this); ++ } catch (ClassCastException cce) { ++ throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), ++ SQLError.SQL_STATE_ILLEGAL_ARGUMENT, getExceptionInterceptor()); ++ } ++ } } + private final static int NOT_OUTPUT_PARAMETER_INDICATOR = Integer.MIN_VALUE; +@@ -2522,5 +2526,78 @@ + } + + +- + // Java6 build - interface java.sql.CallableStatement + + public RowId getRowId(int parameterIndex) throws SQLException { @@ -88,10 +138,13 @@ + public void setNClob(String parameterName, Reader reader) throws SQLException { + throw new SQLFeatureNotSupportedException(); + } ++ } ---- src/com/mysql/jdbc/ConnectionImpl.java -+++ src/com/mysql/jdbc/ConnectionImpl.java -@@ -34,6 +34,12 @@ +Index: src/com/mysql/jdbc/ConnectionImpl.java +=================================================================== +--- src/com/mysql/jdbc/ConnectionImpl.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/ConnectionImpl.java 2012-04-25 11:15:37.494385815 +0200 +@@ -37,6 +37,12 @@ import java.sql.SQLException; import java.sql.SQLWarning; import java.sql.Savepoint; @@ -103,14 +156,11 @@ +import java.sql.RowId; import java.util.ArrayList; import java.util.Calendar; - import java.util.GregorianCalendar; -@@ -5519,4 +5525,58 @@ - iter.doForAll(); - } + import java.util.Collections; +@@ -5639,4 +5645,57 @@ + getLog().logWarn(Messages.getString("Connection.NoMetadataOnSocketFactory")); + return false; } --} -\ No newline at end of file -+ + // Java6 build - interface java.sql.Connection + + public Clob createClob() throws SQLException { @@ -164,9 +214,11 @@ + public T unwrap(java.lang.Class iface) throws java.sql.SQLException { + throw new SQLFeatureNotSupportedException(); + } -+} ---- src/com/mysql/jdbc/DatabaseMetaData.java -+++ src/com/mysql/jdbc/DatabaseMetaData.java + } +Index: src/com/mysql/jdbc/DatabaseMetaData.java +=================================================================== +--- src/com/mysql/jdbc/DatabaseMetaData.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/DatabaseMetaData.java 2012-04-25 11:15:37.496385887 +0200 @@ -30,6 +30,13 @@ import java.sql.SQLException; import java.sql.Statement; @@ -181,9 +233,9 @@ import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; -@@ -8087,4 +8094,30 @@ - public boolean supportsStoredFunctionsUsingCallSyntax() throws SQLException { - return true; +@@ -8324,4 +8331,30 @@ + + return pStmt; } + + // Java6 build - interface java.sql.DatabaseMetaData @@ -212,9 +264,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/PreparedStatement.java -+++ src/com/mysql/jdbc/PreparedStatement.java -@@ -46,6 +46,11 @@ +Index: src/com/mysql/jdbc/PreparedStatement.java +=================================================================== +--- src/com/mysql/jdbc/PreparedStatement.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/PreparedStatement.java 2012-04-25 11:15:37.497385923 +0200 +@@ -48,6 +48,11 @@ import java.sql.Time; import java.sql.Timestamp; import java.sql.Types; @@ -226,9 +280,9 @@ import java.text.ParsePosition; import java.text.SimpleDateFormat; import java.util.ArrayList; -@@ -5137,4 +5142,19 @@ - public String getPreparedSql() { - return this.originalSql; +@@ -5719,4 +5724,19 @@ + statementStartPos, sql, "SELECT", "\"'`", + "\"'`", false) == -1 && rewritableOdku; } + + // Java6 build - interface java.sql.PreparedStatement @@ -246,8 +300,10 @@ + } + } ---- src/com/mysql/jdbc/ReplicationConnection.java -+++ src/com/mysql/jdbc/ReplicationConnection.java +Index: src/com/mysql/jdbc/ReplicationConnection.java +=================================================================== +--- src/com/mysql/jdbc/ReplicationConnection.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/ReplicationConnection.java 2012-04-25 11:15:37.498385959 +0200 @@ -31,6 +31,20 @@ import java.util.Map; import java.util.Properties; @@ -269,9 +325,9 @@ import com.mysql.jdbc.log.Log; -@@ -2328,4 +2342,58 @@ - public void setInGlobalTx(boolean flag) { - this.currentConnection.setInGlobalTx(flag); +@@ -2584,4 +2598,58 @@ + public String getDefaultAuthenticationPlugin() { + return this.currentConnection.getDefaultAuthenticationPlugin(); } + + // Java6 build - interface java.sql.Connection @@ -328,9 +384,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/ResultSetImpl.java -+++ src/com/mysql/jdbc/ResultSetImpl.java -@@ -30,6 +30,7 @@ +Index: src/com/mysql/jdbc/ResultSetImpl.java +=================================================================== +--- src/com/mysql/jdbc/ResultSetImpl.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/ResultSetImpl.java 2012-04-25 11:15:37.501386067 +0200 +@@ -31,6 +31,7 @@ import java.io.ObjectInputStream; import java.io.StringReader; import java.io.UnsupportedEncodingException; @@ -338,7 +396,7 @@ import java.lang.reflect.Constructor; import java.math.BigDecimal; import java.math.BigInteger; -@@ -43,6 +44,12 @@ +@@ -44,6 +45,12 @@ import java.sql.Time; import java.sql.Timestamp; import java.sql.Types; @@ -351,9 +409,9 @@ import java.util.Calendar; import java.util.GregorianCalendar; import java.util.HashMap; -@@ -8691,4 +8698,206 @@ - - return this.gmtCalendar; +@@ -8558,4 +8565,206 @@ + protected ExceptionInterceptor getExceptionInterceptor() { + return this.exceptionInterceptor; } + + // Java6 build - interface java.sql.ResultSet @@ -558,9 +616,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java -+++ src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java -@@ -38,6 +38,12 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/CallableStatementWrapper.java 2012-04-25 11:15:37.502386102 +0200 +@@ -39,6 +39,12 @@ import java.sql.SQLException; import java.sql.Time; import java.sql.Timestamp; @@ -573,7 +633,7 @@ import java.util.Calendar; import java.util.Map; -@@ -2633,4 +2639,141 @@ +@@ -2636,4 +2642,141 @@ // throw SQLError.notImplemented(); // } @@ -715,9 +775,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java -+++ src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java -@@ -28,7 +28,19 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/ConnectionWrapper.java 2012-04-25 11:15:37.502386102 +0200 +@@ -29,6 +29,15 @@ import java.sql.SQLException; import java.sql.Savepoint; import java.sql.Statement; @@ -729,18 +791,17 @@ +import java.sql.Struct; +import java.sql.RowId; +import java.sql.Blob; -+import java.sql.NClob; +import java.sql.Array; -+ + import java.util.Map; + import java.util.Properties; import java.util.TimeZone; -+import java.util.Properties; - - import com.mysql.jdbc.Connection; - import com.mysql.jdbc.Extension; -@@ -2538,4 +2550,58 @@ - public void setSelfDestructOnPingSecondsLifetime(int seconds) { - this.mc.setSelfDestructOnPingSecondsLifetime(seconds); +@@ -2783,4 +2792,59 @@ + public String getDefaultAuthenticationPlugin() { + return this.mc.getDefaultAuthenticationPlugin(); } +-} +\ No newline at end of file ++ + + // Java6 build - interface java.sql.Connection + @@ -795,10 +856,12 @@ + public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { + throw new SQLFeatureNotSupportedException(); + } - } ---- src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java -+++ src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java -@@ -34,6 +34,7 @@ ++} +Index: src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/MysqlDataSource.java 2012-04-25 11:15:37.503386138 +0200 +@@ -36,6 +36,7 @@ import javax.naming.Referenceable; import javax.naming.StringRefAddr; import javax.sql.DataSource; @@ -806,7 +869,7 @@ import com.mysql.jdbc.ConnectionPropertiesImpl; import com.mysql.jdbc.NonRegisteringDriver; -@@ -429,4 +430,14 @@ +@@ -447,4 +448,14 @@ // public T unwrap(Class iface) throws SQLException { // throw SQLError.notImplemented(); // } @@ -821,9 +884,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java -+++ src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java -@@ -26,6 +26,7 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/MysqlPooledConnection.java 2012-04-25 11:15:37.503386138 +0200 +@@ -27,6 +27,7 @@ import java.lang.reflect.Constructor; import java.sql.Connection; import java.sql.SQLException; @@ -831,17 +896,17 @@ import java.util.HashMap; import java.util.Iterator; import java.util.Map; -@@ -33,6 +34,7 @@ +@@ -34,6 +35,7 @@ import javax.sql.ConnectionEvent; import javax.sql.ConnectionEventListener; import javax.sql.PooledConnection; +import java.sql.SQLFeatureNotSupportedException; - import com.mysql.jdbc.ConnectionImpl; + import com.mysql.jdbc.ExceptionInterceptor; import com.mysql.jdbc.SQLError; -@@ -247,4 +249,14 @@ - } - } +@@ -255,4 +257,14 @@ + protected ExceptionInterceptor getExceptionInterceptor() { + return this.exceptionInterceptor; } -} \ No newline at end of file @@ -856,9 +921,11 @@ + throw new RuntimeException("SQLFeatureNotSupported"); + } +} ---- src/com/mysql/jdbc/jdbc2/optional/MysqlXAConnection.java -+++ src/com/mysql/jdbc/jdbc2/optional/MysqlXAConnection.java -@@ -27,6 +27,7 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/MysqlXAConnection.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/MysqlXAConnection.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/MysqlXAConnection.java 2012-04-25 11:15:37.504386174 +0200 +@@ -28,6 +28,7 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; @@ -866,7 +933,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; -@@ -34,6 +35,7 @@ +@@ -35,6 +36,7 @@ import java.util.Map; import javax.sql.XAConnection; @@ -874,7 +941,7 @@ import javax.transaction.xa.XAException; import javax.transaction.xa.XAResource; import javax.transaction.xa.Xid; -@@ -674,4 +676,14 @@ +@@ -672,4 +674,14 @@ return connToWrap; } @@ -889,9 +956,11 @@ + throw new RuntimeException("SQLFeatureNotSupported"); + } } ---- src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java -+++ src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java -@@ -41,6 +41,12 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/PreparedStatementWrapper.java 2012-04-25 11:15:37.504386174 +0200 +@@ -42,6 +42,12 @@ import java.sql.SQLException; import java.sql.Time; import java.sql.Timestamp; @@ -904,7 +973,7 @@ import java.util.Calendar; import com.mysql.jdbc.SQLError; -@@ -1223,4 +1229,86 @@ +@@ -1224,4 +1230,86 @@ // public Object unwrap(Class arg0) throws SQLException { // throw SQLError.notImplemented(); // } @@ -991,9 +1060,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java -+++ src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java -@@ -30,6 +30,7 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/StatementWrapper.java 2012-04-25 11:15:37.505386210 +0200 +@@ -31,6 +31,7 @@ import java.sql.SQLException; import java.sql.SQLWarning; import java.sql.Statement; @@ -1001,7 +1072,7 @@ import com.mysql.jdbc.SQLError; import com.mysql.jdbc.Util; -@@ -864,4 +865,26 @@ +@@ -866,4 +867,26 @@ checkAndFireConnectionError(sqlEx); } } @@ -1028,9 +1099,11 @@ + throw new SQLFeatureNotSupportedException(); + } } ---- src/com/mysql/jdbc/jdbc2/optional/SuspendableXAConnection.java -+++ src/com/mysql/jdbc/jdbc2/optional/SuspendableXAConnection.java -@@ -7,6 +7,8 @@ +Index: src/com/mysql/jdbc/jdbc2/optional/SuspendableXAConnection.java +=================================================================== +--- src/com/mysql/jdbc/jdbc2/optional/SuspendableXAConnection.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/jdbc2/optional/SuspendableXAConnection.java 2012-04-25 11:15:37.505386210 +0200 +@@ -33,6 +33,8 @@ import java.util.Map; import javax.sql.XAConnection; @@ -1039,7 +1112,7 @@ import javax.transaction.xa.XAException; import javax.transaction.xa.XAResource; import javax.transaction.xa.Xid; -@@ -184,4 +186,14 @@ +@@ -209,4 +211,14 @@ this.currentXAConnection.close(); } } @@ -1054,3 +1127,132 @@ + throw new RuntimeException("SQLFeatureNotSupported"); + } } +Index: src/com/mysql/jdbc/Connection.java +=================================================================== +--- src/com/mysql/jdbc/Connection.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/Connection.java 2012-04-25 11:19:08.912969654 +0200 +@@ -405,4 +405,7 @@ + * @return + */ + public boolean isServerLocal() throws SQLException; ++ ++ /* java6 compatibility - from java.sql.Wrapper*/ ++ public abstract T unwrap(Class iface) throws SQLException; + } +Index: src/com/mysql/jdbc/LoadBalancedMySQLConnection.java +=================================================================== +--- src/com/mysql/jdbc/LoadBalancedMySQLConnection.java.orig 2012-04-02 10:14:19.000000000 +0200 ++++ src/com/mysql/jdbc/LoadBalancedMySQLConnection.java 2012-04-25 12:16:57.708906161 +0200 +@@ -29,6 +29,12 @@ + import java.sql.SQLWarning; + import java.sql.Savepoint; + import java.sql.Statement; ++import java.sql.Struct; ++import java.sql.SQLFeatureNotSupportedException; ++import java.sql.SQLClientInfoException; ++import java.sql.NClob; ++import java.sql.SQLXML; ++import java.sql.RowId; + import java.util.Calendar; + import java.util.List; + import java.util.Map; +@@ -2562,4 +2568,60 @@ + public String getDefaultAuthenticationPlugin() { + return getActiveMySQLConnection().getDefaultAuthenticationPlugin(); + } ++ ++ // Java6 build - interface java.sql.Connection ++ ++ public Clob createClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public Blob createBlob() throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public NClob createNClob() throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public SQLXML createSQLXML() throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public boolean isValid(int timeout) throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public void setClientInfo(String name, String value) throws SQLClientInfoException { ++ throw new RuntimeException("SQLFeatureNotSupported"); ++ } ++ ++ public void setClientInfo(Properties properties) throws SQLClientInfoException { ++ throw new RuntimeException("SQLFeatureNotSupported"); ++ } ++ ++ public String getClientInfo(String name) throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public Properties getClientInfo() throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public java.sql.Array createArrayOf(String typeName, Object[] elements) throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public Struct createStruct(String typeName, Object[] attributes) throws SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ public T unwrap(java.lang.Class iface) throws java.sql.SQLException { ++ throw new SQLFeatureNotSupportedException(); ++ } ++ ++ + } +Index: src/com/mysql/jdbc/Util.java +=================================================================== +--- src/com/mysql/jdbc/Util.java.orig 2012-04-25 11:15:50.608856591 +0200 ++++ src/com/mysql/jdbc/Util.java 2012-04-27 11:34:31.308902536 +0200 +@@ -475,6 +475,27 @@ + + return null; + } ++ ++ /** ++ * Reflexive access on JDK-1.5's Class.cast() method so we don't have to ++ * move that out into separate classes built for JDBC-4.0. ++ * ++ * @param invokeOn ++ * @param toCast ++ * @return ++ */ ++ public static T cast(Class invokeOn, Object toCast) { ++ if (CAST_METHOD != null) { ++ try { ++ //XXX: we know that we have cast method, so we don't need add an another layer ++ return invokeOn.cast(CAST_METHOD.invoke(invokeOn, new Object[] { toCast })); ++ } catch (Throwable t) { ++ return null; ++ } ++ } ++ ++ return null; ++ } + + public static long getCurrentTimeNanosOrMillis() { + if (systemNanoTimeMethod != null) { +@@ -609,4 +630,4 @@ + return extensionList; + } + +-} +\ No newline at end of file ++} diff --git a/mysql-connector-java-5.1.6.tar.bz2 b/mysql-connector-java-5.1.6.tar.bz2 deleted file mode 100644 index f5711ab..0000000 --- a/mysql-connector-java-5.1.6.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:78005ba6b597fe239c318ca5a1eb60f5f6fd5f25d4bfb2e8796069eac8f9981d -size 8328530 diff --git a/mysql-connector-java-suse-docs.patch b/mysql-connector-java-suse-docs.patch new file mode 100644 index 0000000..63fa45f --- /dev/null +++ b/mysql-connector-java-suse-docs.patch @@ -0,0 +1,21 @@ +Index: mysql-connector-java-5.1.19/README.txt +=================================================================== +--- mysql-connector-java-5.1.19.orig/README.txt 2012-04-02 10:14:19.000000000 +0200 ++++ mysql-connector-java-5.1.19/README.txt 2012-05-04 14:46:08.868387250 +0200 +@@ -48,12 +48,11 @@ + * Third-Party Component Notices + + DOCUMENTATION LOCATION +- +-The documentation formerly contained in this file has moved +-into the 'doc' directory, where it is available in HTML, PDF +-and plaintext forms. + +-You may also find the latest copy of the documentation on ++Due the license issues SUSE is no longer beeing able to redistribute the ++documentation. ++ ++You may find the latest copy of the documentation on + the MySQL website at + http://dev.mysql.com/doc/refman/5.1/en/connector-j.html + diff --git a/mysql-connector-java-target-javadoc.patch b/mysql-connector-java-target-javadoc.patch deleted file mode 100644 index 294d5d0..0000000 --- a/mysql-connector-java-target-javadoc.patch +++ /dev/null @@ -1,34 +0,0 @@ ---- build.xml -+++ build.xml -@@ -361,7 +361,7 @@ - - - -- -+ - - - -@@ -1175,4 +1175,22 @@ - - - -+ -+ -+ -+ -+ -+ -+ - diff --git a/mysql-connector-java.changes b/mysql-connector-java.changes index cd5db2f..1936714 100644 --- a/mysql-connector-java.changes +++ b/mysql-connector-java.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Fri May 4 12:48:41 UTC 2012 - mvyskocil@suse.cz + +- remove the docs/ from source tarball due license issues + +------------------------------------------------------------------- +Fri Apr 27 09:54:08 UTC 2012 - mvyskocil@suse.cz + +- update to 5.1.19 + * plugable authentication via com.mysql.jdbc.AuthenticationPlugin + * retrieve servet charset name using index + * ability to determine if the connection is against server on the same host + * added slf4j logging adapter + * and many more features and bugfixes +- removed -javadoc patch and package +- add maven pom + ------------------------------------------------------------------- Thu Sep 11 10:23:35 CEST 2008 - anosek@suse.cz diff --git a/mysql-connector-java.spec b/mysql-connector-java.spec index dd4edbb..a8b316a 100644 --- a/mysql-connector-java.spec +++ b/mysql-connector-java.spec @@ -1,7 +1,7 @@ # -# spec file for package mysql-connector-java (Version 5.1.6) +# spec file for package mysql-connector-java # -# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -14,10 +14,9 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # - -# norootforbuild # icecream 0 + %define section free %define builddir build-mysql-jdbc %define distdir dist-mysql-jdbc @@ -25,21 +24,28 @@ Name: mysql-connector-java Summary: Official JDBC Driver for MySQL -Version: 5.1.6 -Release: 1 License: GPL-2.0+ Group: Development/Libraries/Java -Source0: %{name}-%{version}.tar.bz2 -Patch1: %{name}-target-javadoc.patch -Patch2: %{name}-%{version}-java6-compatibility.patch -Patch3: %{name}-%{version}-disableJDBC4.patch +Version: 5.1.19 +Release: 0 +# docs are now under very strict proprietary license by Oracle, so lets not distribute them +# tar -xf %{name}-%{version}.tar.gz +# rm -rf %{name}-%{version}/docs %{name}-%{version}/%{name}-%{version}-bin.jar +# tar -xJf %{name}-%{version}-suse.tar.xz +Source0: %{name}-%{version}-suse.tar.xz +Patch2: %{name}-5.1.6-java6-compatibility.patch +Patch3: %{name}-5.1.6-disableJDBC4.patch +#PATCH-FIX-SUSE: inform users about fact the documentation is not distributed anymore +Patch4: mysql-connector-java-suse-docs.patch Url: http://www.mysql.com/downloads/api-jdbc-stable.html BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch BuildRequires: ant BuildRequires: ant-contrib +BuildRequires: apache-commons-logging BuildRequires: java-devel -BuildRequires: jakarta-commons-logging +BuildRequires: slf4j +#!BuildIgnore: maven2-bootstrap %if %{with_jboss4} BuildRequires: jboss4-common BuildRequires: jboss4-connector @@ -48,8 +54,11 @@ BuildRequires: jpackage-utils BuildRequires: junit BuildRequires: log4j-mini Requires: log4j -Provides: mm.mysql -Obsoletes: mm.mysql +Provides: mm.mysql = %{version} +Obsoletes: mm.mysql < %{version} +# manual is no longer distributed +Provides: %{name}-manual = %{version} +Obsoletes: %{name}-manual < %{version} %description MySQL Connector/J is a native Java driver that converts JDBC (Java @@ -60,145 +69,72 @@ connect all corporate data, even in a heterogeneous environment. MySQL Connector/J is a Type IV JDBC driver and has a complete JDBC feature set that supports the capabilities of MySQL. - - -%package javadoc -License: GPL-2.0+ -Summary: Official JDBC Driver for MySQL -Group: Development/Libraries/Java -Requires(post): /bin/ln -Requires(post): /bin/rm -Requires(postun): /bin/rm - -%description javadoc -MySQL Connector/J is a native Java driver that converts JDBC (Java -Database Connectivity) calls into the network protocol used by the -MySQL database. It lets developers working with the Java programming -language easily build programs and applets that interact with MySQL and -connect all corporate data, even in a heterogeneous environment. MySQL -Connector/J is a Type IV JDBC driver and has a complete JDBC feature -set that supports the capabilities of MySQL. - - - -%package manual -License: GPL-2.0+ -Summary: Official JDBC Driver for MySQL -Group: Development/Libraries/Java -Requires(post): /bin/ln -Requires(post): /bin/rm -Requires(postun): /bin/rm - -%description manual -MySQL Connector/J is a native Java driver that converts JDBC (Java -Database Connectivity) calls into the network protocol used by the -MySQL database. It lets developers working with the Java programming -language easily build programs and applets that interact with MySQL and -connect all corporate data, even in a heterogeneous environment. MySQL -Connector/J is a Type IV JDBC driver and has a complete JDBC feature -set that supports the capabilities of MySQL. - - - %prep %setup -q -n %{name}-%{version} -%patch1 -b .sav1 # patch only for javac 1.6.0 if [[ "$(javac -version 2>&1 | grep '1\.6\.0')" != "" ]]; then %patch2 -b .sav2 fi %patch3 +%patch4 -p1 # remove all binary libs find . \( -name "*.jar" -o -name "*.class" \) | xargs -t %{__rm} -f %if ! %{with_jboss4} rm -r src/com/mysql/jdbc/integration/jboss/ rm -r src/testsuite/regression/DataSourceRegressionTest.java %endif -# duplicate-waste -rm docs/README.txt README -# wrong end of line necoding -sed -i -e 's/.$//' README.txt EXCEPTIONS-CONNECTOR-J + +# dup +rm -f README +# wrong end of line encoding +sed -i -e 's/.$//' README.txt %build # jboss jars needed for test suite export CLASSPATH="$(build-classpath ant-contrib \ - jakarta-commons-logging \ + commons-logging slf4j \ %if %{with_jboss4} jboss4/jboss-common-jdbc-wrapper \ %endif jdbc-stdext jta \ junit log4j xml-commons-jaxp-1.3-apis)" -ant -Dant.build.javac.source=1.5 \ - -Dant.build.javac.target=1.5 \ +ant -Dant.build.javac.source=1.6 \ + -Dant.build.javac.target=1.6 \ -DbuildDir="%{builddir}" \ -DdistDir="%{distdir}" \ -Dcom.mysql.jdbc.java6.javac="%{javac}" \ -Dcom.mysql.jdbc.java6.rtjar="%{java_home}/jre/lib/rt.jar" \ - dist javadoc + dist %install -%{__install} -d -m 755 ${RPM_BUILD_ROOT}%{_javadir} -%{__install} -m 644 %{builddir}/%{name}-%{version}/%{name}-%{version}-bin.jar \ - ${RPM_BUILD_ROOT}%{_javadir}/%{name}-%{version}.jar +install -d -m 755 %{buildroot}%{_javadir} + +install ./build-mysql-jdbc/%{name}-%{version}-SNAPSHOT/%{name}-%{version}-SNAPSHOT-bin.jar \ + %{buildroot}%{_javadir}/%{name}-%{version}.jar + ( - cd ${RPM_BUILD_ROOT}%{_javadir} && \ + cd %{buildroot}%{_javadir} && \ for jar in *-%{version}*.jar; do %{__ln_s} -f ${jar} `echo $jar | %{__sed} "s|-%{version}||g"` done ) -%{__rm} -rf ${RPM_BUILD_DIR}%{name}-%{version}/docs/release-test-output -# javadoc -%{__install} -d -m 755 ${RPM_BUILD_ROOT}%{_javadocdir}/%{name}-%{version} -%{__cp} -pr build-mysql-jdbc/javadoc/* \ - ${RPM_BUILD_ROOT}%{_javadocdir}/%{name}-%{version} -%{__ln_s} %{name}-%{version} ${RPM_BUILD_ROOT}%{_javadocdir}/%{name} +rm -rf %{buildroot}%{name}-%{version}/docs/release-test-output + +# Install the Maven build information +install -d -m 755 %{buildroot}%{_mavenpomdir} +install -pm 644 src/doc/sources/pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom +sed -i 's/>@.*%{version}