Skip to content

Commit 4867dae

Browse files
add code to get uploadPartUrl
1 parent 8bcf0e8 commit 4867dae

File tree

1 file changed

+38
-5
lines changed

1 file changed

+38
-5
lines changed

src/main/java/b2SdkExamples/B2SdkExamples.java

+38-5
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,67 @@
22

33
import com.backblaze.b2.client.B2StorageClient;
44
import com.backblaze.b2.client.B2StorageClientFactory;
5+
import com.backblaze.b2.client.contentSources.B2ByteArrayContentSource;
6+
import com.backblaze.b2.client.contentSources.B2ContentTypes;
57
import com.backblaze.b2.client.exceptions.B2Exception;
6-
import com.backblaze.b2.client.structures.B2Bucket;
7-
import com.backblaze.b2.client.structures.B2ListBucketsResponse;
8+
import com.backblaze.b2.client.structures.*;
89

910
import java.util.List;
11+
import java.util.concurrent.ExecutorService;
12+
import java.util.concurrent.Executors;
1013

1114
public class B2SdkExamples {
1215
private static final String APPLICATION_KEY_ID = "xxx";
1316
private static final String APPLICATION_KEY = "yyy";
1417

18+
19+
1520
private static final String USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36";
1621

22+
private static final int minimumPartSize = 5000000;
23+
private static final byte[] large_file_in_bytes = new byte[minimumPartSize + 1];
24+
1725
public static void main(String... args) throws B2Exception {
1826
System.out.println("Hello world from B2SdkExamples..");
1927
// B2StorageClient client = B2StorageClientFactory.createDefaultFactory().create(USER_AGENT);
2028
//set up B2 CLI
2129
//and then use b2 get-account-info to get applicationKeyId and applicationKey to fill in here and run
2230
B2ListBucketsResponse b2ListBucketsResponse;
23-
try (B2StorageClient b2StorageClient = B2StorageClientFactory.createDefaultFactory().create(APPLICATION_KEY_ID, APPLICATION_KEY, USER_AGENT)) {
24-
b2ListBucketsResponse = b2StorageClient.listBuckets();
31+
try (B2StorageClient b2Client = B2StorageClientFactory.createDefaultFactory().create(APPLICATION_KEY_ID, APPLICATION_KEY, USER_AGENT)) {
32+
b2ListBucketsResponse = b2Client.listBuckets();
2533
List<B2Bucket> buckets = b2ListBucketsResponse.getBuckets();
2634
System.out.println("buckets.size() is: " + buckets.size());
35+
B2Bucket bucketOne = null;
2736
for (B2Bucket b2Bucket : buckets) {
2837
System.out.println("this bucket info is: " + b2Bucket.getBucketInfo());
2938
System.out.println("this bucket getBucketName is: " + b2Bucket.getBucketName());
39+
bucketOne = b2Bucket;
40+
break;
3041
}
31-
String b2AccountId = b2StorageClient.getAccountId();
42+
String b2AccountId = b2Client.getAccountId();
3243
System.out.println("b2AccountId is: " + b2AccountId);
44+
45+
B2FileVersion largeFile = b2Client.startLargeFile(
46+
B2StartLargeFileRequest
47+
.builder(bucketOne.getBucketId(), "this_is_a_large_test_file_jsun", "text/plain")
48+
.build()
49+
);
50+
B2UploadPartUrlResponse uploadPartUrl = b2Client.getUploadPartUrl(B2GetUploadPartUrlRequest.builder(largeFile.getFileId()).build());
51+
System.out.println("uploadPartUrl.getFileId() is: " + uploadPartUrl.getFileId());
52+
System.out.println("uploadPartUrl.getUploadUrl() is: " + uploadPartUrl.getUploadUrl());
53+
// example output:
54+
// uploadPartUrl.getFileId() is: 4_zc0c2ee6e6dccd2d788960d17_f231f3059ce9d1672_d20231118_m042524_c004_v0402007_t0004_u01700281524855
55+
// uploadPartUrl.getUploadUrl() is: https://pod-040-2007-12.backblaze.com/b2api/v2/b2_upload_part/4_zc0c2ee6e6dccd2d788960d17_f231f3059ce9d1672_d20231118_m042524_c004_v0402007_t0004_u01700281524855/0014
56+
57+
final B2UploadFileRequest request = B2UploadFileRequest.builder(
58+
bucketOne.getBucketId(),
59+
"largeFile",
60+
B2ContentTypes.TEXT_PLAIN,
61+
B2ByteArrayContentSource.build(large_file_in_bytes)
62+
).build();
63+
ExecutorService executor = Executors.newScheduledThreadPool(15);
64+
B2FileVersion uploaded = b2Client.uploadLargeFile(request, executor);
65+
System.out.println("uploaded.getLargeFileSha1OrNull(): " + uploaded.getLargeFileSha1OrNull());
3366
}
3467
System.out.println("Finished running in main method.");
3568
}

0 commit comments

Comments
 (0)