| | |
| | | @Override |
| | | public Boolean deleteObject(String bucket, String objectKey) { |
| | | try { |
| | | // 检查文件是否存在 |
| | | client.statObject(StatObjectArgs.builder() |
| | | .bucket(bucket) |
| | | .object(objectKey) |
| | | .build()); |
| | | |
| | | // 文件存在,执行删除 |
| | | client.removeObject(RemoveObjectArgs.builder() |
| | | .bucket(bucket) |
| | | .object(objectKey) |
| | | .build()); |
| | | |
| | | log.info("成功删除文件: {}/{}", bucket, objectKey); |
| | | return true; |
| | | } catch (ErrorResponseException e) { |
| | | // 文件不存在的情况 |
| | | log.warn("文件不存在: {}/{}", bucket, objectKey); |
| | | client.removeObject(RemoveObjectArgs.builder().bucket(bucket).object(objectKey).build()); |
| | | } catch (MinioException | NoSuchAlgorithmException | IOException | InvalidKeyException e) { |
| | | log.error("Failed to delete file."); |
| | | e.printStackTrace(); |
| | | return false; |
| | | } catch (Exception e) { |
| | | log.error("删除文件失败: {}/{}", bucket, objectKey, e); |
| | | throw new RuntimeException("删除文件失败: " + e.getMessage(), e); |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | @Override |