You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2006/09/25 02:54:08 UTC

svn commit: r449537 - /incubator/cayenne/main/branches/STABLE-1.2/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/CayenneContext.java

Author: aadamchik
Date: Sun Sep 24 17:54:07 2006
New Revision: 449537

URL: http://svn.apache.org/viewvc?view=rev&rev=449537
Log:
CAY-653 - aligning the order of new object property initialization with that of DataContext

Modified:
    incubator/cayenne/main/branches/STABLE-1.2/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/CayenneContext.java

Modified: incubator/cayenne/main/branches/STABLE-1.2/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/CayenneContext.java
URL: http://svn.apache.org/viewvc/incubator/cayenne/main/branches/STABLE-1.2/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/CayenneContext.java?view=diff&rev=449537&r1=449536&r2=449537
==============================================================================
--- incubator/cayenne/main/branches/STABLE-1.2/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/CayenneContext.java (original)
+++ incubator/cayenne/main/branches/STABLE-1.2/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/CayenneContext.java Sun Sep 24 17:54:07 2006
@@ -468,9 +468,11 @@
 
         Persistent object = (Persistent) descriptor.createObject();
 
-        object.setPersistenceState(PersistenceState.NEW);
-        object.setObjectContext(this);
+        // must follow this exact order of property initialization per CAY-653, i.e. have
+        // the id and the context in place BEFORE setPersistence is called
         object.setObjectId(id);
+        object.setObjectContext(this);
+        object.setPersistenceState(PersistenceState.NEW);
 
         descriptor.injectValueHolders(object);
         graphManager.registerNode(object.getObjectId(), object);