From 1661cd58476e6e3a44a7d017867a35cf6552eb1a Mon Sep 17 00:00:00 2001 From: Jesse Lovelace Date: Mon, 22 Apr 2019 15:50:34 -0700 Subject: [PATCH 1/2] Include user project in seemsLikeADirectoryAndUsePseudoDirectories --- .../google/cloud/storage/contrib/nio/CloudStoragePath.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java b/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java index 92780d535846..32083da801b2 100644 --- a/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java +++ b/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java @@ -108,7 +108,10 @@ boolean seemsLikeADirectoryAndUsePseudoDirectories(Storage storage) { this.bucket(), Storage.BlobListOption.prefix(prefix), // we only look at the first result, so no need for a bigger page. - Storage.BlobListOption.pageSize(1)); + Storage.BlobListOption.pageSize(1), + fileSystem.provider().getProject() == null + ? null + : Storage.BlobListOption.userProject(fileSystem.provider().getProject())); for (Blob b : list.getValues()) { // if this blob starts with our prefix and then a slash, then prefix is indeed a folder! if (b.getBlobId() == null) { From 36f24aa8606d44cc730e4032cdc8d6949f2ea6e6 Mon Sep 17 00:00:00 2001 From: Jesse Lovelace Date: Mon, 22 Apr 2019 15:50:34 -0700 Subject: [PATCH 2/2] Include user project in seemsLikeADirectoryAndUsePseudoDirectories --- .../google/cloud/storage/contrib/nio/CloudStoragePath.java | 5 ++++- .../cloud/storage/contrib/nio/testing/FakeStorageRpc.java | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java b/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java index 92780d535846..32083da801b2 100644 --- a/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java +++ b/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/CloudStoragePath.java @@ -108,7 +108,10 @@ boolean seemsLikeADirectoryAndUsePseudoDirectories(Storage storage) { this.bucket(), Storage.BlobListOption.prefix(prefix), // we only look at the first result, so no need for a bigger page. - Storage.BlobListOption.pageSize(1)); + Storage.BlobListOption.pageSize(1), + fileSystem.provider().getProject() == null + ? null + : Storage.BlobListOption.userProject(fileSystem.provider().getProject())); for (Blob b : list.getValues()) { // if this blob starts with our prefix and then a slash, then prefix is indeed a folder! if (b.getBlobId() == null) { diff --git a/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/testing/FakeStorageRpc.java b/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/testing/FakeStorageRpc.java index bee18dda5290..4caa90e7d326 100644 --- a/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/testing/FakeStorageRpc.java +++ b/google-cloud-clients/google-cloud-contrib/google-cloud-nio/src/main/java/com/google/cloud/storage/contrib/nio/testing/FakeStorageRpc.java @@ -145,6 +145,9 @@ public Tuple> list(String bucket, Map case MAX_RESULTS: maxResults = (Long) e.getValue(); break; + case USER_PROJECT: + //prevent unsupported operation + break; default: throw new UnsupportedOperationException("Unknown option: " + e.getKey()); }