From 3b6ced8185a19c9377aa2a059142f15e3b23cd88 Mon Sep 17 00:00:00 2001
From: bleachtred <bleachtred@163.com>
Date: 星期一, 27 三月 2023 16:35:12 +0800
Subject: [PATCH] update 优化BaseMapperPlus接口 去除 @param <M> Mapper 泛型

---
 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/factory/OssFactory.java |   42 +++++++++++++-----------------------------
 1 files changed, 13 insertions(+), 29 deletions(-)

diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/factory/OssFactory.java b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/factory/OssFactory.java
index 885c7be..82467ef 100644
--- a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/factory/OssFactory.java
+++ b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/factory/OssFactory.java
@@ -25,21 +25,6 @@
     private static final Map<String, OssClient> CLIENT_CACHE = new ConcurrentHashMap<>();
 
     /**
-     * 鍒濆鍖栧伐鍘�
-     */
-    public static void init() {
-        log.info("鍒濆鍖朞SS宸ュ巶");
-        RedisUtils.subscribe(OssConstant.DEFAULT_CONFIG_KEY, String.class, configKey -> {
-            OssClient client = getClient(configKey);
-            // 鏈垵濮嬪寲涓嶅鐞�
-            if (client != null) {
-                refresh(configKey);
-                log.info("璁㈤槄鍒锋柊OSS閰嶇疆 => " + configKey);
-            }
-        });
-    }
-
-    /**
      * 鑾峰彇榛樿瀹炰緥
      */
     public static OssClient instance() {
@@ -55,25 +40,24 @@
      * 鏍规嵁绫诲瀷鑾峰彇瀹炰緥
      */
     public static OssClient instance(String configKey) {
-        OssClient client = getClient(configKey);
-        if (client == null) {
-            refresh(configKey);
-            return getClient(configKey);
-        }
-        return client;
-    }
-
-    private static void refresh(String configKey) {
         String json = CacheUtils.get(CacheNames.SYS_OSS_CONFIG, configKey);
         if (json == null) {
             throw new OssException("绯荤粺寮傚父, '" + configKey + "'閰嶇疆淇℃伅涓嶅瓨鍦�!");
         }
         OssProperties properties = JsonUtils.parseObject(json, OssProperties.class);
-        CLIENT_CACHE.put(configKey, new OssClient(configKey, properties));
-    }
-
-    private static OssClient getClient(String configKey) {
-        return CLIENT_CACHE.get(configKey);
+        OssClient client = CLIENT_CACHE.get(configKey);
+        if (client == null) {
+            CLIENT_CACHE.put(configKey, new OssClient(configKey, properties));
+            log.info("鍒涘缓OSS瀹炰緥 key => {}", configKey);
+            return CLIENT_CACHE.get(configKey);
+        }
+        // 閰嶇疆涓嶇浉鍚屽垯閲嶆柊鏋勫缓
+        if (!client.checkPropertiesSame(properties)) {
+            CLIENT_CACHE.put(configKey, new OssClient(configKey, properties));
+            log.info("閲嶈浇OSS瀹炰緥 key => {}", configKey);
+            return CLIENT_CACHE.get(configKey);
+        }
+        return client;
     }
 
 }

--
Gitblit v1.9.3