Author: aadamchik
Date: Sun May  7 10:42:35 2006
New Revision: 404806

URL: http://svn.apache.org/viewcvs?rev=404806&view=rev
Log:
CAY-544

Modified:
    
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectDiff.java
    
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectStore.java
    
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/objectstyle/cayenne/access/DataContextExtrasTst.java
    
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/resources/dml/access.DataContextExtrasTst.xml

Modified: 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectDiff.java
URL: 
http://svn.apache.org/viewcvs/incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectDiff.java?rev=404806&r1=404805&r2=404806&view=diff
==============================================================================
--- 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectDiff.java
 (original)
+++ 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectDiff.java
 Sun May  7 10:42:35 2006
@@ -50,10 +50,6 @@
                 || state == PersistenceState.DELETED
                 || state == PersistenceState.MODIFIED) {
 
-            ObjEntity entity = 
objectStore.getContext().getEntityResolver().getObjEntity(
-                    object.getObjectId().getEntityName());
-            final boolean lock = entity.getLockType() == 
ObjEntity.LOCK_TYPE_OPTIMISTIC;
-
             this.snapshot = new HashMap();
             this.arcSnapshot = new HashMap();
 
@@ -69,10 +65,7 @@
                 }
 
                 public boolean visitSingleObjectArc(SingleObjectArcProperty 
property) {
-                    if (lock) {
-                        takeSingleObjectArcSnapshot(property, object);
-                    }
-
+                    takeSingleObjectArcSnapshot(property, object);
                     return true;
                 }
             });

Modified: 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectStore.java
URL: 
http://svn.apache.org/viewcvs/incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectStore.java?rev=404806&r1=404805&r2=404806&view=diff
==============================================================================
--- 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectStore.java
 (original)
+++ 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/cayenne/java/org/objectstyle/cayenne/access/ObjectStore.java
 Sun May  7 10:42:35 2006
@@ -237,7 +237,6 @@
             objectDiff = new ObjectDiff(this, object);
             objectDiff.setDiffId(++currentDiffId);
             changes.put(id, objectDiff);
-
         }
 
         if (diff != null) {

Modified: 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/objectstyle/cayenne/access/DataContextExtrasTst.java
URL: 
http://svn.apache.org/viewcvs/incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/objectstyle/cayenne/access/DataContextExtrasTst.java?rev=404806&r1=404805&r2=404806&view=diff
==============================================================================
--- 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/objectstyle/cayenne/access/DataContextExtrasTst.java
 (original)
+++ 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/java/org/objectstyle/cayenne/access/DataContextExtrasTst.java
 Sun May  7 10:42:35 2006
@@ -322,6 +322,21 @@
         assertFalse(a1.isValidateForSaveCalled());
     }
 
+    public void testPhantomModificationsValidate2() throws Exception {
+        deleteTestData();
+        createTestData("testPhantomModification2");
+        DataContext context = createDataContext();
+
+        List objects = context.performQuery(new SelectQuery(Painting.class));
+        Painting p1 = (Painting) objects.get(0);
+
+        p1.setPaintingTitle(p1.getPaintingTitle());
+        p1.resetValidationFlags();
+        context.commitChanges();
+
+        assertFalse(p1.isValidateForSaveCalled());
+    }
+
     public void testPhantomAttributeModificationCommit() throws Exception {
         deleteTestData();
         createTestData("testPhantomModification");

Modified: 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/resources/dml/access.DataContextExtrasTst.xml
URL: 
http://svn.apache.org/viewcvs/incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/resources/dml/access.DataContextExtrasTst.xml?rev=404806&r1=404805&r2=404806&view=diff
==============================================================================
--- 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/resources/dml/access.DataContextExtrasTst.xml
 (original)
+++ 
incubator/cayenne/main/trunk/cayenne/cayenne-java/src/tests/resources/dml/access.DataContextExtrasTst.xml
 Sun May  7 10:42:35 2006
@@ -38,6 +38,15 @@
                        </list>
                </constructor-arg>
        </bean>
+               <bean id="testPhantomModification2" class="java.util.ArrayList">
+               <constructor-arg>
+                       <list>
+                               <ref bean="A1"/>
+                               <ref bean="A2"/>
+                               <ref bean="P11"/>
+                       </list>
+               </constructor-arg>
+       </bean>
        <bean id="testPhantomRelationshipModificationCommit" 
class="java.util.ArrayList">
                <constructor-arg>
                        <list>


Reply via email to