You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by ni...@apache.org on 2018/01/14 12:39:36 UTC

[incubator-servicecomb-saga] branch master updated: SCB-228 Update to replace the type of TxEvent with Enum

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

ningjiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-saga.git


The following commit(s) were added to refs/heads/master by this push:
     new 5b2b59a  SCB-228 Update to replace the type of TxEvent with Enum
5b2b59a is described below

commit 5b2b59ac479758bd8386cc0e2c78f664e18563b6
Author: Zheng Feng <zh...@gmail.com>
AuthorDate: Sat Jan 13 10:00:01 2018 +0800

    SCB-228 Update to replace the type of TxEvent with Enum
---
 .../omega/connector/grpc/GrpcClientMessageSender.java |  2 +-
 .../grpc/LoadBalancedClusterMessageSenderTest.java    |  5 +++--
 .../saga/omega/transaction/SagaEndedEvent.java        |  2 +-
 .../saga/omega/transaction/SagaStartedEvent.java      |  2 +-
 .../saga/omega/transaction/TxAbortedEvent.java        |  2 +-
 .../saga/omega/transaction/TxCompensatedEvent.java    |  2 +-
 .../saga/omega/transaction/TxEndedEvent.java          |  2 +-
 .../servicecomb/saga/omega/transaction/TxEvent.java   | 19 +++++++++++++++----
 .../saga/omega/transaction/TxStartedEvent.java        |  2 +-
 .../omega/transaction/CompensableInterceptorTest.java |  6 +++---
 .../transaction/CompensationMessageHandlerTest.java   |  2 +-
 .../transaction/SagaStartAnnotationProcessorTest.java |  6 +++---
 .../saga/omega/transaction/SagaStartAspectTest.java   |  8 ++++----
 .../saga/omega/transaction/TransactionAspectTest.java |  8 ++++----
 14 files changed, 40 insertions(+), 28 deletions(-)

diff --git a/omega/omega-connector/omega-connector-grpc/src/main/java/org/apache/servicecomb/saga/omega/connector/grpc/GrpcClientMessageSender.java b/omega/omega-connector/omega-connector-grpc/src/main/java/org/apache/servicecomb/saga/omega/connector/grpc/GrpcClientMessageSender.java
index 5534db9..f6b5d76 100644
--- a/omega/omega-connector/omega-connector-grpc/src/main/java/org/apache/servicecomb/saga/omega/connector/grpc/GrpcClientMessageSender.java
+++ b/omega/omega-connector/omega-connector-grpc/src/main/java/org/apache/servicecomb/saga/omega/connector/grpc/GrpcClientMessageSender.java
@@ -97,7 +97,7 @@ public class GrpcClientMessageSender implements MessageSender {
         .setGlobalTxId(event.globalTxId())
         .setLocalTxId(event.localTxId())
         .setParentTxId(event.parentTxId() == null ? "" : event.parentTxId())
-        .setType(event.type())
+        .setType(event.type().name())
         .setCompensationMethod(event.compensationMethod())
         .setPayloads(payloads);
 
diff --git a/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java b/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java
index f280de0..8fe5247 100644
--- a/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java
+++ b/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java
@@ -92,7 +92,7 @@ public class LoadBalancedClusterMessageSenderTest {
   private final String localTxId = uniquify("localTxId");
   private final String parentTxId = uniquify("parentTxId");
   private final String compensationMethod = getClass().getCanonicalName();
-  private final TxEvent event = new TxEvent(globalTxId, localTxId, parentTxId, compensationMethod, "blah");
+  private final TxEvent event = new TxEvent(TxEvent.EventType.TxStartedEvent, globalTxId, localTxId, parentTxId, compensationMethod, "blah");
 
   private final String serviceName = uniquify("serviceName");
   private final String[] addresses = {"localhost:8080", "localhost:8090"};
@@ -298,6 +298,7 @@ public class LoadBalancedClusterMessageSenderTest {
     @Override
     public void onTxEvent(GrpcTxEvent request, StreamObserver<GrpcAck> responseObserver) {
       events.offer(new TxEvent(
+          TxEvent.EventType.valueOf(request.getType()),
           request.getGlobalTxId(),
           request.getLocalTxId(),
           request.getParentTxId(),
@@ -306,7 +307,7 @@ public class LoadBalancedClusterMessageSenderTest {
 
       sleep();
 
-      if ("TxAbortedEvent".equals(request.getType())) {
+      if (TxEvent.EventType.TxAbortedEvent.name().equals(request.getType())) {
         this.responseObserver.onNext(GrpcCompensateCommand
             .newBuilder()
             .setGlobalTxId(request.getGlobalTxId())
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaEndedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaEndedEvent.java
index 3048d36..8a0c3eb 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaEndedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaEndedEvent.java
@@ -20,6 +20,6 @@ package org.apache.servicecomb.saga.omega.transaction;
 public class SagaEndedEvent extends TxEvent {
 
   public SagaEndedEvent(String globalTxId, String localTxId) {
-    super(globalTxId, localTxId, null, "");
+    super(EventType.SagaEndedEvent, globalTxId, localTxId, null, "");
   }
 }
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartedEvent.java
index 0985f59..d5bf70c 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartedEvent.java
@@ -21,6 +21,6 @@ public class SagaStartedEvent extends TxEvent {
 
   public SagaStartedEvent(String globalTxId, String localTxId) {
     // use "" instead of null as compensationMethod requires not null in sql
-    super(globalTxId, localTxId, null, "");
+    super(EventType.SagaStartedEvent, globalTxId, localTxId, null, "");
   }
 }
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxAbortedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxAbortedEvent.java
index 0bba8a1..af6ba84 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxAbortedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxAbortedEvent.java
@@ -22,7 +22,7 @@ import java.io.StringWriter;
 
 public class TxAbortedEvent extends TxEvent {
   public TxAbortedEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod, Throwable throwable) {
-    super(globalTxId, localTxId, parentTxId, compensationMethod, stackTrace(throwable));
+    super(EventType.TxAbortedEvent, globalTxId, localTxId, parentTxId, compensationMethod, stackTrace(throwable));
   }
 
   private static String stackTrace(Throwable e) {
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxCompensatedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxCompensatedEvent.java
index 733e060..089d4a8 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxCompensatedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxCompensatedEvent.java
@@ -19,6 +19,6 @@ package org.apache.servicecomb.saga.omega.transaction;
 
 public class TxCompensatedEvent extends TxEvent {
   public TxCompensatedEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod) {
-    super(globalTxId, localTxId, parentTxId, compensationMethod);
+    super(EventType.TxCompensatedEvent, globalTxId, localTxId, parentTxId, compensationMethod);
   }
 }
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEndedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEndedEvent.java
index b08932c..d03155a 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEndedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEndedEvent.java
@@ -19,6 +19,6 @@ package org.apache.servicecomb.saga.omega.transaction;
 
 public class TxEndedEvent extends TxEvent {
   public TxEndedEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod) {
-    super(globalTxId, localTxId, parentTxId, compensationMethod);
+    super(EventType.TxEndedEvent, globalTxId, localTxId, parentTxId, compensationMethod);
   }
 }
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEvent.java
index 725ef08..58c79c6 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxEvent.java
@@ -20,15 +20,26 @@ package org.apache.servicecomb.saga.omega.transaction;
 import java.util.Arrays;
 
 public class TxEvent {
+  public enum EventType {
+    SagaStartedEvent,
+    SagaEndedEvent,
+    TxStartedEvent,
+    TxEndedEvent,
+    TxAbortedEvent,
+    TxCompensatedEvent
+  };
+
   private final long timestamp;
+  private final EventType type;
   private final String globalTxId;
   private final String localTxId;
   private final String parentTxId;
   private final String compensationMethod;
   private final Object[] payloads;
 
-  public TxEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod, Object... payloads) {
+  public TxEvent(EventType type, String globalTxId, String localTxId, String parentTxId, String compensationMethod, Object... payloads) {
     this.timestamp = System.currentTimeMillis();
+    this.type = type;
     this.localTxId = localTxId;
     this.parentTxId = parentTxId;
     this.compensationMethod = compensationMethod;
@@ -56,8 +67,8 @@ public class TxEvent {
     return payloads;
   }
 
-  public String type() {
-    return this.getClass().getSimpleName();
+  public EventType type() {
+    return type;
   }
 
   public String compensationMethod() {
@@ -66,7 +77,7 @@ public class TxEvent {
 
   @Override
   public String toString() {
-    return "TxEvent{" +
+    return type.name() + "{" +
         "globalTxId='" + globalTxId + '\'' +
         ", localTxId='" + localTxId + '\'' +
         ", parentTxId='" + parentTxId + '\'' +
diff --git a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxStartedEvent.java b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxStartedEvent.java
index d54b061..bd72cd3 100644
--- a/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxStartedEvent.java
+++ b/omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/TxStartedEvent.java
@@ -20,6 +20,6 @@ package org.apache.servicecomb.saga.omega.transaction;
 public class TxStartedEvent extends TxEvent {
 
   public TxStartedEvent(String globalTxId, String localTxId, String parentTxId, String compensationMethod, Object... payloads) {
-    super(globalTxId, localTxId, parentTxId, compensationMethod, payloads);
+    super(EventType.TxStartedEvent, globalTxId, localTxId, parentTxId, compensationMethod, payloads);
   }
 }
diff --git a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensableInterceptorTest.java b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensableInterceptorTest.java
index 609ea6d..a7aa456 100644
--- a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensableInterceptorTest.java
+++ b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensableInterceptorTest.java
@@ -65,7 +65,7 @@ public class CompensableInterceptorTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(localTxId));
     assertThat(event.parentTxId(), is(parentTxId));
-    assertThat(event.type(), is("TxStartedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxStartedEvent));
     assertThat(event.compensationMethod(), is(compensationMethod));
     assertThat(asList(event.payloads()), contains(message));
   }
@@ -79,7 +79,7 @@ public class CompensableInterceptorTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(localTxId));
     assertThat(event.parentTxId(), is(parentTxId));
-    assertThat(event.type(), is("TxEndedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxEndedEvent));
     assertThat(event.compensationMethod(), is(compensationMethod));
     assertThat(event.payloads().length, is(0));
   }
@@ -93,7 +93,7 @@ public class CompensableInterceptorTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(localTxId));
     assertThat(event.parentTxId(), is(parentTxId));
-    assertThat(event.type(), is("TxAbortedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxAbortedEvent));
     assertThat(event.compensationMethod(), is(compensationMethod));
   }
 }
diff --git a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensationMessageHandlerTest.java b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensationMessageHandlerTest.java
index 2585f3f..0827833 100644
--- a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensationMessageHandlerTest.java
+++ b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/CompensationMessageHandlerTest.java
@@ -53,7 +53,7 @@ public class CompensationMessageHandlerTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(localTxId));
     assertThat(event.parentTxId(), is(parentTxId));
-    assertThat(event.type(), is("TxCompensatedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxCompensatedEvent));
     assertThat(event.compensationMethod(), is(getClass().getCanonicalName()));
     assertThat(event.payloads().length, is(0));
 
diff --git a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessorTest.java b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessorTest.java
index 9b8adf5..48399b4 100644
--- a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessorTest.java
+++ b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessorTest.java
@@ -65,7 +65,7 @@ public class SagaStartAnnotationProcessorTest {
     assertThat(event.localTxId(), is(globalTxId));
     assertThat(event.parentTxId(), is(nullValue()));
     assertThat(event.compensationMethod().isEmpty(), is(true));
-    assertThat(event.type(), is("SagaStartedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.SagaStartedEvent));
     assertThat(event.payloads().length, is(0));
   }
 
@@ -79,7 +79,7 @@ public class SagaStartAnnotationProcessorTest {
     assertThat(event.localTxId(), is(globalTxId));
     assertThat(event.parentTxId(), is(nullValue()));
     assertThat(event.compensationMethod().isEmpty(), is(true));
-    assertThat(event.type(), is("SagaEndedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.SagaEndedEvent));
     assertThat(event.payloads().length, is(0));
   }
-}
\ No newline at end of file
+}
diff --git a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAspectTest.java b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAspectTest.java
index b63b8be..e2a1c62 100644
--- a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAspectTest.java
+++ b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAspectTest.java
@@ -74,14 +74,14 @@ public class SagaStartAspectTest {
     assertThat(startedEvent.globalTxId(), is(globalTxId));
     assertThat(startedEvent.localTxId(), is(globalTxId));
     assertThat(startedEvent.parentTxId(), is(nullValue()));
-    assertThat(startedEvent.type(), is("SagaStartedEvent"));
+    assertThat(startedEvent.type(), is(TxEvent.EventType.SagaStartedEvent));
 
     TxEvent endedEvent = messages.get(1);
 
     assertThat(endedEvent.globalTxId(), is(globalTxId));
     assertThat(endedEvent.localTxId(), is(globalTxId));
     assertThat(endedEvent.parentTxId(), is(nullValue()));
-    assertThat(endedEvent.type(), is("SagaEndedEvent"));
+    assertThat(endedEvent.type(), is(TxEvent.EventType.SagaEndedEvent));
 
     assertThat(omegaContext.globalTxId(), is(nullValue()));
     assertThat(omegaContext.localTxId(), is(nullValue()));
@@ -106,7 +106,7 @@ public class SagaStartAspectTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(globalTxId));
     assertThat(event.parentTxId(), is(nullValue()));
-    assertThat(event.type(), is("SagaStartedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.SagaStartedEvent));
 
     assertThat(omegaContext.globalTxId(), is(nullValue()));
     assertThat(omegaContext.localTxId(), is(nullValue()));
@@ -137,7 +137,7 @@ public class SagaStartAspectTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(globalTxId));
     assertThat(event.parentTxId(), is(nullValue()));
-    assertThat(event.type(), is("TxAbortedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxAbortedEvent));
 
     latch.countDown();
 
diff --git a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/TransactionAspectTest.java b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/TransactionAspectTest.java
index a937242..dabfbc7 100644
--- a/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/TransactionAspectTest.java
+++ b/omega/omega-transaction/src/test/java/org/apache/servicecomb/saga/omega/transaction/TransactionAspectTest.java
@@ -80,14 +80,14 @@ public class TransactionAspectTest {
     assertThat(startedEvent.globalTxId(), is(globalTxId));
     assertThat(startedEvent.localTxId(), is(newLocalTxId));
     assertThat(startedEvent.parentTxId(), is(localTxId));
-    assertThat(startedEvent.type(), is("TxStartedEvent"));
+    assertThat(startedEvent.type(), is(TxEvent.EventType.TxStartedEvent));
 
     TxEvent endedEvent = messages.get(1);
 
     assertThat(endedEvent.globalTxId(), is(globalTxId));
     assertThat(endedEvent.localTxId(), is(newLocalTxId));
     assertThat(endedEvent.parentTxId(), is(localTxId));
-    assertThat(endedEvent.type(), is("TxEndedEvent"));
+    assertThat(endedEvent.type(), is(TxEvent.EventType.TxEndedEvent));
 
     assertThat(omegaContext.globalTxId(), is(globalTxId));
     assertThat(omegaContext.localTxId(), is(localTxId));
@@ -111,7 +111,7 @@ public class TransactionAspectTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(newLocalTxId));
     assertThat(event.parentTxId(), is(localTxId));
-    assertThat(event.type(), is("TxAbortedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxAbortedEvent));
 
     assertThat(omegaContext.globalTxId(), is(globalTxId));
     assertThat(omegaContext.localTxId(), is(localTxId));
@@ -146,7 +146,7 @@ public class TransactionAspectTest {
     assertThat(event.globalTxId(), is(globalTxId));
     assertThat(event.localTxId(), is(newLocalTxId));
     assertThat(event.parentTxId(), is(localTxId));
-    assertThat(event.type(), is("TxAbortedEvent"));
+    assertThat(event.type(), is(TxEvent.EventType.TxAbortedEvent));
 
     latch.countDown();
 

-- 
To stop receiving notification emails like this one, please contact
['"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>'].