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

[incubator-servicecomb-saga] branch SCB-100_async_support updated: SCB-100 minor refactoring

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

seanyinx pushed a commit to branch SCB-100_async_support
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-saga.git


The following commit(s) were added to refs/heads/SCB-100_async_support by this push:
     new 4d9d584  SCB-100 minor refactoring
4d9d584 is described below

commit 4d9d5840cd537e7c64c33055ab120239f5df88ed
Author: seanyinx <se...@huawei.com>
AuthorDate: Thu Jan 4 11:51:27 2018 +0800

    SCB-100 minor refactoring
    
    Signed-off-by: seanyinx <se...@huawei.com>
---
 .../saga/omega/transaction/spring/ExecutorFieldCallback.java        | 6 +++++-
 .../saga/omega/transaction/spring/TransactionInterceptionTest.java  | 3 ++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/omega/omega-spring-tx/src/main/java/org/apache/servicecomb/saga/omega/transaction/spring/ExecutorFieldCallback.java b/omega/omega-spring-tx/src/main/java/org/apache/servicecomb/saga/omega/transaction/spring/ExecutorFieldCallback.java
index 3030fca..5ae949d 100644
--- a/omega/omega-spring-tx/src/main/java/org/apache/servicecomb/saga/omega/transaction/spring/ExecutorFieldCallback.java
+++ b/omega/omega-spring-tx/src/main/java/org/apache/servicecomb/saga/omega/transaction/spring/ExecutorFieldCallback.java
@@ -131,6 +131,10 @@ class ExecutorFieldCallback implements FieldCallback {
 
     @Override
     public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+      return method.invoke(target, augmentRunnablesWithOmegaContext(args));
+    }
+
+    private Object[] augmentRunnablesWithOmegaContext(Object[] args) {
       Object[] augmentedArgs = new Object[args.length];
 
       for (int i = 0; i < args.length; i++) {
@@ -147,7 +151,7 @@ class ExecutorFieldCallback implements FieldCallback {
         }
       }
 
-      return method.invoke(target, augmentedArgs);
+      return augmentedArgs;
     }
 
     private boolean isExecutable(Object arg) {
diff --git a/omega/omega-spring-tx/src/test/java/org/apache/servicecomb/saga/omega/transaction/spring/TransactionInterceptionTest.java b/omega/omega-spring-tx/src/test/java/org/apache/servicecomb/saga/omega/transaction/spring/TransactionInterceptionTest.java
index 26b2de3..3dc8c73 100644
--- a/omega/omega-spring-tx/src/test/java/org/apache/servicecomb/saga/omega/transaction/spring/TransactionInterceptionTest.java
+++ b/omega/omega-spring-tx/src/test/java/org/apache/servicecomb/saga/omega/transaction/spring/TransactionInterceptionTest.java
@@ -217,6 +217,7 @@ public class TransactionInterceptionTest {
     );
   }
 
+  // TODO: 2018/1/4 reactive is not supported yet, omega context won't be updated on shared threads
   @Test
   public void passesOmegaContextThroughReactiveX() throws Exception {
     Flowable.just(user)
@@ -236,9 +237,9 @@ public class TransactionInterceptionTest {
     );
   }
 
+  // TODO: 2018/1/4 actor system is not supported yet
   @Test
   public void passesOmegaContextAmongActors() throws Exception {
-    // TODO: 2018/1/3 if actor system starts before omega context initialized, this test will fail
     ActorSystem actorSystem = ActorSystem.create();
 
     ActorRef actorRef = actorSystem.actorOf(UserServiceActor.props(userService));

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