You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2018/08/23 07:55:28 UTC

[GitHub] WillemJiang closed pull request #266: SCB-864

WillemJiang closed pull request #266: SCB-864
URL: https://github.com/apache/incubator-servicecomb-saga/pull/266
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/saga-core/src/main/java/org/apache/servicecomb/saga/transports/TransportFactory.java b/saga-core/src/main/java/org/apache/servicecomb/saga/transports/TransportFactory.java
index b34b5bdf..053149fa 100644
--- a/saga-core/src/main/java/org/apache/servicecomb/saga/transports/TransportFactory.java
+++ b/saga-core/src/main/java/org/apache/servicecomb/saga/transports/TransportFactory.java
@@ -17,7 +17,9 @@
 
 package org.apache.servicecomb.saga.transports;
 
-public interface TransportFactory {
+import org.apache.servicecomb.saga.core.Transport;
 
-  RestTransport restTransport();
+public interface TransportFactory<T extends Transport> {
+
+  T getTransport();
 }
diff --git a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonFallback.java b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonFallback.java
index a70aafbb..c6cbd476 100644
--- a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonFallback.java
+++ b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonFallback.java
@@ -20,6 +20,7 @@
 import org.apache.servicecomb.saga.core.Fallback;
 import org.apache.servicecomb.saga.core.Operation;
 import org.apache.servicecomb.saga.core.SagaResponse;
+import org.apache.servicecomb.saga.core.Transport;
 import org.apache.servicecomb.saga.transports.TransportFactory;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
@@ -39,7 +40,7 @@
     @Type(value = JacksonRestFallback.class, name = Operation.TYPE_REST),
     @Type(value = NopJacksonFallback.class, name = Operation.TYPE_NOP)
 })
-public interface JacksonFallback extends Fallback, TransportAware {
+public interface JacksonFallback<T extends Transport> extends Fallback, TransportAware<T> {
 
   JacksonFallback NOP_TRANSPORT_AWARE_FALLBACK = new NopJacksonFallback(TYPE_NOP);
 
diff --git a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestFallback.java b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestFallback.java
index 35c54fe3..92db35af 100644
--- a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestFallback.java
+++ b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestFallback.java
@@ -19,10 +19,12 @@
 
 import java.util.Map;
 
+import org.apache.servicecomb.saga.transports.RestTransport;
+
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-class JacksonRestFallback extends JacksonRestOperation implements JacksonFallback {
+class JacksonRestFallback extends JacksonRestOperation implements JacksonFallback<RestTransport> {
 
   private final String type;
 
diff --git a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestOperation.java b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestOperation.java
index c2921689..e9dd762a 100644
--- a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestOperation.java
+++ b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JacksonRestOperation.java
@@ -28,7 +28,7 @@
 import org.apache.servicecomb.saga.core.SagaResponse;
 import org.apache.servicecomb.saga.transports.RestTransport;
 
-class JacksonRestOperation extends RestOperation implements TransportAware {
+class JacksonRestOperation extends RestOperation implements TransportAware<RestTransport> {
 
   @JsonIgnore
   private RestTransport transport;
@@ -38,8 +38,8 @@
   }
 
   @Override
-  public JacksonRestOperation with(TransportFactory transport) {
-    this.transport = transport.restTransport();
+  public JacksonRestOperation with(TransportFactory<RestTransport> transport) {
+    this.transport = transport.getTransport();
     return this;
   }
 
diff --git a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonRestSagaRequest.java b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonRestSagaRequest.java
index 9660eb4e..f91d29b3 100644
--- a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonRestSagaRequest.java
+++ b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonRestSagaRequest.java
@@ -20,6 +20,7 @@
 import static org.apache.servicecomb.saga.format.JacksonFallback.NOP_TRANSPORT_AWARE_FALLBACK;
 
 import org.apache.servicecomb.saga.core.SagaRequestImpl;
+import org.apache.servicecomb.saga.transports.RestTransport;
 import org.apache.servicecomb.saga.transports.TransportFactory;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
@@ -27,7 +28,7 @@
 
 import org.apache.servicecomb.saga.core.Operation;
 
-public class JsonRestSagaRequest extends SagaRequestImpl implements JsonSagaRequest {
+public class JsonRestSagaRequest extends SagaRequestImpl implements JsonSagaRequest<RestTransport> {
 
   private final JacksonRestTransaction transaction;
   private final JacksonRestCompensation compensation;
diff --git a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonSagaRequest.java b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonSagaRequest.java
index 45d39810..a25542f3 100644
--- a/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonSagaRequest.java
+++ b/saga-format/src/main/java/org/apache/servicecomb/saga/format/JsonSagaRequest.java
@@ -19,6 +19,7 @@
 
 import org.apache.servicecomb.saga.core.Operation;
 import org.apache.servicecomb.saga.core.SagaRequest;
+import org.apache.servicecomb.saga.core.Transport;
 import org.apache.servicecomb.saga.transports.TransportFactory;
 
 import com.fasterxml.jackson.annotation.JsonSubTypes;
@@ -33,7 +34,7 @@
 @JsonSubTypes({
     @Type(value = JsonRestSagaRequest.class, name = Operation.TYPE_REST)
 })
-public interface JsonSagaRequest extends SagaRequest {
+public interface JsonSagaRequest<T extends Transport> extends SagaRequest {
 
   JsonSagaRequest with(TransportFactory transportFactory);
 }
diff --git a/saga-format/src/main/java/org/apache/servicecomb/saga/format/TransportAware.java b/saga-format/src/main/java/org/apache/servicecomb/saga/format/TransportAware.java
index edcabf7d..10b353ab 100644
--- a/saga-format/src/main/java/org/apache/servicecomb/saga/format/TransportAware.java
+++ b/saga-format/src/main/java/org/apache/servicecomb/saga/format/TransportAware.java
@@ -17,10 +17,11 @@
 
 package org.apache.servicecomb.saga.format;
 
+import org.apache.servicecomb.saga.core.Transport;
 import org.apache.servicecomb.saga.transports.TransportFactory;
 import org.apache.servicecomb.saga.core.Operation;
 
-interface TransportAware {
+interface TransportAware<T extends Transport> {
 
-  Operation with(TransportFactory transport);
+  Operation with(TransportFactory<T> transport);
 }
diff --git a/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonFromJsonFormatTest.java b/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonFromJsonFormatTest.java
index f2ae7242..aafe1051 100644
--- a/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonFromJsonFormatTest.java
+++ b/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonFromJsonFormatTest.java
@@ -191,7 +191,7 @@ public String apply(SagaRequest sagaRequest) {
 
   @Before
   public void setUp() throws Exception {
-    when(transportFactory.restTransport()).thenReturn(restTransport);
+    when(transportFactory.getTransport()).thenReturn(restTransport);
 
     when(restTransport.with("aaa", "/rest/as", "post", singletonMap("form", singletonMap("foo", "as"))))
         .thenReturn(response11);
diff --git a/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonRestOperationTest.java b/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonRestOperationTest.java
index 9241289e..91f380d7 100644
--- a/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonRestOperationTest.java
+++ b/saga-format/src/test/java/org/apache/servicecomb/saga/format/JacksonRestOperationTest.java
@@ -50,7 +50,7 @@
 
   @Before
   public void setUp() throws Exception {
-    when(transportFactory.restTransport()).thenReturn(transport);
+    when(transportFactory.getTransport()).thenReturn(transport);
     restOperation.with(transportFactory);
   }
 
diff --git a/saga-format/src/test/java/org/apache/servicecomb/saga/format/JsonRestSagaRequestTest.java b/saga-format/src/test/java/org/apache/servicecomb/saga/format/JsonRestSagaRequestTest.java
index 4ef870ce..fe105555 100644
--- a/saga-format/src/test/java/org/apache/servicecomb/saga/format/JsonRestSagaRequestTest.java
+++ b/saga-format/src/test/java/org/apache/servicecomb/saga/format/JsonRestSagaRequestTest.java
@@ -69,7 +69,7 @@ public void blowsUpIfCompensationIsNotSpecified() {
   @SuppressWarnings("unchecked")
   @Test
   public void defaultToNopFallbackIfNotSpecified() {
-    when(transportFactory.restTransport()).thenReturn(restTransport);
+    when(transportFactory.getTransport()).thenReturn(restTransport);
     JsonRestSagaRequest request = newSagaRequest(transaction, compensation, null);
 
     request.with(transportFactory);
diff --git a/saga-format/src/test/java/org/apache/servicecomb/saga/format/SagaEventFormatTest.java b/saga-format/src/test/java/org/apache/servicecomb/saga/format/SagaEventFormatTest.java
index fc509e46..ad6fb625 100644
--- a/saga-format/src/test/java/org/apache/servicecomb/saga/format/SagaEventFormatTest.java
+++ b/saga-format/src/test/java/org/apache/servicecomb/saga/format/SagaEventFormatTest.java
@@ -80,12 +80,12 @@
 
   @Before
   public void setUp() throws Exception {
-    when(transportFactory.restTransport()).thenReturn(restTransport);
+    when(transportFactory.getTransport()).thenReturn(restTransport);
   }
 
   @After
   public void tearDown() throws Exception {
-    verify(transportFactory, times(3)).restTransport();
+    verify(transportFactory, times(3)).getTransport();
   }
 
   @Test


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services