Skip to content

Commit 8f17977

Browse files
committed
CAY-2897 Add no-op default implementations to the GraphChangeHandler interface
1 parent cb7cb66 commit 8f17977

10 files changed

Lines changed: 14 additions & 155 deletions

File tree

RELEASE-NOTES.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ CAY-2859 Redesign SelectById factory methods
1717
CAY-2873 Change Orderings.orderedList() to accept a Collection rather than a List
1818
CAY-2884 Upgrade gradle to 8.13
1919
CAY-2893 Update velocity-engine-core dependency
20+
CAY-2897 Add no-op default implementations to the GraphChangeHandler interface
2021

2122
Bug Fixes:
2223

cayenne-commitlog/src/main/java/org/apache/cayenne/commitlog/DeletedDiffProcessor.java

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import org.apache.cayenne.commitlog.model.MutableChangeMap;
2828
import org.apache.cayenne.commitlog.model.MutableObjectChange;
2929
import org.apache.cayenne.commitlog.model.ObjectChangeType;
30-
import org.apache.cayenne.graph.ArcId;
3130
import org.apache.cayenne.graph.GraphChangeHandler;
3231
import org.apache.cayenne.map.DbRelationship;
3332
import org.apache.cayenne.query.ObjectIdQuery;
@@ -124,29 +123,4 @@ public boolean visitToMany(ToManyProperty property) {
124123

125124
});
126125
}
127-
128-
@Override
129-
public void nodeIdChanged(Object nodeId, Object newId) {
130-
// do nothing
131-
}
132-
133-
@Override
134-
public void nodeCreated(Object nodeId) {
135-
// do nothing
136-
}
137-
138-
@Override
139-
public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
140-
// do nothing
141-
}
142-
143-
@Override
144-
public void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
145-
// do nothing
146-
}
147-
148-
@Override
149-
public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
150-
// do nothing
151-
}
152126
}

cayenne/src/main/java/org/apache/cayenne/DataChannelSyncCallbackAction.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,6 @@ public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
143143
nodeUpdated(nodeId);
144144
}
145145

146-
@Override
147-
public void nodeIdChanged(Object nodeId, Object newId) {
148-
}
149-
150146
@Override
151147
public void nodePropertyChanged(
152148
Object nodeId,

cayenne/src/main/java/org/apache/cayenne/access/DataContextMergeHandler.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -149,11 +149,6 @@ public void nodeIdChanged(Object nodeId, Object newId) {
149149
context.getObjectStore().processIdChange(nodeId, newId);
150150
}
151151

152-
@Override
153-
public void nodeCreated(Object nodeId) {
154-
// noop
155-
}
156-
157152
@Override
158153
public void nodeRemoved(Object nodeId) {
159154
ObjectStore os = context.getObjectStore();

cayenne/src/main/java/org/apache/cayenne/access/ObjectStore.java

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -439,35 +439,10 @@ public void postprocessAfterCommit(GraphDiff parentChanges) {
439439
// re-register changed object ids
440440
if (!parentChanges.isNoop()) {
441441
parentChanges.apply(new GraphChangeHandler() {
442-
443-
@Override
444-
public void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
445-
}
446-
447-
@Override
448-
public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
449-
}
450-
451-
@Override
452-
public void nodeCreated(Object nodeId) {
453-
}
454-
455442
@Override
456443
public void nodeIdChanged(Object nodeId, Object newId) {
457444
processIdChange(nodeId, newId);
458445
}
459-
460-
@Override
461-
public void nodePropertyChanged(
462-
Object nodeId,
463-
String property,
464-
Object oldValue,
465-
Object newValue) {
466-
}
467-
468-
@Override
469-
public void nodeRemoved(Object nodeId) {
470-
}
471446
});
472447
}
473448

cayenne/src/main/java/org/apache/cayenne/access/PrefetchProcessorNode.java

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -270,21 +270,5 @@ public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
270270
hasArcDiff = true;
271271
}
272272
}
273-
274-
@Override
275-
public void nodeIdChanged(Object nodeId, Object newId) {
276-
}
277-
278-
@Override
279-
public void nodeCreated(Object nodeId) {
280-
}
281-
282-
@Override
283-
public void nodeRemoved(Object nodeId) {
284-
}
285-
286-
@Override
287-
public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
288-
}
289273
}
290274
}

cayenne/src/main/java/org/apache/cayenne/access/flush/ArcValuesCreationHandler.java

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -245,23 +245,6 @@ protected void processRelationship(DbRelationship dbRelationship, ObjectId srcId
245245
}
246246
}
247247

248-
// not interested in following events in this handler
249-
@Override
250-
public void nodeIdChanged(Object nodeId, Object newId) {
251-
}
252-
253-
@Override
254-
public void nodeCreated(Object nodeId) {
255-
}
256-
257-
@Override
258-
public void nodeRemoved(Object nodeId) {
259-
}
260-
261-
@Override
262-
public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
263-
}
264-
265248
private static class ValuePropagationVisitor implements DbRowOpVisitor<Void> {
266249
private final DbAttribute attribute;
267250
private final boolean add;

cayenne/src/main/java/org/apache/cayenne/access/flush/DataDomainIndirectDiffBuilder.java

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -85,24 +85,4 @@ private void processArcChange(ObjectId nodeId, ArcId arcId) {
8585
}
8686
}
8787
}
88-
89-
@Override
90-
public void nodeIdChanged(Object nodeId, Object newId) {
91-
// noop
92-
}
93-
94-
@Override
95-
public void nodeCreated(Object nodeId) {
96-
// noop
97-
}
98-
99-
@Override
100-
public void nodeRemoved(Object nodeId) {
101-
// noop
102-
}
103-
104-
@Override
105-
public void nodePropertyChanged(Object nodeId, String property, Object oldValue, Object newValue) {
106-
// noop
107-
}
10888
}

cayenne/src/main/java/org/apache/cayenne/graph/GraphChangeHandler.java

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,34 +32,40 @@ public interface GraphChangeHandler {
3232
/**
3333
* Notifies implementing object that a node was assigned a new id.
3434
*/
35-
void nodeIdChanged(Object nodeId, Object newId);
35+
default void nodeIdChanged(Object nodeId, Object newId) {
36+
}
3637

3738
/**
3839
* Notifies implementing object that a new node was created in the graph.
3940
*/
40-
void nodeCreated(Object nodeId);
41+
default void nodeCreated(Object nodeId) {
42+
}
4143

4244
/**
4345
* Notifies implementing object that a node was removed from the graph.
4446
*/
45-
void nodeRemoved(Object nodeId);
47+
default void nodeRemoved(Object nodeId) {
48+
}
4649

4750
/**
4851
* Notifies implementing object that a node's property was modified.
4952
*/
50-
void nodePropertyChanged(
53+
default void nodePropertyChanged(
5154
Object nodeId,
5255
String property,
5356
Object oldValue,
54-
Object newValue);
57+
Object newValue) {
58+
}
5559

5660
/**
5761
* Notifies implementing object that a new arc was created between two nodes.
5862
*/
59-
void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId);
63+
default void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
64+
}
6065

6166
/**
6267
* Notifies implementing object that an arc between two nodes was deleted.
6368
*/
64-
void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId);
69+
default void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
70+
}
6571
}

cayenne/src/main/java/org/apache/cayenne/graph/GraphMap.java

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -71,39 +71,4 @@ public synchronized Object unregisterNode(Object nodeId) {
7171
return nodes.remove(nodeId);
7272
}
7373

74-
// *** methods for tracking local changes declared in GraphChangeHandler interface
75-
76-
@Override
77-
public void arcCreated(Object nodeId, Object targetNodeId, ArcId arcId) {
78-
// noop
79-
}
80-
81-
@Override
82-
public void arcDeleted(Object nodeId, Object targetNodeId, ArcId arcId) {
83-
// noop
84-
}
85-
86-
@Override
87-
public void nodeCreated(Object nodeId) {
88-
// noop
89-
}
90-
91-
@Override
92-
public void nodeRemoved(Object nodeId) {
93-
// noop
94-
}
95-
96-
@Override
97-
public void nodeIdChanged(Object nodeId, Object newId) {
98-
// noop
99-
}
100-
101-
@Override
102-
public void nodePropertyChanged(
103-
Object nodeId,
104-
String property,
105-
Object oldValue,
106-
Object newValue) {
107-
// noop
108-
}
10974
}

0 commit comments

Comments
 (0)