From fe06b37293f275884dfa50dedfa899a7e94ebf28 Mon Sep 17 00:00:00 2001 From: xuty <xty50337@hotmail.com> Date: Sun, 29 Mar 2020 19:51:15 +0800 Subject: [PATCH] finish removeIncompleteUpload --- README.md | 5 ++++- lib/src/minio.dart | 19 ++++++++++++++++++- lib/src/minio_uploader.dart | 2 +- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 836c683..cb1ff60 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,8 @@ Created from templates made available by Stagehand under a BSD-style | `listIncompleteUploads` | `statObject` | | | | | `removeObject` | | | | | `removeObjects` | | | -| | removeIncompleteUpload | | | +| | `removeIncompleteUpload`| | | + ## Usage @@ -35,3 +36,5 @@ main() { Please file feature requests and bugs at the [issue tracker][tracker]. [tracker]: http://example.com/issues/replaceme + +[link text itself]: http://www.reddit.com \ No newline at end of file diff --git a/lib/src/minio.dart b/lib/src/minio.dart index 134dc08..d3551de 100644 --- a/lib/src/minio.dart +++ b/lib/src/minio.dart @@ -351,7 +351,7 @@ class Minio { return result; } - Future<String> findUploadID(String bucket, String object) async { + Future<String> findUploadId(String bucket, String object) async { MinioInvalidBucketNameError.check(bucket); MinioInvalidObjectNameError.check(object); @@ -817,6 +817,23 @@ class Minio { _regionMap.remove(bucket); } + Future<void> removeIncompleteUpload(String bucket, String object) async { + MinioInvalidBucketNameError.check(bucket); + MinioInvalidObjectNameError.check(object); + + final uploadId = await findUploadId(bucket, object); + if (uploadId == null) return; + + final resp = await _client.request( + method: 'DELETE', + bucket: bucket, + object: object, + queries: {'uploadId': uploadId}, + ); + + validate(resp, expect: 204); + } + Future<void> removeObject(String bucket, String object) async { MinioInvalidBucketNameError.check(bucket); MinioInvalidObjectNameError.check(object); diff --git a/lib/src/minio_uploader.dart b/lib/src/minio_uploader.dart index 2487c20..8c88c16 100644 --- a/lib/src/minio_uploader.dart +++ b/lib/src/minio_uploader.dart @@ -118,7 +118,7 @@ class MinioUploader implements StreamConsumer<List<int>> { } Future<void> initMultipartUpload() async { - uploadId = await minio.findUploadID(bucket, object); + uploadId = await minio.findUploadId(bucket, object); if (uploadId == null) { await minio.initiateNewMultipartUpload(bucket, object, metadata); -- GitLab