IOssStrategy.java 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package com.ruoyi.oss.service;
  2. import com.ruoyi.oss.entity.UploadResult;
  3. import com.ruoyi.oss.enumd.OssEnumd;
  4. import java.io.InputStream;
  5. /**
  6. * 对象存储策略
  7. *
  8. * @author Lion Li
  9. */
  10. public interface IOssStrategy {
  11. /**
  12. * 创建存储桶
  13. */
  14. void createBucket();
  15. /**
  16. * 获取服务商类型
  17. * @return 对象存储服务商枚举
  18. */
  19. OssEnumd getServiceType();
  20. /**
  21. * 文件上传
  22. *
  23. * @param data 文件字节数组
  24. * @param path 文件路径,包含文件名
  25. * @param contentType 文件类型
  26. * @return 返回http地址
  27. */
  28. UploadResult upload(byte[] data, String path, String contentType);
  29. /**
  30. * 文件删除
  31. *
  32. * @param path 文件路径,包含文件名
  33. */
  34. void delete(String path);
  35. /**
  36. * 文件上传
  37. *
  38. * @param data 文件字节数组
  39. * @param suffix 后缀
  40. * @param contentType 文件类型
  41. * @return 返回http地址
  42. */
  43. UploadResult uploadSuffix(byte[] data, String suffix, String contentType);
  44. /**
  45. * 文件上传
  46. *
  47. * @param inputStream 字节流
  48. * @param path 文件路径,包含文件名
  49. * @param contentType 文件类型
  50. * @return 返回http地址
  51. */
  52. UploadResult upload(InputStream inputStream, String path, String contentType);
  53. /**
  54. * 文件上传
  55. *
  56. * @param inputStream 字节流
  57. * @param suffix 后缀
  58. * @param contentType 文件类型
  59. * @return 返回http地址
  60. */
  61. UploadResult uploadSuffix(InputStream inputStream, String suffix, String contentType);
  62. }