update 优化 pr215 解决一些问题

This commit is contained in:
疯狂的狮子Li
2022-08-14 01:49:05 +08:00
parent 56d209cd20
commit f9a9431958
11 changed files with 54 additions and 42 deletions

View File

@ -11,19 +11,9 @@ import java.util.List;
public interface OssConstant {
/**
* OSS模块KEY
* 默认配置KEY
*/
String SYS_OSS_KEY = "sys_oss:";
/**
* 对象存储配置KEY
*/
String OSS_CONFIG_KEY = "OssConfig";
/**
* 缓存配置KEY
*/
String CACHE_CONFIG_KEY = SYS_OSS_KEY + OSS_CONFIG_KEY;
String DEFAULT_CONFIG_KEY = "sys_oss:default_config";
/**
* 预览列表资源开关Key

View File

@ -3,7 +3,7 @@ package com.ruoyi.oss.factory;
import com.ruoyi.common.constant.CacheNames;
import com.ruoyi.common.utils.JsonUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.cache.CacheUtils;
import com.ruoyi.common.utils.redis.CacheUtils;
import com.ruoyi.common.utils.redis.RedisUtils;
import com.ruoyi.oss.constant.OssConstant;
import com.ruoyi.oss.core.OssClient;
@ -29,7 +29,7 @@ public class OssFactory {
*/
public static void init() {
log.info("初始化OSS工厂");
RedisUtils.subscribe(OssConstant.CACHE_CONFIG_KEY, String.class, configKey -> {
RedisUtils.subscribe(OssConstant.DEFAULT_CONFIG_KEY, String.class, configKey -> {
OssClient client = getClient(configKey);
// 未初始化不处理
if (client != null) {
@ -44,7 +44,7 @@ public class OssFactory {
*/
public static OssClient instance() {
// 获取redis 默认类型
String configKey = (String) CacheUtils.get(CacheNames.SYS_OSS_CONFIG, OssConstant.OSS_CONFIG_KEY);
String configKey = RedisUtils.getCacheObject(OssConstant.DEFAULT_CONFIG_KEY);
if (StringUtils.isEmpty(configKey)) {
throw new OssException("文件存储服务类型无法找到!");
}
@ -64,11 +64,11 @@ public class OssFactory {
}
private static void refresh(String configKey) {
Object json = CacheUtils.get(CacheNames.SYS_OSS_CONFIG, configKey);
OssProperties properties = JsonUtils.parseObject(json.toString(), OssProperties.class);
if (properties == null) {
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));
}