CAY-2897 Add no-op default implementations to the GraphChangeHandler interface
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index 32f5728..be179ec 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -17,6 +17,7 @@
CAY-2873 Change Orderings.orderedList() to accept a Collection rather than a List
CAY-2884 Upgrade gradle to 8.13
CAY-2893 Update velocity-engine-core dependency
+CAY-2897 Add no-op default implementations to the GraphChangeHandler interface
Bug Fixes:
diff --git a/cayenne-commitlog/src/main/java/org/apache/cayenne/commitlog/DeletedDiffProcessor.java b/cayenne-commitlog/src/main/java/org/apache/cayenne/commitlog/DeletedDiffProcessor.java
index e55d21c..5598787 100644
--- a/cayenne-commitlog/src/main/java/org/apache/cayenne/commitlog/DeletedDiffProcessor.java
+++ b/cayenne-commitlog/src/main/java/org/apache/cayenne/commitlog/DeletedDiffProcessor.java
@@ -27,7 +27,6 @@
import org.apache.cayenne.commitlog.model.MutableChangeMap;
import org.apache.cayenne.commitlog.model.MutableObjectChange;
import org.apache.cayenne.commitlog.model.ObjectChangeType;
-import org.apache.cayenne.graph.ArcId;
import org.apache.cayenne.graph.GraphChangeHandler;
import org.apache.cayenne.map.DbRelationship;
import org.apache.cayenne.query.ObjectIdQuery;
@@ -124,29 +123,4 @@
});
}
-
- @Override
- public void nodeIdChanged(Object nodeId, Object newId) {
- // do nothing
- }
-
- @Override
- public void nodeCreated(Object nodeId) {
- // do nothing
- }
-
- @Override
- public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
- // do nothing
- }
-
- @Override
- public void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
- // do nothing
- }
-
- @Override
- public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
- // do nothing
- }
}
diff --git a/cayenne/src/main/java/org/apache/cayenne/DataChannelSyncCallbackAction.java b/cayenne/src/main/java/org/apache/cayenne/DataChannelSyncCallbackAction.java
index e48ce8c..2120123 100644
--- a/cayenne/src/main/java/org/apache/cayenne/DataChannelSyncCallbackAction.java
+++ b/cayenne/src/main/java/org/apache/cayenne/DataChannelSyncCallbackAction.java
@@ -144,10 +144,6 @@
}
@Override
- public void nodeIdChanged(Object nodeId, Object newId) {
- }
-
- @Override
public void nodePropertyChanged(
Object nodeId,
String property,
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 1a15d9b..7d9db3e 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java
@@ -150,11 +150,6 @@
}
@Override
- public void nodeCreated(Object nodeId) {
- // noop
- }
-
- @Override
public void nodeRemoved(Object nodeId) {
ObjectStore os = context.getObjectStore();
synchronized (os) {
diff --git a/cayenne/src/main/java/org/apache/cayenne/access/ObjectStore.java b/cayenne/src/main/java/org/apache/cayenne/access/ObjectStore.java
index 00309af..372fba3 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/ObjectStore.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/ObjectStore.java
@@ -439,35 +439,10 @@
// re-register changed object ids
if (!parentChanges.isNoop()) {
parentChanges.apply(new GraphChangeHandler() {
-
- @Override
- public void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
- }
-
- @Override
- public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
- }
-
- @Override
- public void nodeCreated(Object nodeId) {
- }
-
@Override
public void nodeIdChanged(Object nodeId, Object newId) {
processIdChange(nodeId, newId);
}
-
- @Override
- public void nodePropertyChanged(
- Object nodeId,
- String property,
- Object oldValue,
- Object newValue) {
- }
-
- @Override
- public void nodeRemoved(Object nodeId) {
- }
});
}
diff --git a/cayenne/src/main/java/org/apache/cayenne/access/PrefetchProcessorNode.java b/cayenne/src/main/java/org/apache/cayenne/access/PrefetchProcessorNode.java
index d194c07..7e4d602 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/PrefetchProcessorNode.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/PrefetchProcessorNode.java
@@ -270,21 +270,5 @@
hasArcDiff = true;
}
}
-
- @Override
- public void nodeIdChanged(Object nodeId, Object newId) {
- }
-
- @Override
- public void nodeCreated(Object nodeId) {
- }
-
- @Override
- public void nodeRemoved(Object nodeId) {
- }
-
- @Override
- public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
- }
}
}
diff --git a/cayenne/src/main/java/org/apache/cayenne/access/flush/ArcValuesCreationHandler.java b/cayenne/src/main/java/org/apache/cayenne/access/flush/ArcValuesCreationHandler.java
index 8e6d1e5..275f918 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/flush/ArcValuesCreationHandler.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/flush/ArcValuesCreationHandler.java
@@ -245,23 +245,6 @@
}
}
- // not interested in following events in this handler
- @Override
- public void nodeIdChanged(Object nodeId, Object newId) {
- }
-
- @Override
- public void nodeCreated(Object nodeId) {
- }
-
- @Override
- public void nodeRemoved(Object nodeId) {
- }
-
- @Override
- public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
- }
-
private static class ValuePropagationVisitor implements DbRowOpVisitor<Void> {
private final DbAttribute attribute;
private final boolean add;
diff --git a/cayenne/src/main/java/org/apache/cayenne/access/flush/DataDomainIndirectDiffBuilder.java b/cayenne/src/main/java/org/apache/cayenne/access/flush/DataDomainIndirectDiffBuilder.java
index e330db0..1b6f56b 100644
--- a/cayenne/src/main/java/org/apache/cayenne/access/flush/DataDomainIndirectDiffBuilder.java
+++ b/cayenne/src/main/java/org/apache/cayenne/access/flush/DataDomainIndirectDiffBuilder.java
@@ -85,24 +85,4 @@
}
}
}
-
- @Override
- public void nodeIdChanged(Object nodeId, Object newId) {
- // noop
- }
-
- @Override
- public void nodeCreated(Object nodeId) {
- // noop
- }
-
- @Override
- public void nodeRemoved(Object nodeId) {
- // noop
- }
-
- @Override
- public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
- // noop
- }
}
diff --git a/cayenne/src/main/java/org/apache/cayenne/graph/GraphChangeHandler.java b/cayenne/src/main/java/org/apache/cayenne/graph/GraphChangeHandler.java
index dc7aa46..d265166 100644
--- a/cayenne/src/main/java/org/apache/cayenne/graph/GraphChangeHandler.java
+++ b/cayenne/src/main/java/org/apache/cayenne/graph/GraphChangeHandler.java
@@ -32,34 +32,40 @@
/**
* Notifies implementing object that a node was assigned a new id.
*/
- void nodeIdChanged(Object nodeId, Object newId);
+ default void nodeIdChanged(Object nodeId, Object newId) {
+ }
/**
* Notifies implementing object that a new node was created in the graph.
*/
- void nodeCreated(Object nodeId);
+ default void nodeCreated(Object nodeId) {
+ }
/**
* Notifies implementing object that a node was removed from the graph.
*/
- void nodeRemoved(Object nodeId);
+ default void nodeRemoved(Object nodeId) {
+ }
/**
* Notifies implementing object that a node's property was modified.
*/
- void nodePropertyChanged(
+ default void nodePropertyChanged(
Object nodeId,
String property,
Object oldValue,
- Object newValue);
+ Object newValue) {
+ }
/**
* Notifies implementing object that a new arc was created between two nodes.
*/
- void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId);
+ default void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
+ }
/**
* Notifies implementing object that an arc between two nodes was deleted.
*/
- void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId);
+ default void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
+ }
}
diff --git a/cayenne/src/main/java/org/apache/cayenne/graph/GraphMap.java b/cayenne/src/main/java/org/apache/cayenne/graph/GraphMap.java
index 2c0fede..e7d5649 100644
--- a/cayenne/src/main/java/org/apache/cayenne/graph/GraphMap.java
+++ b/cayenne/src/main/java/org/apache/cayenne/graph/GraphMap.java
@@ -71,39 +71,4 @@
return nodes.remove(nodeId);
}
- // *** methods for tracking local changes declared in GraphChangeHandler interface
-
- @Override
- public void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
- // noop
- }
-
- @Override
- public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
- // noop
- }
-
- @Override
- public void nodeCreated(Object nodeId) {
- // noop
- }
-
- @Override
- public void nodeRemoved(Object nodeId) {
- // noop
- }
-
- @Override
- public void nodeIdChanged(Object nodeId, Object newId) {
- // noop
- }
-
- @Override
- public void nodePropertyChanged(
- Object nodeId,
- String property,
- Object oldValue,
- Object newValue) {
- // noop
- }
}