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/08/23 07:55:31 UTC
[incubator-servicecomb-saga] 02/02: SCB-867 Adapting Rest json to
the generalization of TransportFactory
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
commit e8b46be0855d819fc300f2f3fb8ba624e83e9111
Author: KomachiSion <26...@qq.com>
AuthorDate: Thu Aug 23 14:43:56 2018 +0800
SCB-867 Adapting Rest json to the generalization of TransportFactory
---
.../java/org/apache/servicecomb/saga/format/JacksonFallback.java | 3 ++-
.../org/apache/servicecomb/saga/format/JacksonRestFallback.java | 4 +++-
.../org/apache/servicecomb/saga/format/JacksonRestOperation.java | 6 +++---
.../org/apache/servicecomb/saga/format/JsonRestSagaRequest.java | 3 ++-
.../java/org/apache/servicecomb/saga/format/JsonSagaRequest.java | 3 ++-
.../java/org/apache/servicecomb/saga/format/TransportAware.java | 5 +++--
.../apache/servicecomb/saga/format/JacksonFromJsonFormatTest.java | 2 +-
.../apache/servicecomb/saga/format/JacksonRestOperationTest.java | 2 +-
.../org/apache/servicecomb/saga/format/JsonRestSagaRequestTest.java | 2 +-
.../org/apache/servicecomb/saga/format/SagaEventFormatTest.java | 4 ++--
10 files changed, 20 insertions(+), 14 deletions(-)
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 a70aafb..c6cbd47 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 @@ package org.apache.servicecomb.saga.format;
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 @@ import org.apache.servicecomb.saga.format.JacksonFallback.NopJacksonFallback;
@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 35c54fe..92db35a 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 @@ package org.apache.servicecomb.saga.format;
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 c292168..e9dd762 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.RestOperation;
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 @@ class JacksonRestOperation extends RestOperation implements TransportAware {
}
@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 9660eb4..f91d29b 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 @@ package org.apache.servicecomb.saga.format;
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 com.fasterxml.jackson.annotation.JsonProperty;
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 45d3981..a25542f 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 @@ package org.apache.servicecomb.saga.format;
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 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo;
@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 edcabf7..10b353a 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 f2ae724..aafe105 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 class JacksonFromJsonFormatTest {
@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 9241289..91f380d 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 @@ public class JacksonRestOperationTest {
@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 4ef870c..fe10555 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 class JsonRestSagaRequestTest {
@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 fc509e4..ad6fb62 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 @@ public class SagaEventFormatTest {
@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