openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From awh...@apache.org
Subject svn commit: r510638 - /incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/conf/ConfigurationImpl.java
Date Thu, 22 Feb 2007 20:11:01 GMT
Author: awhite
Date: Thu Feb 22 12:11:00 2007
New Revision: 510638

URL: http://svn.apache.org/viewvc?view=rev&rev=510638
Log:
Second attempt at serializing to full properties, including defaults, rather
than just user-defined properties.  This ensures that on deserialization we
get the proper settings despite not running product derivations.  Previous
attempt caused problems on SunONE.


Modified:
    incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/conf/ConfigurationImpl.java

Modified: incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/conf/ConfigurationImpl.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/conf/ConfigurationImpl.java?view=diff&rev=510638&r1=510637&r2=510638
==============================================================================
--- incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/conf/ConfigurationImpl.java
(original)
+++ incubator/openjpa/trunk/openjpa-lib/src/main/java/org/apache/openjpa/lib/conf/ConfigurationImpl.java
Thu Feb 22 12:11:00 2007
@@ -850,6 +850,7 @@
     public void readExternal(ObjectInput in)
         throws IOException, ClassNotFoundException {
         fromProperties((Map) in.readObject());
+        _props = (Map) in.readObject();
         _globals = in.readBoolean();
     }
 
@@ -858,10 +859,8 @@
      * the properties returned by {@link #toProperties}.
      */
     public void writeExternal(ObjectOutput out) throws IOException {
-        if (_props != null)
-            out.writeObject(_props);
-        else
-            out.writeObject(toProperties(false));
+        out.writeObject(toProperties(true));
+        out.writeObject(_props);
         out.writeBoolean(_globals);
     }
 
@@ -875,8 +874,9 @@
                 (new Class[]{ boolean.class });
             ConfigurationImpl clone = (ConfigurationImpl) cons.newInstance
                 (new Object[]{ Boolean.FALSE });
-            clone._globals = _globals;
             clone.fromProperties(toProperties(true));
+            clone._props = (_props == null) ? null : new HashMap(_props);
+            clone._globals = _globals;
             return clone;
         } catch (RuntimeException re) {
             throw re;



Mime
View raw message