package org.jeecg.common.util.store;

import cn.hutool.core.util.ObjectUtil;
import org.jeecg.common.util.SpringContextUtils;
import org.jeecg.common.util.store.minio.MinioUtil;

import java.util.HashMap;
import java.util.Map;

/**
 * 文件存储工厂类
 */
public class FileStoreFactory {

    private static final Map<String, FileStoreUtil> fileStoreMap = new HashMap<>();

    public static FileStoreUtil get(String type){
        FileStoreUtil fileStoreUtil = fileStoreMap.get(type);
        if(fileStoreUtil == null){
            fileStoreUtil = SpringContextUtils.getBean(MinioUtil.class);
        }
        return fileStoreUtil;
    }

    public static void set(String type, FileStoreUtil fileStoreUtil){
        if (ObjectUtil.isNotEmpty(fileStoreUtil)){
            fileStoreMap.put(type, fileStoreUtil);
        }
    }
}
