You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2024/05/24 13:03:39 UTC
(tinkerpop) branch master updated (5af9e42587 -> 09f821f1ca)
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
from 5af9e42587 Merge branch '3.7-dev'
add a0e6869a83 Refactor mutation events registration by moving reusable code from relevant steps to EventUti
new bd5836a5bc Minor formatting/javadoc CTR
new 09f821f1ca Merge branch '3.7-dev'
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
CHANGELOG.asciidoc | 2 +-
.../process/traversal/step/filter/DropStep.java | 36 +---
.../traversal/step/map/AddEdgeStartStep.java | 8 +-
.../process/traversal/step/map/AddEdgeStep.java | 8 +-
.../traversal/step/map/AddVertexStartStep.java | 8 +-
.../process/traversal/step/map/AddVertexStep.java | 8 +-
.../process/traversal/step/map/MergeEdgeStep.java | 21 +-
.../traversal/step/map/MergeVertexStep.java | 18 +-
.../traversal/step/sideEffect/AddPropertyStep.java | 83 ++++----
.../traversal/step/util/event/EventUtil.java | 218 +++++++++++++++++++++
10 files changed, 274 insertions(+), 136 deletions(-)
create mode 100644 gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/event/EventUtil.java
(tinkerpop) 02/02: Merge branch '3.7-dev'
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 09f821f1ca5a63959ebe03b352fa6e9f6fda8f46
Merge: 5af9e42587 bd5836a5bc
Author: Stephen Mallette <st...@amazon.com>
AuthorDate: Fri May 24 09:03:19 2024 -0400
Merge branch '3.7-dev'
CHANGELOG.asciidoc | 2 +-
.../process/traversal/step/filter/DropStep.java | 36 +---
.../traversal/step/map/AddEdgeStartStep.java | 8 +-
.../process/traversal/step/map/AddEdgeStep.java | 8 +-
.../traversal/step/map/AddVertexStartStep.java | 8 +-
.../process/traversal/step/map/AddVertexStep.java | 8 +-
.../process/traversal/step/map/MergeEdgeStep.java | 21 +-
.../traversal/step/map/MergeVertexStep.java | 18 +-
.../traversal/step/sideEffect/AddPropertyStep.java | 83 ++++----
.../traversal/step/util/event/EventUtil.java | 218 +++++++++++++++++++++
10 files changed, 274 insertions(+), 136 deletions(-)
(tinkerpop) 01/02: Minor formatting/javadoc CTR
Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit bd5836a5bcc8b12b7653c833420171b71119fb0f
Author: Stephen Mallette <st...@amazon.com>
AuthorDate: Fri May 24 09:02:58 2024 -0400
Minor formatting/javadoc CTR
---
.../traversal/step/sideEffect/AddPropertyStep.java | 8 +-
.../traversal/step/util/event/EventUtil.java | 127 ++++++++++++++-------
2 files changed, 91 insertions(+), 44 deletions(-)
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/AddPropertyStep.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/AddPropertyStep.java
index eec1fabfa1..7d155a40bd 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/AddPropertyStep.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/AddPropertyStep.java
@@ -115,9 +115,8 @@ public class AddPropertyStep<S extends Element> extends SideEffectStep<S>
&& optEventStrategy.isPresent();
final EventStrategy es = optEventStrategy.orElse(null);
- // find property to remove
- // only need to capture the removedProperty if eventing is configured
- Property removedProperty = eventingIsConfigured ?
+ // find property to remove. only need to capture the removedProperty if eventing is configured
+ final Property removedProperty = eventingIsConfigured ?
captureRemovedProperty(element, key, value, es) :
VertexProperty.empty();
@@ -142,7 +141,8 @@ public class AddPropertyStep<S extends Element> extends SideEffectStep<S>
}
}
- private Property captureRemovedProperty(Element element, String key, Object value, EventStrategy es){
+ private Property captureRemovedProperty(final Element element, final String key, final Object value,
+ final EventStrategy es){
Property removedProperty = VertexProperty.empty();
if (element instanceof Vertex) {
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/event/EventUtil.java b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/event/EventUtil.java
index 501c1087b0..d8222513bb 100644
--- a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/event/EventUtil.java
+++ b/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/event/EventUtil.java
@@ -27,13 +27,22 @@ import org.apache.tinkerpop.gremlin.structure.Property;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.apache.tinkerpop.gremlin.structure.VertexProperty;
-public class EventUtil {
-
- public static void registerVertexPropertyChange(CallbackRegistry<Event> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Vertex vertex,
- String key,
- Object value){
+/**
+ * Logic for registering events with the {@link EventStrategy} and the callback registry. Extracting this logic allows
+ * providers to reuse these utilities more readily.
+ */
+public final class EventUtil {
+
+ private EventUtil() {}
+
+ /**
+ * Register a vertex property change event with the callback registry.
+ */
+ public static void registerVertexPropertyChange(final CallbackRegistry<Event> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Vertex vertex,
+ final String key,
+ final Object value){
if (hasAnyCallbacks(callbackRegistry)) {
final EventStrategy eventStrategy = forceGetEventStrategy(traversal);
final Property<?> p = vertex.property(key);
@@ -43,11 +52,14 @@ public class EventUtil {
}
}
- public static void registerEdgePropertyChange(CallbackRegistry<Event> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Edge edge,
- String key,
- Object value){
+ /**
+ * Register an edge property change event with the callback registry.
+ */
+ public static void registerEdgePropertyChange(final CallbackRegistry<Event> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Edge edge,
+ final String key,
+ final Object value){
if (hasAnyCallbacks(callbackRegistry)) {
final EventStrategy eventStrategy = forceGetEventStrategy(traversal);
final Property<?> p = edge.property(key);
@@ -58,55 +70,78 @@ public class EventUtil {
}
}
- public static void registerEdgeCreation(CallbackRegistry<Event.EdgeAddedEvent> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Edge addedEdge){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerEdgeCreation(final CallbackRegistry<Event.EdgeAddedEvent> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Edge addedEdge){
if (hasAnyCallbacks(callbackRegistry)) {
final Event.EdgeAddedEvent vae = createEdgeAddedEvent(traversal, addedEdge);
callbackRegistry.getCallbacks().forEach(c -> c.accept(vae));
}
}
- public static void registerEdgeCreationWithGenericEventRegistry(CallbackRegistry<Event> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Edge addedEdge){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerEdgeCreationWithGenericEventRegistry(final CallbackRegistry<Event> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Edge addedEdge){
if (hasAnyCallbacks(callbackRegistry)) {
final Event.EdgeAddedEvent vae = createEdgeAddedEvent(traversal, addedEdge);
callbackRegistry.getCallbacks().forEach(c -> c.accept(vae));
}
}
- private static Event.EdgeAddedEvent createEdgeAddedEvent(Traversal.Admin<Object, Object> traversal, Edge addedEdge){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ private static Event.EdgeAddedEvent createEdgeAddedEvent(final Traversal.Admin<Object, Object> traversal,
+ final Edge addedEdge){
final EventStrategy eventStrategy = forceGetEventStrategy(traversal);
return new Event.EdgeAddedEvent(eventStrategy.detach(addedEdge));
}
- public static void registerVertexCreation(CallbackRegistry<Event.VertexAddedEvent> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Vertex addedVertex){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerVertexCreation(final CallbackRegistry<Event.VertexAddedEvent> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Vertex addedVertex){
if (hasAnyCallbacks(callbackRegistry)) {
final Event.VertexAddedEvent vae = createVertexAddedEvent(traversal, addedVertex);
callbackRegistry.getCallbacks().forEach(c -> c.accept(vae));
}
}
- public static void registerVertexCreationWithGenericEventRegistry(CallbackRegistry<Event> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Vertex addedVertex){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerVertexCreationWithGenericEventRegistry(final CallbackRegistry<Event> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Vertex addedVertex){
if (hasAnyCallbacks(callbackRegistry)) {
final Event.VertexAddedEvent vae = createVertexAddedEvent(traversal, addedVertex);
callbackRegistry.getCallbacks().forEach(c -> c.accept(vae));
}
}
- private static Event.VertexAddedEvent createVertexAddedEvent(Traversal.Admin<Object, Object> traversal, Vertex addedVertex){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ private static Event.VertexAddedEvent createVertexAddedEvent(final Traversal.Admin<Object, Object> traversal,
+ final Vertex addedVertex){
final EventStrategy eventStrategy = forceGetEventStrategy(traversal);
return new Event.VertexAddedEvent(eventStrategy.detach(addedVertex));
}
- public static void registerElementRemoval(CallbackRegistry<Event> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Element elementForRemoval){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerElementRemoval(final CallbackRegistry<Event> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Element elementForRemoval){
if (hasAnyCallbacks(callbackRegistry)) {
final EventStrategy eventStrategy = forceGetEventStrategy(traversal);
final Event removeEvent;
@@ -123,9 +158,12 @@ public class EventUtil {
}
}
- public static void registerPropertyRemoval(CallbackRegistry<Event> callbackRegistry,
- Traversal.Admin<Object, Object> traversal,
- Property elementForRemoval){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerPropertyRemoval(final CallbackRegistry<Event> callbackRegistry,
+ final Traversal.Admin<Object, Object> traversal,
+ final Property elementForRemoval){
if (hasAnyCallbacks(callbackRegistry)) {
final EventStrategy eventStrategy = forceGetEventStrategy(traversal);
final Event.ElementPropertyEvent removeEvent;
@@ -140,12 +178,15 @@ public class EventUtil {
}
}
- public static void registerPropertyChange(CallbackRegistry<Event.ElementPropertyChangedEvent> callbackRegistry,
- EventStrategy es,
- Element affectedElement,
- Property removedProperty,
- Object value,
- Object[] vertexPropertyKeyValues){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static void registerPropertyChange(final CallbackRegistry<Event.ElementPropertyChangedEvent> callbackRegistry,
+ final EventStrategy es,
+ final Element affectedElement,
+ final Property removedProperty,
+ final Object value,
+ final Object[] vertexPropertyKeyValues){
final Event.ElementPropertyChangedEvent event;
if (affectedElement instanceof Vertex) {
event = new Event.VertexPropertyChangedEvent(es.detach((Vertex) affectedElement), removedProperty, value, vertexPropertyKeyValues);
@@ -161,11 +202,17 @@ public class EventUtil {
}
}
- public static boolean hasAnyCallbacks(CallbackRegistry<? extends Event> callbackRegistry){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static boolean hasAnyCallbacks(final CallbackRegistry<? extends Event> callbackRegistry){
return callbackRegistry != null && !callbackRegistry.getCallbacks().isEmpty();
}
- public static EventStrategy forceGetEventStrategy(Traversal.Admin<Object, Object> traversal){
+ /**
+ * Register a vertex property addition event with the callback registry.
+ */
+ public static EventStrategy forceGetEventStrategy(final Traversal.Admin<Object, Object> traversal){
return traversal.getStrategies().getStrategy(EventStrategy.class).get();
}
}