You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by kr...@apache.org on 2011/06/09 11:42:35 UTC

svn commit: r1133752 - in /db/derby/code/trunk: build.xml java/client/org/apache/derby/client/net/Utf8CcsidManager.java java/engine/org/apache/derby/iapi/services/info/JVMInfo.java

Author: kristwaa
Date: Thu Jun  9 09:42:35 2011
New Revision: 1133752

URL: http://svn.apache.org/viewvc?rev=1133752&view=rev
Log:
DERBY-4669: ClassLoaderBootTest fails if derbyclient.jar comes before derby.jar on the classpath 

Replaced an import of iapi.sanity.SanityManager in a client class.
Imported shared.common.SanityManager in JVMInfo (class included in both
derby.jar and derbyclient.jar).
Unsealed package org.apache.derby.shared.common.sanity.

Patch file: derby-4669-3a-unseal_common.diff


Modified:
    db/derby/code/trunk/build.xml
    db/derby/code/trunk/java/client/org/apache/derby/client/net/Utf8CcsidManager.java
    db/derby/code/trunk/java/engine/org/apache/derby/iapi/services/info/JVMInfo.java

Modified: db/derby/code/trunk/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/build.xml?rev=1133752&r1=1133751&r2=1133752&view=diff
==============================================================================
--- db/derby/code/trunk/build.xml (original)
+++ db/derby/code/trunk/build.xml Thu Jun  9 09:42:35 2011
@@ -1530,7 +1530,7 @@
     	  <attribute name="Sealed" value="false"/>
     	</section>
         <!-- See DERBY-4669. -->
-        <section name="org/apache/derby/iapi/services/sanity/">
+        <section name="org/apache/derby/shared/common/sanity/">
           <attribute name="Sealed" value="false"/>
         </section>
         <section name="org/apache/derby/iapi/tools/i18n/">
@@ -1730,6 +1730,10 @@
       <attribute name="Bundle-SymbolicName" value="derbyclient"/>
       <attribute name="DynamicImport-Package" value="*"/>
       <attribute name="Export-Package" value="org.apache.derby.jdbc"/> 
+      <!-- See DERBY-4669. -->
+      <section name="org/apache/derby/shared/common/sanity/">
+        <attribute name="Sealed" value="false"/>
+      </section>
     </manifest> 
 
     <!-- declare the client driver for autoloading by the JDBC 4 DriverManager -->

Modified: db/derby/code/trunk/java/client/org/apache/derby/client/net/Utf8CcsidManager.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/net/Utf8CcsidManager.java?rev=1133752&r1=1133751&r2=1133752&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/net/Utf8CcsidManager.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/net/Utf8CcsidManager.java Thu Jun  9 09:42:35 2011
@@ -32,7 +32,7 @@ import java.nio.charset.CoderResult;
 import org.apache.derby.client.am.Agent;
 import org.apache.derby.client.am.ClientMessageId;
 import org.apache.derby.client.am.SqlException;
-import org.apache.derby.iapi.services.sanity.SanityManager;
+import org.apache.derby.shared.common.sanity.SanityManager;
 import org.apache.derby.shared.common.reference.SQLState;
 
 public class Utf8CcsidManager extends CcsidManager {

Modified: db/derby/code/trunk/java/engine/org/apache/derby/iapi/services/info/JVMInfo.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/iapi/services/info/JVMInfo.java?rev=1133752&r1=1133751&r2=1133752&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/iapi/services/info/JVMInfo.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/services/info/JVMInfo.java Thu Jun  9 09:42:35 2011
@@ -27,7 +27,11 @@ import java.net.MalformedURLException;
 import java.security.AccessController;
 import java.security.PrivilegedExceptionAction;
 
-import org.apache.derby.iapi.services.sanity.SanityManager;
+// As an exception to the rule we import SanityManager from the shared package
+// here, because the JVMInfo class is included in both derby.jar and
+// derbyclient.jar. Pulling in the class from the shared package allows us to
+// unseal the shared package only (leaving iapi.services.sanity sealed).
+import org.apache.derby.shared.common.sanity.SanityManager;
 
 /**
 	This class is used to determine which Java specification Derby will run at.