唐耀东
2021-12-01 ac56d8fbfbe82096da31ed9f73bc29308284edfe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package com.ruoyi.oss.enumd;
 
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.oss.service.impl.AliyunOssStrategy;
import com.ruoyi.oss.service.impl.MinioOssStrategy;
import com.ruoyi.oss.service.impl.QcloudOssStrategy;
import com.ruoyi.oss.service.impl.QiniuOssStrategy;
import lombok.AllArgsConstructor;
import lombok.Getter;
 
/**
 * 对象存储服务商枚举
 *
 * @author Lion Li
 */
@Getter
@AllArgsConstructor
public enum OssEnumd {
 
    /**
     * 七牛云
     */
    QINIU("qiniu", QiniuOssStrategy.class),
 
    /**
     * 阿里云
     */
    ALIYUN("aliyun", AliyunOssStrategy.class),
 
    /**
     * 腾讯云
     */
    QCLOUD("qcloud", QcloudOssStrategy.class),
 
    /**
     * minio
     */
    MINIO("minio", MinioOssStrategy.class);
 
    private final String value;
 
    private final Class<?> serviceClass;
 
    public static Class<?> getServiceClass(String value) {
        for (OssEnumd clazz : values()) {
            if (clazz.getValue().equals(value)) {
                return clazz.getServiceClass();
            }
        }
        return null;
    }
 
    public static String getServiceName(String value) {
        for (OssEnumd clazz : values()) {
            if (clazz.getValue().equals(value)) {
                return StringUtils.uncapitalize(clazz.getServiceClass().getSimpleName());
            }
        }
        return null;
    }
 
 
}