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/servicecomb-pack.git

commit f3c76ddbdc6c12acbb09a39e6a2b833f1902f0db
Author: Lei Zhang <[email protected]>
AuthorDate: Fri Jul 26 15:02:09 2019 +0800

    SCB-1369 Default non-persistent transaction data
---
 .../pack/alpha/fsm/FsmAutoConfiguration.java       | 35 +++++++---------------
 .../fsm/repository/NoneTransactionRepository.java  | 33 ++++++++++++++++++++
 2 files changed, 44 insertions(+), 24 deletions(-)

diff --git 
a/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/FsmAutoConfiguration.java
 
b/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/FsmAutoConfiguration.java
index 28e517b..b9a144e 100644
--- 
a/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/FsmAutoConfiguration.java
+++ 
b/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/FsmAutoConfiguration.java
@@ -24,17 +24,14 @@ import akka.actor.ActorSystem;
 import com.typesafe.config.Config;
 import com.typesafe.config.ConfigFactory;
 import java.util.Map;
-<<<<<<< HEAD
-
-import org.apache.servicecomb.pack.alpha.core.NodeStatus;
-=======
 import javax.annotation.PostConstruct;
->>>>>>> SCB-1369 Save transaction data to Elasticsearch after SagaActor stopped
+import org.apache.servicecomb.pack.alpha.core.NodeStatus;
 import org.apache.servicecomb.pack.alpha.fsm.channel.ActiveMQActorEventChannel;
 import org.apache.servicecomb.pack.alpha.fsm.channel.redis.MessagePublisher;
 import 
org.apache.servicecomb.pack.alpha.fsm.channel.redis.RedisMessagePublisher;
 import 
org.apache.servicecomb.pack.alpha.fsm.channel.redis.RedisMessageSubscriber;
 import org.apache.servicecomb.pack.alpha.fsm.metrics.MetricsService;
+import 
org.apache.servicecomb.pack.alpha.fsm.repository.NoneTransactionRepository;
 import 
org.apache.servicecomb.pack.alpha.fsm.repository.elasticsearch.ElasticsearchTransactionRepository;
 import org.apache.servicecomb.pack.alpha.fsm.repository.TransactionRepository;
 import 
org.apache.servicecomb.pack.alpha.fsm.repository.channel.MemoryTransactionRepositoryChannel;
@@ -46,7 +43,6 @@ import 
org.apache.servicecomb.pack.alpha.fsm.channel.MemoryActorEventChannel;
 import org.apache.servicecomb.pack.alpha.fsm.channel.RedisActorEventChannel;
 import org.apache.servicecomb.pack.alpha.fsm.sink.SagaActorEventSender;
 import 
org.apache.servicecomb.pack.alpha.fsm.spring.integration.akka.AkkaConfigPropertyAdapter;
-import 
org.apache.servicecomb.pack.alpha.fsm.spring.integration.eventbus.EventSubscribeBeanPostProcessor;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
@@ -58,7 +54,6 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.core.env.ConfigurableEnvironment;
-<<<<<<< HEAD
 import org.springframework.data.redis.connection.RedisConnection;
 import org.springframework.data.redis.connection.RedisConnectionFactory;
 import org.springframework.data.redis.core.RedisTemplate;
@@ -68,15 +63,13 @@ import 
org.springframework.data.redis.listener.adapter.MessageListenerAdapter;
 import org.springframework.data.redis.serializer.GenericToStringSerializer;
 import 
org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
 import org.springframework.data.redis.serializer.StringRedisSerializer;
-=======
 import org.springframework.data.elasticsearch.core.ElasticsearchTemplate;
->>>>>>> SCB-1369 Save transaction data to Elasticsearch after SagaActor stopped
 
 @Configuration
 @ConditionalOnProperty(value = {"alpha.feature.akka.enabled"})
 public class FsmAutoConfiguration {
 
-  @Value("${alpha.feature.akka.elasticsearch.memory.size:-1}")
+  @Value("${alpha.feature.akka.channel.memory.size:-1}")
   int memoryEventChannelMemorySize;
 
   
@Value("${alpha.feature.akka.transaction.repository.elasticsearch.batchSize:100}")
@@ -114,11 +107,6 @@ public class FsmAutoConfiguration {
   }
 
   @Bean
-  public EventSubscribeBeanPostProcessor eventSubscribeBeanPostProcessor() {
-    return new EventSubscribeBeanPostProcessor();
-  }
-
-  @Bean
   public MetricsService metricsService() {
     return new MetricsService();
   }
@@ -130,7 +118,6 @@ public class FsmAutoConfiguration {
 
   @Bean
   @ConditionalOnMissingBean(ActorEventChannel.class)
-  @ConditionalOnProperty(value = "alpha.feature.akka.channel.type", 
havingValue = "memory", matchIfMissing = true)
   public ActorEventChannel memoryEventChannel(ActorEventSink actorEventSink,
       MetricsService metricsService) {
     return new MemoryActorEventChannel(actorEventSink, 
memoryEventChannelMemorySize,
@@ -153,7 +140,6 @@ public class FsmAutoConfiguration {
 
   @Bean
   @ConditionalOnProperty(value = "alpha.feature.akka.channel.type", 
havingValue = "redis")
-<<<<<<< HEAD
   public ActorEventChannel redisEventChannel(ActorEventSink actorEventSink, 
MetricsService metricsService, @Lazy RedisMessagePublisher 
redisMessagePublisher){
     return new RedisActorEventChannel(actorEventSink, metricsService, 
redisMessagePublisher);
   }
@@ -211,15 +197,16 @@ public class FsmAutoConfiguration {
       }
       return new ChannelTopic(topic);
     }
-=======
-  public ActorEventChannel redisEventChannel(ActorEventSink actorEventSink,
-      MetricsService metricsService) {
-    return new RedisActorEventChannel(actorEventSink, metricsService);
->>>>>>> SCB-1369 Save transaction data to Elasticsearch after SagaActor stopped
   }
 
   @Bean
-  @ConditionalOnProperty(value = 
"alpha.feature.akka.transcation.repository.type", havingValue = 
"elasticsearch", matchIfMissing = true)
+  @ConditionalOnMissingBean(TransactionRepository.class)
+  public TransactionRepository transcationRepository() {
+    return new NoneTransactionRepository();
+  }
+
+  @Bean
+  @ConditionalOnProperty(value = 
"alpha.feature.akka.transaction.repository.type", havingValue = "elasticsearch")
   public TransactionRepository transcationRepository(MetricsService 
metricsService,
       ElasticsearchTemplate template) {
     return new ElasticsearchTransactionRepository(template, metricsService,
@@ -228,7 +215,7 @@ public class FsmAutoConfiguration {
 
   @Bean
   @ConditionalOnMissingBean(TransactionRepositoryChannel.class)
-  @ConditionalOnProperty(value = 
"alpha.feature.akka.transcation.repository.channel.type", havingValue = 
"memory", matchIfMissing = true)
+  @ConditionalOnProperty(value = 
"alpha.feature.akka.transaction.repository.channel.type", havingValue = 
"memory", matchIfMissing = true)
   TransactionRepositoryChannel 
memoryTransactionRepositoryChannel(TransactionRepository repository,
       MetricsService metricsService) {
     return new MemoryTransactionRepositoryChannel(repository, 
memoryTransactionRepositoryChannelSize,
diff --git 
a/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/repository/NoneTransactionRepository.java
 
b/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/repository/NoneTransactionRepository.java
new file mode 100644
index 0000000..c0cc566
--- /dev/null
+++ 
b/alpha/alpha-fsm/src/main/java/org/apache/servicecomb/pack/alpha/fsm/repository/NoneTransactionRepository.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.servicecomb.pack.alpha.fsm.repository;
+
+import java.lang.invoke.MethodHandles;
+import 
org.apache.servicecomb.pack.alpha.fsm.repository.model.GloablTransaction;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class NoneTransactionRepository implements TransactionRepository {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+
+  @Override
+  public void send(GloablTransaction transaction) {
+    LOG.warn("Please configure 
alpha.feature.akka.transaction.repository.type=elasticsearch to use 
elasticsearch to persist transaction data.");
+  }
+}

Reply via email to