This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git

commit 25358699f5d0c02a71542052086cf2cb803633de
Author: Andrus Adamchik <[email protected]>
AuthorDate: Sat May 30 18:22:05 2026 -0400

    cleanup
---
 .../java/org/apache/cayenne/access/DataContext.java   |  2 +-
 .../cayenne/access/DataContextMergeHandler.java       | 19 +++++++------------
 .../cayenne/access/DataContextSnapshotBuilder.java    |  5 -----
 3 files changed, 8 insertions(+), 18 deletions(-)

diff --git a/cayenne/src/main/java/org/apache/cayenne/access/DataContext.java 
b/cayenne/src/main/java/org/apache/cayenne/access/DataContext.java
index 8cf567906..8b485ee2b 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/DataContext.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/DataContext.java
@@ -243,7 +243,7 @@ public class DataContext implements ObjectContext {
         setEntityResolver(channel.getEntityResolver());
 
         if (mergeHandler != null) {
-            mergeHandler.setActive(false);
+            mergeHandler.stop();
             mergeHandler = null;
         }
 
diff --git 
a/cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java 
b/cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java
index 40a02fbef..e87daa2fa 100644
--- 
a/cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java
+++ 
b/cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java
@@ -38,33 +38,28 @@ import org.apache.cayenne.reflect.ToOneProperty;
 
 /**
  * A listener of GraphEvents sent by the DataChannel that merges changes to 
the DataContext.
- * 
+ *
  * @since 1.2
  */
-// TODO: andrus, 11/25/2006 - this logic is the same as the logic in 
DataRowUtils used to
-// merge snapshot changes. Any way to reconclie the two? (in fact DataRowUtils 
is more
-// comprehensive)
 class DataContextMergeHandler implements GraphChangeHandler, 
DataChannelListener {
 
-    private boolean active;
     private final DataContext context;
+    private volatile boolean stopped;
 
     DataContextMergeHandler(DataContext context) {
-        this.active = true;
         this.context = context;
     }
 
-    void setActive(boolean active) {
-        this.active = active;
+    void stop() {
+        this.stopped = true;
     }
 
     /**
-     * Returns true if this object is active and an event came from our 
channel, but did
-     * not originate in it.
+     * Returns true if this object is active and an event came from our 
channel, but did not originate in it.
      */
     private boolean shouldProcessEvent(GraphEvent e) {
 
-        if (!active) {
+        if (stopped) {
             return false;
         }
 
@@ -149,7 +144,7 @@ class DataContextMergeHandler implements 
GraphChangeHandler, DataChannelListener
     public void nodeRemoved(Object nodeId) {
         ObjectStore os = context.getObjectStore();
         synchronized (os) {
-            os.processDeletedID((ObjectId)nodeId);
+            os.processDeletedID((ObjectId) nodeId);
         }
     }
 
diff --git 
a/cayenne/src/main/java/org/apache/cayenne/access/DataContextSnapshotBuilder.java
 
b/cayenne/src/main/java/org/apache/cayenne/access/DataContextSnapshotBuilder.java
index 5183488fe..b873b6391 100644
--- 
a/cayenne/src/main/java/org/apache/cayenne/access/DataContextSnapshotBuilder.java
+++ 
b/cayenne/src/main/java/org/apache/cayenne/access/DataContextSnapshotBuilder.java
@@ -38,11 +38,6 @@ import org.apache.cayenne.reflect.ToOneProperty;
 
 import java.util.Map;
 
-/**
- * {@link DataContext} delegates object snapshot creation to this class
- *
- * @see DataContext#currentSnapshot(Persistent)
- */
 class DataContextSnapshotBuilder implements PropertyVisitor {
 
     private final EntityResolver resolver;

Reply via email to