|
|
@@ -31,6 +31,7 @@ import org.jetlinks.core.server.session.DeviceSessionManager;
|
|
|
import org.jetlinks.core.spi.ServiceContext;
|
|
|
import org.jetlinks.supports.cluster.ClusterDeviceRegistry;
|
|
|
import org.jetlinks.supports.cluster.redis.RedisClusterManager;
|
|
|
+import org.jetlinks.supports.config.ClusterConfigStorageManager;
|
|
|
import org.jetlinks.supports.config.EventBusStorageManager;
|
|
|
import org.jetlinks.supports.event.BrokerEventBus;
|
|
|
import org.jetlinks.supports.protocol.ServiceLoaderProtocolSupports;
|
|
|
@@ -52,6 +53,8 @@ import org.springframework.boot.web.server.WebServerFactoryCustomizer;
|
|
|
import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
import org.springframework.context.annotation.Primary;
|
|
|
+import org.springframework.data.redis.cache.RedisCacheManager;
|
|
|
+import org.springframework.data.redis.connection.RedisConnectionFactory;
|
|
|
import org.springframework.data.redis.core.ReactiveRedisOperations;
|
|
|
import org.springframework.data.redis.core.ReactiveRedisTemplate;
|
|
|
|
|
|
@@ -116,11 +119,19 @@ public class JetLinksConfiguration {
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
+ @Bean
|
|
|
+ @ConditionalOnProperty(name = "jetlinks.cluster",havingValue = "true")
|
|
|
+ public ClusterConfigStorageManager clusterEventBusStorageManager(ClusterManager clusterManager, EventBus eventBus) {
|
|
|
+ return new ClusterConfigStorageManager(clusterManager);
|
|
|
+ }
|
|
|
+
|
|
|
@Bean
|
|
|
+ @ConditionalOnProperty(name = "jetlinks.cluster",havingValue = "false")
|
|
|
public EventBusStorageManager eventBusStorageManager(ClusterManager clusterManager, EventBus eventBus) {
|
|
|
return new EventBusStorageManager(clusterManager,
|
|
|
eventBus,
|
|
|
- () -> CaffeinatedGuava.build(Caffeine.newBuilder()));
|
|
|
+ () -> CaffeinatedGuava.build(Caffeine.newBuilder()));
|
|
|
}
|
|
|
|
|
|
@Bean(initMethod = "startup")
|