OssUploadDownloadFacade.java 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package cc.uncarbon.module.oss.facade;
  2. import cc.uncarbon.framework.core.exception.BusinessException;
  3. import cc.uncarbon.module.oss.model.request.UploadFileAttributeDTO;
  4. import cc.uncarbon.module.oss.model.response.OssFileDownloadReplyBO;
  5. import cc.uncarbon.module.oss.model.response.OssFileInfoBO;
  6. import lombok.NonNull;
  7. /**
  8. * 文件上传下载门面
  9. *
  10. * @author Uncarbon
  11. */
  12. public interface OssUploadDownloadFacade {
  13. /**
  14. * 根据哈希值,查找是否已有文件
  15. */
  16. OssFileInfoBO findByHash(String md5);
  17. /**
  18. * 正常上传文件到服务端
  19. *
  20. * @param fileBytes 文件数据
  21. * @param attr 附加属性
  22. */
  23. OssFileInfoBO upload(byte[] fileBytes, @NonNull UploadFileAttributeDTO attr) throws BusinessException;
  24. /**
  25. * 根据文件ID下载
  26. *
  27. * @throws BusinessException 业务异常,如:文件ID无效;原始文件不存在
  28. */
  29. OssFileDownloadReplyBO downloadById(Long fileInfoId) throws BusinessException;
  30. /**
  31. * 是否为本地存储平台
  32. * @param storagePlatform 存储平台名
  33. */
  34. boolean isLocalPlatform(String storagePlatform);
  35. }