From e46b57cd83f81806d0bfe2ce8993291057f089ff Mon Sep 17 00:00:00 2001 From: Frank Natividad Date: Wed, 27 Sep 2017 08:29:28 -0700 Subject: [PATCH 1/4] Update download requester pays sample --- .../examples/storage/snippets/StorageSnippets.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java index c1d1016d9297..3bd5e7a2f9c3 100644 --- a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java +++ b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java @@ -66,6 +66,7 @@ import java.net.URL; import java.nio.ByteBuffer; import java.nio.file.Path; +import java.nio.file.Paths; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -1125,20 +1126,19 @@ public void downloadFileUsingRequesterPays(String projectId, String bucketName, // String srcFilename = "file.txt"; // The path to which the file should be downloaded - // String destFilePath = "/local/path/to/file.txt"; + // Path destFilePath = Paths.get("/local/path/to/file.txt"); // Instantiate a Google Cloud Storage client Storage storage = StorageOptions.getDefaultInstance().getService(); + // Set billing project BlobSourceOption option = BlobSourceOption.userProject(projectId); - // read blob in a single pass - byte[] readBytes = storage.readAllBytes(bucketName, srcFilename, option); + // Get specific file from specified bucket + Blob blob = BlobId.of(bucketName, srcFilename); - // write out to file - PrintStream out = new PrintStream(new FileOutputStream(destFilePath.toFile())); - out.write(readBytes); - out.close(); + // Download file to specified path + blob.downloatTo(destFilePath, option); // [END storage_download_file_requester_pays] } } From 454eaa278c10681f9950ca29d9c857b278ad0e01 Mon Sep 17 00:00:00 2001 From: Frank Natividad Date: Wed, 27 Sep 2017 09:37:11 -0700 Subject: [PATCH 2/4] Update issues in the snippets. --- .../cloud/examples/storage/snippets/StorageSnippets.java | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java index 3bd5e7a2f9c3..a3cf1f5abf6a 100644 --- a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java +++ b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java @@ -1114,8 +1114,6 @@ public Bucket getRequesterPaysStatus(String bucketName) throws StorageException public void downloadFileUsingRequesterPays(String projectId, String bucketName, String srcFilename, Path destFilePath) throws IOException { // [START storage_download_file_requester_pays] - // Instantiate a Google Cloud Storage client - // The project ID to bill // String projectId = "my-billable-project-id"; @@ -1131,14 +1129,11 @@ public void downloadFileUsingRequesterPays(String projectId, String bucketName, // Instantiate a Google Cloud Storage client Storage storage = StorageOptions.getDefaultInstance().getService(); - // Set billing project - BlobSourceOption option = BlobSourceOption.userProject(projectId); - // Get specific file from specified bucket - Blob blob = BlobId.of(bucketName, srcFilename); + Blob blob = storage.get(BlobId.of(bucketName, srcFilename)); // Download file to specified path - blob.downloatTo(destFilePath, option); + blob.downloadTo(destFilePath, Blob.BlobSourceOption.userProject(projectId)); // [END storage_download_file_requester_pays] } } From ff8130f6357d303e4ee0bf5ab00941947f6ad3f0 Mon Sep 17 00:00:00 2001 From: Frank Natividad Date: Wed, 27 Sep 2017 16:47:17 -0700 Subject: [PATCH 3/4] Use Field Selector and remove unused import --- .../cloud/examples/storage/snippets/StorageSnippets.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java index a3cf1f5abf6a..929781a7f065 100644 --- a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java +++ b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java @@ -66,7 +66,6 @@ import java.net.URL; import java.nio.ByteBuffer; import java.nio.file.Path; -import java.nio.file.Paths; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -1101,7 +1100,8 @@ public Bucket getRequesterPaysStatus(String bucketName) throws StorageException // The name of the bucket to retrieve requester-pays status, eg. "my-bucket" // String bucketName = "my-bucket" // Retrieve the bucket, throws StorageException on failure - Bucket bucket = storage.get(bucketName); + Bucket bucket = storage.get(bucketName, + Storage.BucketGetOption.fields(BucketField.BILLING)); System.out.println("Requester pays status : " + bucket.requesterPays()); // [END get_requester_pays_status] From 3519c7cf10a882f31b8b0b40a8d47a95b779a743 Mon Sep 17 00:00:00 2001 From: Frank Natividad Date: Wed, 27 Sep 2017 16:53:36 -0700 Subject: [PATCH 4/4] Add missing import BucketField. --- .../google/cloud/examples/storage/snippets/StorageSnippets.java | 1 + 1 file changed, 1 insertion(+) diff --git a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java index 929781a7f065..b24748b3f86b 100644 --- a/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java +++ b/google-cloud-examples/src/main/java/com/google/cloud/examples/storage/snippets/StorageSnippets.java @@ -45,6 +45,7 @@ import com.google.cloud.storage.Storage.BlobSourceOption; import com.google.cloud.storage.Storage.BlobTargetOption; import com.google.cloud.storage.Storage.BlobWriteOption; +import com.google.cloud.storage.Storage.BucketField; import com.google.cloud.storage.Storage.BucketGetOption; import com.google.cloud.storage.Storage.BucketListOption; import com.google.cloud.storage.Storage.BucketSourceOption;