From 89956873d7ade2d1cc04c9fc691ad63812f196f7 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 20 十二月 2021 15:14:34 +0800
Subject: [PATCH] redis 增加配置控制是否调用config命令

---
 src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepliveTimeoutListener.java             |   13 +++++++++++--
 src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java                |    2 ++
 src/main/java/com/genersoft/iot/vmp/conf/UserSetup.java                                            |   10 ++++++++++
 src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java                |   11 +++++++++--
 src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepaliveTimeoutListenerForPlatform.java |   13 +++++++++++--
 src/main/resources/all-application.yml                                                             |    2 ++
 6 files changed, 45 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/conf/UserSetup.java b/src/main/java/com/genersoft/iot/vmp/conf/UserSetup.java
index 140295e..8a4c021 100644
--- a/src/main/java/com/genersoft/iot/vmp/conf/UserSetup.java
+++ b/src/main/java/com/genersoft/iot/vmp/conf/UserSetup.java
@@ -27,6 +27,8 @@
 
     private Boolean logInDatebase = Boolean.TRUE;
 
+    private Boolean redisConfig = Boolean.TRUE;
+
     private String serverId = "000000";
 
     private String thirdPartyGBIdReg = "[\\s\\S]*";
@@ -124,4 +126,12 @@
     public void setThirdPartyGBIdReg(String thirdPartyGBIdReg) {
         this.thirdPartyGBIdReg = thirdPartyGBIdReg;
     }
+
+    public Boolean getRedisConfig() {
+        return redisConfig;
+    }
+
+    public void setRedisConfig(Boolean redisConfig) {
+        this.redisConfig = redisConfig;
+    }
 }
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepaliveTimeoutListenerForPlatform.java b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepaliveTimeoutListenerForPlatform.java
index 0881568..8bbf03e 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepaliveTimeoutListenerForPlatform.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepaliveTimeoutListenerForPlatform.java
@@ -3,7 +3,9 @@
 import com.genersoft.iot.vmp.conf.UserSetup;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.InitializingBean;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.DependsOn;
 import org.springframework.data.redis.connection.Message;
 import org.springframework.data.redis.listener.KeyExpirationEventMessageListener;
 import org.springframework.data.redis.listener.RedisMessageListenerContainer;
@@ -28,10 +30,17 @@
 	@Autowired
 	private UserSetup userSetup;
 
+    @Override
+    public void init() {
+        if (!userSetup.getRedisConfig()) {
+            // 閰嶇疆springboot榛樿Config涓虹┖锛屽嵆涓嶈搴旂敤鍘讳慨鏀箁edis鐨勯粯璁ら厤缃紝鍥犱负Redis鏈嶅姟鍑轰簬瀹夊叏浼氱鐢–ONFIG鍛戒护缁欒繙绋嬬敤鎴蜂娇鐢�
+            setKeyspaceNotificationsConfigParameter("");
+        }
+        super.init();
+    }
+
     public KeepaliveTimeoutListenerForPlatform(RedisMessageListenerContainer listenerContainer) {
         super(listenerContainer);
-        // 閰嶇疆springboot榛樿Config涓虹┖锛屽嵆涓嶈搴旂敤鍘讳慨鏀箁edis鐨勯粯璁ら厤缃紝鍥犱负Redis鏈嶅姟鍑轰簬瀹夊叏浼氱鐢–ONFIG鍛戒护缁欒繙绋嬬敤鎴蜂娇鐢�
-        setKeyspaceNotificationsConfigParameter("");
     }
 
 
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepliveTimeoutListener.java b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepliveTimeoutListener.java
index 95a8ba9..7b3cb58 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepliveTimeoutListener.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/KeepliveTimeoutListener.java
@@ -4,6 +4,8 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.DependsOn;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.data.redis.connection.Message;
 import org.springframework.data.redis.listener.KeyExpirationEventMessageListener;
 import org.springframework.data.redis.listener.RedisMessageListenerContainer;
@@ -28,10 +30,17 @@
 	@Autowired
 	private UserSetup userSetup;
 
+    @Override
+    public void init() {
+        if (!userSetup.getRedisConfig()) {
+            // 閰嶇疆springboot榛樿Config涓虹┖锛屽嵆涓嶈搴旂敤鍘讳慨鏀箁edis鐨勯粯璁ら厤缃紝鍥犱负Redis鏈嶅姟鍑轰簬瀹夊叏浼氱鐢–ONFIG鍛戒护缁欒繙绋嬬敤鎴蜂娇鐢�
+            setKeyspaceNotificationsConfigParameter("");
+        }
+        super.init();
+    }
+
 	public KeepliveTimeoutListener(RedisMessageListenerContainer listenerContainer) {
 		super(listenerContainer);
-        // 閰嶇疆springboot榛樿Config涓虹┖锛屽嵆涓嶈搴旂敤鍘讳慨鏀箁edis鐨勯粯璁ら厤缃紝鍥犱负Redis鏈嶅姟鍑轰簬瀹夊叏浼氱鐢–ONFIG鍛戒护缁欒繙绋嬬敤鎴蜂娇鐢�
-        setKeyspaceNotificationsConfigParameter("");
 	}
 
 	/**
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java
index 0f5604c..9751915 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java
@@ -5,6 +5,8 @@
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationListener;
+import org.springframework.context.annotation.DependsOn;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Component;
 
 import com.genersoft.iot.vmp.common.VideoManagerConstants;
diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java
index eaf8bbb..3fc6a3c 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/event/ZLMKeepliveTimeoutListener.java
@@ -37,10 +37,17 @@
 	@Autowired
 	private IMediaServerService mediaServerService;
 
+    @Override
+    public void init() {
+        if (!userSetup.getRedisConfig()) {
+            // 閰嶇疆springboot榛樿Config涓虹┖锛屽嵆涓嶈搴旂敤鍘讳慨鏀箁edis鐨勯粯璁ら厤缃紝鍥犱负Redis鏈嶅姟鍑轰簬瀹夊叏浼氱鐢–ONFIG鍛戒护缁欒繙绋嬬敤鎴蜂娇鐢�
+            setKeyspaceNotificationsConfigParameter("");
+        }
+        super.init();
+    }
+
 	public ZLMKeepliveTimeoutListener(RedisMessageListenerContainer listenerContainer) {
 		super(listenerContainer);
-        // 閰嶇疆springboot榛樿Config涓虹┖锛屽嵆涓嶈搴旂敤鍘讳慨鏀箁edis鐨勯粯璁ら厤缃紝鍥犱负Redis鏈嶅姟鍑轰簬瀹夊叏浼氱鐢–ONFIG鍛戒护缁欒繙绋嬬敤鎴蜂娇鐢�
-//        setKeyspaceNotificationsConfigParameter("");
 	}
 
 	/**
diff --git a/src/main/resources/all-application.yml b/src/main/resources/all-application.yml
index 2058742..a9d7a08 100644
--- a/src/main/resources/all-application.yml
+++ b/src/main/resources/all-application.yml
@@ -156,6 +156,8 @@
     wait-track: false
     # 鏄惁寮�鍚帴鍙i壌鏉�
     interface-authentication: true
+    # 鑷姩閰嶇疆redis 鍙互杩囨湡浜嬩欢
+    redis-config: true
     # 鎺ュ彛閴存潈渚嬪鐨勬帴鍙�, 鍗充笉杩涜鎺ュ彛閴存潈鐨勬帴鍙�,灏介噺璇︾粏涔﹀啓锛屽敖閲忎笉鐢�/**锛岃嚦灏戜袱绾х洰褰�
     interface-authentication-excludes:
         - /api/v1/**

--
Gitblit v1.8.0