彻底铲除OSSUtil,抽象、修改

This commit is contained in:
2024-12-26 19:34:20 +08:00
parent 473e7080a1
commit 201a6617ac
45 changed files with 765 additions and 317 deletions

View File

@@ -0,0 +1,30 @@
package com.ycwl.basic.storage.starter;
import com.ycwl.basic.storage.StorageFactory;
import com.ycwl.basic.storage.adapters.IStorageAdapter;
import com.ycwl.basic.storage.starter.config.OverallStorageConfig;
import org.springframework.context.annotation.Configuration;
import java.util.Map;
@Configuration
public class StorageAutoConfiguration {
private final OverallStorageConfig config;
public StorageAutoConfiguration(OverallStorageConfig config) {
this.config = config;
if (config != null) {
loadConfig();
}
}
private void loadConfig() {
config.getConfigs().forEach(item -> {
String name = item.getName();
String type = item.getType();
IStorageAdapter adapter = StorageFactory.get(type);
Map<String, String> config = item.getConfig();
adapter.loadConfig(config);
StorageFactory.register(name, adapter);
});
}
}

View File

@@ -0,0 +1,15 @@
package com.ycwl.basic.storage.starter.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
@Component
@ConfigurationProperties(prefix = "storage")
@Data
public class OverallStorageConfig {
private List<StorageConfigItem> configs;
}

View File

@@ -0,0 +1,12 @@
package com.ycwl.basic.storage.starter.config;
import lombok.Data;
import java.util.Map;
@Data
public class StorageConfigItem {
private String name;
private String type;
private Map<String, String> config;
}