diff --git a/src/main/java/com/qiniu/http/Client.java b/src/main/java/com/qiniu/http/Client.java index 193998afb..38346be45 100755 --- a/src/main/java/com/qiniu/http/Client.java +++ b/src/main/java/com/qiniu/http/Client.java @@ -394,6 +394,10 @@ private Response patch(String url, RequestBody body, StringMap headers) throws Q return send(requestBuilder, headers); } + public Response head(String url, StringMap headers) throws QiniuException { + Request.Builder requestBuilder = new Request.Builder().url(url).head(); + return send(requestBuilder, headers); + } public Response send(final Request.Builder requestBuilder, StringMap headers) throws QiniuException { if (headers != null) { diff --git a/src/main/java/com/qiniu/storage/BucketManager.java b/src/main/java/com/qiniu/storage/BucketManager.java index 6be0c5646..903b7ecaa 100644 --- a/src/main/java/com/qiniu/storage/BucketManager.java +++ b/src/main/java/com/qiniu/storage/BucketManager.java @@ -1332,6 +1332,10 @@ private void setExecBucket(String bucket) { public String execBucket() { return execBucket; } + + public int size() { + return ops.size(); + } } /** diff --git a/src/test/java/test/com/qiniu/storage/BucketManagerTest.java b/src/test/java/test/com/qiniu/storage/BucketManagerTest.java new file mode 100644 index 000000000..f91508f76 --- /dev/null +++ b/src/test/java/test/com/qiniu/storage/BucketManagerTest.java @@ -0,0 +1,27 @@ +package test.com.qiniu.storage; + +import com.qiniu.storage.BucketManager; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Tag; +import org.junit.jupiter.api.Test; + +public class BucketManagerTest { + @Test + @Tag("UnitTest") + public void testBatchOperationsSize() { + BucketManager.BatchOperations batchOperations = new BucketManager.BatchOperations(); + Assertions.assertEquals(0, batchOperations.size()); + + batchOperations.addDeleteOp("bucket1", "1", "2"); + Assertions.assertEquals(2, batchOperations.size()); + + batchOperations.addCopyOp( + "fromBucket", "fromFileKey", + "toBucket", "toFileKey" + ); + Assertions.assertEquals(3, batchOperations.size()); + + batchOperations.addRenameOp("fromBucket", "fromFileKey", "toFileKey"); + Assertions.assertEquals(4, batchOperations.size()); + } +}