OssEnumd.java 1.2 KB

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