diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 4dd9974f26..10acf46ac7 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -25,7 +25,7 @@ jobs: strategy: fail-fast: false matrix: - java: [11, 17, 21] + java: [11, 17, 21, 24] steps: - uses: actions/checkout@v4 - uses: actions/setup-java@v4 diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index b984ab43a1..b635365d84 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -43,7 +43,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} - - uses: googleapis/sdk-platform-java/.github/scripts@v2.59.0 + - uses: googleapis/sdk-platform-java/.github/scripts@v2.59.2 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index 9e2ad8b3dc..0cf8ad502d 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.49.0 + uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.49.2 with: bom-path: google-cloud-storage-bom/pom.xml diff --git a/.kokoro/presubmit/graalvm-native-a.cfg b/.kokoro/presubmit/graalvm-native-a.cfg index d72ed3f0e3..5cc939cf90 100644 --- a/.kokoro/presubmit/graalvm-native-a.cfg +++ b/.kokoro/presubmit/graalvm-native-a.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.48.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.49.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-b.cfg b/.kokoro/presubmit/graalvm-native-b.cfg index f2e296b847..fd00159184 100644 --- a/.kokoro/presubmit/graalvm-native-b.cfg +++ b/.kokoro/presubmit/graalvm-native-b.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.48.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.49.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-c.cfg b/.kokoro/presubmit/graalvm-native-c.cfg index 68512fbff5..424494b02e 100644 --- a/.kokoro/presubmit/graalvm-native-c.cfg +++ b/.kokoro/presubmit/graalvm-native-c.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.48.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.49.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/CHANGELOG.md b/CHANGELOG.md index 55076d9f0f..699c715257 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [2.53.1](https://github.com/googleapis/java-storage/compare/v2.53.0...v2.53.1) (2025-06-18) + + +### Bug Fixes + +* Cancel the future in RemoteStorageHelper#forceDelete when TimeoutException happens ([#3136](https://github.com/googleapis/java-storage/issues/3136)) ([e6007d5](https://github.com/googleapis/java-storage/commit/e6007d56e8801be65209cb5761f62749369425c9)) +* **deps:** Update the Java code generator (gapic-generator-java) to 2.59.0 ([7dba9f0](https://github.com/googleapis/java-storage/commit/7dba9f09f100062cc8c04e5a2735a4349d8e7ed1)) + + +### Dependencies + +* Update dependency com.google.apis:google-api-services-storage to v1-rev20250605-2.0.0 ([#3143](https://github.com/googleapis/java-storage/issues/3143)) ([17a80d8](https://github.com/googleapis/java-storage/commit/17a80d8b49fef65557215b310895b0f08ee25235)) +* Update sdk-platform-java dependencies ([#3152](https://github.com/googleapis/java-storage/issues/3152)) ([2f78192](https://github.com/googleapis/java-storage/commit/2f78192d97e9d3ca29c97a52a66a074777dce196)) + ## [2.53.0](https://github.com/googleapis/java-storage/compare/v2.52.3...v2.53.0) (2025-06-04) diff --git a/README.md b/README.md index 2a78732786..1f853d2fe2 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.61.0 + 26.62.0 pom import @@ -46,12 +46,12 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-storage - 2.52.3 + 2.53.0 com.google.cloud google-cloud-storage-control - 2.52.3 + 2.53.0 ``` @@ -66,13 +66,13 @@ implementation 'com.google.cloud:google-cloud-storage' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-storage:2.53.0' +implementation 'com.google.cloud:google-cloud-storage:2.53.1' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-storage" % "2.53.0" +libraryDependencies += "com.google.cloud" % "google-cloud-storage" % "2.53.1" ``` ## Authentication @@ -515,7 +515,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [kokoro-badge-link-5]: http://storage.googleapis.com/cloud-devrel-public/java/badges/java-storage/java11.html [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-storage.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storage/2.53.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-storage/2.53.1 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/gapic-google-cloud-storage-v2/pom.xml b/gapic-google-cloud-storage-v2/pom.xml index 11639f3495..ac05c78f74 100644 --- a/gapic-google-cloud-storage-v2/pom.xml +++ b/gapic-google-cloud-storage-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc gapic-google-cloud-storage-v2 - 2.53.0 + 2.53.1 gapic-google-cloud-storage-v2 GRPC library for gapic-google-cloud-storage-v2 com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 diff --git a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java index a8dfaf263a..fd884881be 100644 --- a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java +++ b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java @@ -942,6 +942,7 @@ public final Bucket createBucket(String parent, Bucket bucket, String bucketId) * .setBucketId("bucketId-1603305307") * .setPredefinedAcl("predefinedAcl1207041188") * .setPredefinedDefaultObjectAcl("predefinedDefaultObjectAcl2109168048") + * .setEnableObjectRetention(true) * .build(); * Bucket response = storageClient.createBucket(request); * } @@ -974,6 +975,7 @@ public final Bucket createBucket(CreateBucketRequest request) { * .setBucketId("bucketId-1603305307") * .setPredefinedAcl("predefinedAcl1207041188") * .setPredefinedDefaultObjectAcl("predefinedDefaultObjectAcl2109168048") + * .setEnableObjectRetention(true) * .build(); * ApiFuture future = storageClient.createBucketCallable().futureCall(request); * // Do something. @@ -2791,6 +2793,7 @@ public final Object updateObject(Object object, FieldMask updateMask) { * .setPredefinedAcl("predefinedAcl1207041188") * .setUpdateMask(FieldMask.newBuilder().build()) * .setCommonObjectRequestParams(CommonObjectRequestParams.newBuilder().build()) + * .setOverrideUnlockedRetention(true) * .build(); * Object response = storageClient.updateObject(request); * } @@ -2826,6 +2829,7 @@ public final Object updateObject(UpdateObjectRequest request) { * .setPredefinedAcl("predefinedAcl1207041188") * .setUpdateMask(FieldMask.newBuilder().build()) * .setCommonObjectRequestParams(CommonObjectRequestParams.newBuilder().build()) + * .setOverrideUnlockedRetention(true) * .build(); * ApiFuture future = storageClient.updateObjectCallable().futureCall(request); * // Do something. diff --git a/gapic-google-cloud-storage-v2/src/main/resources/META-INF/native-image/com.google.storage.v2/reflect-config.json b/gapic-google-cloud-storage-v2/src/main/resources/META-INF/native-image/com.google.storage.v2/reflect-config.json index 70f0f0bba9..43d586eebd 100644 --- a/gapic-google-cloud-storage-v2/src/main/resources/META-INF/native-image/com.google.storage.v2/reflect-config.json +++ b/gapic-google-cloud-storage-v2/src/main/resources/META-INF/native-image/com.google.storage.v2/reflect-config.json @@ -1835,6 +1835,60 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.storage.v2.Bucket$Encryption$CustomerManagedEncryptionEnforcementConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.storage.v2.Bucket$Encryption$CustomerManagedEncryptionEnforcementConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.storage.v2.Bucket$Encryption$CustomerSuppliedEncryptionEnforcementConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.storage.v2.Bucket$Encryption$CustomerSuppliedEncryptionEnforcementConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.storage.v2.Bucket$Encryption$GoogleManagedEncryptionEnforcementConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.storage.v2.Bucket$Encryption$GoogleManagedEncryptionEnforcementConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.storage.v2.Bucket$HierarchicalNamespace", "queryAllDeclaredConstructors": true, @@ -2033,6 +2087,24 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.storage.v2.Bucket$ObjectRetention", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.storage.v2.Bucket$ObjectRetention$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.storage.v2.Bucket$RetentionPolicy", "queryAllDeclaredConstructors": true, diff --git a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java index 36f8e2a56c..cc7a861baa 100644 --- a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java +++ b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java @@ -202,6 +202,7 @@ public void getBucketTest() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); @@ -270,6 +271,7 @@ public void getBucketTest2() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); @@ -338,6 +340,7 @@ public void createBucketTest() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); @@ -412,6 +415,7 @@ public void createBucketTest2() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); @@ -574,6 +578,7 @@ public void lockBucketRetentionPolicyTest() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); @@ -643,6 +648,7 @@ public void lockBucketRetentionPolicyTest2() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); @@ -966,6 +972,7 @@ public void updateBucketTest() throws Exception { .setAutoclass(Bucket.Autoclass.newBuilder().build()) .setHierarchicalNamespace(Bucket.HierarchicalNamespace.newBuilder().build()) .setSoftDeletePolicy(Bucket.SoftDeletePolicy.newBuilder().build()) + .setObjectRetention(Bucket.ObjectRetention.newBuilder().build()) .setIpFilter(Bucket.IpFilter.newBuilder().build()) .build(); mockStorage.addResponse(expectedResponse); diff --git a/generation_config.yaml b/generation_config.yaml index 319587aa7b..86fc804ae1 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ -gapic_generator_version: 2.58.0 -googleapis_commitish: ea40277431fb821fd5a9b1eb8227535846388770 +gapic_generator_version: 2.59.0 +googleapis_commitish: 3a45aa38968f4fe537cd3837c0e95af8c189b11b libraries_bom_version: 26.61.0 libraries: - api_shortname: storage diff --git a/google-cloud-storage-bom/pom.xml b/google-cloud-storage-bom/pom.xml index 7769534981..b84ef899be 100644 --- a/google-cloud-storage-bom/pom.xml +++ b/google-cloud-storage-bom/pom.xml @@ -19,12 +19,12 @@ 4.0.0 com.google.cloud google-cloud-storage-bom - 2.53.0 + 2.53.1 pom com.google.cloud sdk-platform-java-config - 3.49.0 + 3.49.2 @@ -69,37 +69,37 @@ com.google.cloud google-cloud-storage - 2.53.0 + 2.53.1 com.google.api.grpc gapic-google-cloud-storage-v2 - 2.53.0 + 2.53.1 com.google.api.grpc grpc-google-cloud-storage-v2 - 2.53.0 + 2.53.1 com.google.api.grpc proto-google-cloud-storage-v2 - 2.53.0 + 2.53.1 com.google.cloud google-cloud-storage-control - 2.53.0 + 2.53.1 com.google.api.grpc grpc-google-cloud-storage-control-v2 - 2.53.0 + 2.53.1 com.google.api.grpc proto-google-cloud-storage-control-v2 - 2.53.0 + 2.53.1 diff --git a/google-cloud-storage-control/pom.xml b/google-cloud-storage-control/pom.xml index 1bddae6be5..64db8b5b64 100644 --- a/google-cloud-storage-control/pom.xml +++ b/google-cloud-storage-control/pom.xml @@ -5,13 +5,13 @@ 4.0.0 com.google.cloud google-cloud-storage-control - 2.53.0 + 2.53.1 google-cloud-storage-control GRPC library for google-cloud-storage-control com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 diff --git a/google-cloud-storage/pom.xml b/google-cloud-storage/pom.xml index a497314eb6..47b459f92f 100644 --- a/google-cloud-storage/pom.xml +++ b/google-cloud-storage/pom.xml @@ -2,7 +2,7 @@ 4.0.0 google-cloud-storage - 2.53.0 + 2.53.1 jar Google Cloud Storage https://github.com/googleapis/java-storage @@ -12,11 +12,11 @@ com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 google-cloud-storage - 1.121.4 + 1.122.1 @@ -239,14 +239,14 @@ com.google.api.grpc proto-google-cloud-kms-v1 - 0.157.0 + 0.158.0 test com.google.cloud google-cloud-kms - 2.66.0 + 2.67.0 test @@ -325,7 +325,7 @@ net.jqwik jqwik - 1.9.2 + 1.9.3 test diff --git a/google-cloud-storage/src/main/java/com/google/cloud/storage/testing/RemoteStorageHelper.java b/google-cloud-storage/src/main/java/com/google/cloud/storage/testing/RemoteStorageHelper.java index 2d604a287c..da4d96a119 100644 --- a/google-cloud-storage/src/main/java/com/google/cloud/storage/testing/RemoteStorageHelper.java +++ b/google-cloud-storage/src/main/java/com/google/cloud/storage/testing/RemoteStorageHelper.java @@ -30,6 +30,7 @@ import com.google.cloud.storage.StorageException; import com.google.cloud.storage.StorageOptions; import com.google.common.base.Strings; +import com.google.common.util.concurrent.ThreadFactoryBuilder; import java.io.IOException; import java.io.InputStream; import java.time.Duration; @@ -41,6 +42,7 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; +import java.util.concurrent.ThreadFactory; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import java.util.logging.Level; @@ -153,11 +155,14 @@ public static Boolean forceDelete(Storage storage, String bucket, long timeout, public static Boolean forceDelete( Storage storage, String bucket, long timeout, TimeUnit unit, String userProject) throws InterruptedException, ExecutionException { - ExecutorService executor = Executors.newSingleThreadExecutor(); + ThreadFactory threadFactory = + new ThreadFactoryBuilder().setDaemon(true).setNameFormat("forceDelete-%s").build(); + ExecutorService executor = Executors.newSingleThreadExecutor(threadFactory); Future future = executor.submit(new DeleteBucketTask(storage, bucket, userProject)); try { return future.get(timeout, unit); } catch (TimeoutException ex) { + future.cancel(true); return false; } finally { executor.shutdown(); diff --git a/google-cloud-storage/src/test/java/com/google/cloud/storage/ITAppendableUploadTest.java b/google-cloud-storage/src/test/java/com/google/cloud/storage/ITAppendableUploadTest.java index c07e7b44da..bacef54b0e 100644 --- a/google-cloud-storage/src/test/java/com/google/cloud/storage/ITAppendableUploadTest.java +++ b/google-cloud-storage/src/test/java/com/google/cloud/storage/ITAppendableUploadTest.java @@ -45,7 +45,7 @@ @RunWith(StorageITRunner.class) @CrossRun( - backends = {Backend.PROD, Backend.TEST_BENCH}, + backends = {Backend.TEST_BENCH}, transports = Transport.GRPC) public final class ITAppendableUploadTest { diff --git a/google-cloud-storage/src/test/java/com/google/cloud/storage/ITObjectReadSessionTest.java b/google-cloud-storage/src/test/java/com/google/cloud/storage/ITObjectReadSessionTest.java index fe6e1f5021..321ba8e9a0 100644 --- a/google-cloud-storage/src/test/java/com/google/cloud/storage/ITObjectReadSessionTest.java +++ b/google-cloud-storage/src/test/java/com/google/cloud/storage/ITObjectReadSessionTest.java @@ -63,7 +63,7 @@ @RunWith(StorageITRunner.class) @CrossRun( - backends = {Backend.PROD, Backend.TEST_BENCH}, + backends = {Backend.TEST_BENCH}, transports = Transport.GRPC) public final class ITObjectReadSessionTest { diff --git a/google-cloud-storage/src/test/java/com/google/cloud/storage/it/runner/registry/Zone.java b/google-cloud-storage/src/test/java/com/google/cloud/storage/it/runner/registry/Zone.java index e9e46f80ea..52e0961416 100644 --- a/google-cloud-storage/src/test/java/com/google/cloud/storage/it/runner/registry/Zone.java +++ b/google-cloud-storage/src/test/java/com/google/cloud/storage/it/runner/registry/Zone.java @@ -19,8 +19,11 @@ import com.google.common.base.MoreObjects; import java.io.IOException; import java.util.Objects; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public final class Zone { + private static final Logger LOGGER = LoggerFactory.getLogger(Zone.class); private final String region; private final String zone; @@ -87,6 +90,7 @@ public Zone get() { public void start() { try { zone = MetadataService.zone().orElseGet(() -> parse("us-east1-c")); + LOGGER.info("Resolved zone = {}", zone); } catch (IOException e) { throw new RuntimeException(e); } diff --git a/google-cloud-storage/src/test/resources/logback.xml b/google-cloud-storage/src/test/resources/logback.xml index 70cdedad80..3dbad20390 100644 --- a/google-cloud-storage/src/test/resources/logback.xml +++ b/google-cloud-storage/src/test/resources/logback.xml @@ -86,6 +86,7 @@ + diff --git a/grpc-google-cloud-storage-control-v2/pom.xml b/grpc-google-cloud-storage-control-v2/pom.xml index 59ca0307ba..3688c44251 100644 --- a/grpc-google-cloud-storage-control-v2/pom.xml +++ b/grpc-google-cloud-storage-control-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-storage-control-v2 - 2.53.0 + 2.53.1 grpc-google-cloud-storage-control-v2 GRPC library for google-cloud-storage com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 diff --git a/grpc-google-cloud-storage-v2/pom.xml b/grpc-google-cloud-storage-v2/pom.xml index d50e4ae593..224f5754b7 100644 --- a/grpc-google-cloud-storage-v2/pom.xml +++ b/grpc-google-cloud-storage-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-storage-v2 - 2.53.0 + 2.53.1 grpc-google-cloud-storage-v2 GRPC library for grpc-google-cloud-storage-v2 com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 diff --git a/pom.xml b/pom.xml index 6c09ad3da1..fa4435d484 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-storage-parent pom - 2.53.0 + 2.53.1 Storage Parent https://github.com/googleapis/java-storage @@ -14,7 +14,7 @@ com.google.cloud sdk-platform-java-config - 3.49.0 + 3.49.2 @@ -69,7 +69,7 @@ org.junit junit-bom - 5.12.2 + 5.13.1 pom import @@ -82,17 +82,17 @@ com.google.cloud google-cloud-storage - 2.53.0 + 2.53.1 com.google.apis google-api-services-storage - v1-rev20250524-2.0.0 + v1-rev20250605-2.0.0 com.google.cloud google-cloud-pubsub - 1.139.4 + 1.140.1 test @@ -104,32 +104,32 @@ com.google.api.grpc proto-google-cloud-storage-v2 - 2.53.0 + 2.53.1 com.google.api.grpc grpc-google-cloud-storage-v2 - 2.53.0 + 2.53.1 com.google.api.grpc gapic-google-cloud-storage-v2 - 2.53.0 + 2.53.1 com.google.api.grpc grpc-google-cloud-storage-control-v2 - 2.53.0 + 2.53.1 com.google.api.grpc proto-google-cloud-storage-control-v2 - 2.53.0 + 2.53.1 com.google.cloud google-cloud-storage-control - 2.53.0 + 2.53.1 com.google.cloud diff --git a/proto-google-cloud-storage-control-v2/pom.xml b/proto-google-cloud-storage-control-v2/pom.xml index 5623fc3a00..ca297f10ab 100644 --- a/proto-google-cloud-storage-control-v2/pom.xml +++ b/proto-google-cloud-storage-control-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-storage-control-v2 - 2.53.0 + 2.53.1 proto-google-cloud-storage-control-v2 Proto library for proto-google-cloud-storage-control-v2 com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCache.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCache.java index 7a57ae3995..61411dcddc 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCache.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCache.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCacheOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCacheOrBuilder.java index f0385fa286..ff73fa3689 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCacheOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/AnywhereCacheOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface AnywhereCacheOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadata.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadata.java index 021077a09a..b0cb2f666f 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadata.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadata.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadataOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadataOrBuilder.java index 150d6683cb..a16895ee35 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadataOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CommonLongRunningOperationMetadataOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface CommonLongRunningOperationMetadataOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadata.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadata.java index 7aa74ec265..b668bf89be 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadata.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadata.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadataOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadataOrBuilder.java index 342ee71ae2..5ff8421c05 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadataOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheMetadataOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface CreateAnywhereCacheMetadataOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequest.java index 25014e725c..b414a2234a 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequestOrBuilder.java index d6b3f4832b..3729eddde3 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateAnywhereCacheRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface CreateAnywhereCacheRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequest.java index 86327be08f..1bd6c4828c 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequestOrBuilder.java index 5cef688a1d..94f0fbc7a5 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface CreateFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequest.java index 5ed996e576..69318b863a 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequestOrBuilder.java index 47a6e31c43..ca91e6120c 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/CreateManagedFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface CreateManagedFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequest.java index 524da96bf0..eadba5ea3e 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequestOrBuilder.java index 192487b1ae..065ef970c3 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface DeleteFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequest.java index a32a30d8d6..315c0c879d 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequestOrBuilder.java index 0c74f4bcfa..9039f9559d 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DeleteManagedFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface DeleteManagedFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequest.java index f7d36ae2cd..a1dec6dbdb 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequestOrBuilder.java index d7746f10b7..e014a589d0 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/DisableAnywhereCacheRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface DisableAnywhereCacheRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/Folder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/Folder.java index fef87922a8..2546e65ec8 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/Folder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/Folder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/FolderOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/FolderOrBuilder.java index ffc3a46092..3434ce57c1 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/FolderOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/FolderOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface FolderOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequest.java index 5841491b7b..0dda307bf2 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequestOrBuilder.java index 2355b2d250..d5d3906743 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetAnywhereCacheRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetAnywhereCacheRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequest.java index 637a918088..9a3ece21ae 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequestOrBuilder.java index 3e3e6668c6..117fc72dfa 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderIntelligenceConfigRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetFolderIntelligenceConfigRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequest.java index d2d28587ec..a33bc92959 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequestOrBuilder.java index 7b5592c402..133b5b4f71 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequest.java index 79960439ca..e0db01c9b6 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequestOrBuilder.java index 67b9c71dcf..e3c7395288 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetManagedFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetManagedFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequest.java index 4bcb754bea..f171387ad8 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequestOrBuilder.java index 022de0ee56..9a88fc8009 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetOrganizationIntelligenceConfigRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetOrganizationIntelligenceConfigRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequest.java index 77acd59f10..633ced0b2f 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequestOrBuilder.java index b0ea721aff..c40bd7e22d 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetProjectIntelligenceConfigRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetProjectIntelligenceConfigRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequest.java index 289ec6fc31..8de4177997 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequestOrBuilder.java index 24d9d4a8b6..6b13acf84c 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/GetStorageLayoutRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface GetStorageLayoutRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfig.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfig.java index 5d6f991b4e..e823d5c938 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfig.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfig.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfigOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfigOrBuilder.java index f957effc63..3d64049edf 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfigOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/IntelligenceConfigOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface IntelligenceConfigOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequest.java index b28702f198..74339ed7ca 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequestOrBuilder.java index 33ca6415b4..946d253264 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ListAnywhereCachesRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponse.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponse.java index 6e39b62203..a91326d08c 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponse.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponseOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponseOrBuilder.java index a5d47960c8..7d26e9cd23 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponseOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListAnywhereCachesResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ListAnywhereCachesResponseOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequest.java index b1bce59732..bfa3c6e305 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequestOrBuilder.java index a8e3d7b17b..6bdd365fb6 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ListFoldersRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponse.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponse.java index e2d9e3ffc0..e1aacc6ffb 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponse.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponseOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponseOrBuilder.java index 097be045df..b137d21a9f 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponseOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListFoldersResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ListFoldersResponseOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequest.java index 3b91e97f11..79cef79343 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequestOrBuilder.java index 2b3aafdb2f..880bf43147 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ListManagedFoldersRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponse.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponse.java index 4356c6282b..3c9f9b7cab 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponse.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponseOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponseOrBuilder.java index a36528684f..497b27d3c7 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponseOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ListManagedFoldersResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ListManagedFoldersResponseOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolder.java index 2ae02496fc..c0823571e2 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolderOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolderOrBuilder.java index 54050b1353..b2cf00a42c 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolderOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ManagedFolderOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ManagedFolderOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequest.java index 603217b5e6..a55539ff37 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequestOrBuilder.java index 3e8d5f0ed1..e467754196 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PauseAnywhereCacheRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface PauseAnywhereCacheRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfo.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfo.java index 48d1583044..ed5b8a1046 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfo.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfo.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfoOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfoOrBuilder.java index 772d95676c..7e89ced3c1 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfoOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/PendingRenameInfoOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface PendingRenameInfoOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadata.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadata.java index c8f2d15b18..0d7a124bd2 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadata.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadata.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadataOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadataOrBuilder.java index 9eabbc9646..6b79b9dd6e 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadataOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderMetadataOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface RenameFolderMetadataOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequest.java index 1d60061252..e7371daf87 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequestOrBuilder.java index d4f668e7fc..e20d1081b7 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/RenameFolderRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface RenameFolderRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequest.java index 20d9f3a117..dfed8fced0 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequestOrBuilder.java index 445ad3e714..dbb3900469 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/ResumeAnywhereCacheRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface ResumeAnywhereCacheRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageControlProto.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageControlProto.java index c9f6ecb527..e97e366047 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageControlProto.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageControlProto.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public final class StorageControlProto { diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayout.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayout.java index 7c7b0a3f6f..a43be3a84b 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayout.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayout.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayoutOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayoutOrBuilder.java index 5070d5192b..55326507d7 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayoutOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/StorageLayoutOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface StorageLayoutOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadata.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadata.java index f52a97b3f3..3dd479d34a 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadata.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadata.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadataOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadataOrBuilder.java index 85d956d12a..fb7533dd97 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadataOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheMetadataOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface UpdateAnywhereCacheMetadataOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequest.java index 7a3d7bda2b..6d641ab164 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequestOrBuilder.java index 7b97ac8611..8f3c6e7e20 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateAnywhereCacheRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface UpdateAnywhereCacheRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequest.java index d7b08a89e2..ebb250e970 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequestOrBuilder.java index 9c6b508d85..9dc9c40c49 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateFolderIntelligenceConfigRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface UpdateFolderIntelligenceConfigRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequest.java index 0df51307c9..0b97c3c3a9 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequestOrBuilder.java index 67b83c491b..fc992c342c 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateOrganizationIntelligenceConfigRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface UpdateOrganizationIntelligenceConfigRequestOrBuilder diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequest.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequest.java index e59fa2254b..df079530e8 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequest.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; /** diff --git a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequestOrBuilder.java b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequestOrBuilder.java index ba62153497..8a43070e07 100644 --- a/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequestOrBuilder.java +++ b/proto-google-cloud-storage-control-v2/src/main/java/com/google/storage/control/v2/UpdateProjectIntelligenceConfigRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/control/v2/storage_control.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.control.v2; public interface UpdateProjectIntelligenceConfigRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/pom.xml b/proto-google-cloud-storage-v2/pom.xml index c8cd3b061b..f7fb32aef3 100644 --- a/proto-google-cloud-storage-v2/pom.xml +++ b/proto-google-cloud-storage-v2/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-storage-v2 - 2.53.0 + 2.53.1 proto-google-cloud-storage-v2 PROTO library for proto-google-cloud-storage-v2 com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpec.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpec.java index e9e256ed12..1e1609eedc 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpec.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpec.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpecOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpecOrBuilder.java index 845f8045d2..65fc9b9c27 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpecOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/AppendObjectSpecOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface AppendObjectSpecOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandle.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandle.java index 69bab77714..3bf53ad542 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandle.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandle.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandleOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandleOrBuilder.java index 0ef938634d..0e6f134151 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandleOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadHandleOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiReadHandleOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectError.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectError.java index 2b9e35956b..85553fd4a6 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectError.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectError.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectErrorOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectErrorOrBuilder.java index 6d98299586..d498aa9c60 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectErrorOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectErrorOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiReadObjectErrorOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedError.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedError.java index 8df9d07598..48351db909 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedError.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedError.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedErrorOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedErrorOrBuilder.java index 2d6564735f..67abf55c38 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedErrorOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRedirectedErrorOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiReadObjectRedirectedErrorOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequest.java index 9d08aa1dfc..faf2cf9966 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequestOrBuilder.java index af8d49894e..a2153c64ae 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiReadObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponse.java index 3a78b4ccb6..e73610a3d8 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponseOrBuilder.java index 12a28f6a1c..351816bbe9 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiReadObjectResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpec.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpec.java index 6d3ba97822..9b4e87d911 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpec.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpec.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** @@ -434,7 +434,7 @@ public com.google.storage.v2.CommonObjectRequestParams getCommonObjectRequestPar * optional .google.protobuf.FieldMask read_mask = 12 [deprecated = true]; * * @deprecated google.storage.v2.BidiReadObjectSpec.read_mask is deprecated. See - * google/storage/v2/storage.proto;l=1024 + * google/storage/v2/storage.proto;l=1027 * @return Whether the readMask field is set. */ @java.lang.Override @@ -460,7 +460,7 @@ public boolean hasReadMask() { * optional .google.protobuf.FieldMask read_mask = 12 [deprecated = true]; * * @deprecated google.storage.v2.BidiReadObjectSpec.read_mask is deprecated. See - * google/storage/v2/storage.proto;l=1024 + * google/storage/v2/storage.proto;l=1027 * @return The readMask. */ @java.lang.Override @@ -2125,7 +2125,7 @@ public Builder clearCommonObjectRequestParams() { * optional .google.protobuf.FieldMask read_mask = 12 [deprecated = true]; * * @deprecated google.storage.v2.BidiReadObjectSpec.read_mask is deprecated. See - * google/storage/v2/storage.proto;l=1024 + * google/storage/v2/storage.proto;l=1027 * @return Whether the readMask field is set. */ @java.lang.Deprecated @@ -2150,7 +2150,7 @@ public boolean hasReadMask() { * optional .google.protobuf.FieldMask read_mask = 12 [deprecated = true]; * * @deprecated google.storage.v2.BidiReadObjectSpec.read_mask is deprecated. See - * google/storage/v2/storage.proto;l=1024 + * google/storage/v2/storage.proto;l=1027 * @return The readMask. */ @java.lang.Deprecated diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpecOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpecOrBuilder.java index 9e9ef39815..6859b67d6d 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpecOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiReadObjectSpecOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiReadObjectSpecOrBuilder @@ -275,7 +275,7 @@ public interface BidiReadObjectSpecOrBuilder * optional .google.protobuf.FieldMask read_mask = 12 [deprecated = true]; * * @deprecated google.storage.v2.BidiReadObjectSpec.read_mask is deprecated. See - * google/storage/v2/storage.proto;l=1024 + * google/storage/v2/storage.proto;l=1027 * @return Whether the readMask field is set. */ @java.lang.Deprecated @@ -298,7 +298,7 @@ public interface BidiReadObjectSpecOrBuilder * optional .google.protobuf.FieldMask read_mask = 12 [deprecated = true]; * * @deprecated google.storage.v2.BidiReadObjectSpec.read_mask is deprecated. See - * google/storage/v2/storage.proto;l=1024 + * google/storage/v2/storage.proto;l=1027 * @return The readMask. */ @java.lang.Deprecated diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandle.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandle.java index 17d050d323..65e5149c73 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandle.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandle.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandleOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandleOrBuilder.java index 9b92ea60fb..e5f3de5367 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandleOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteHandleOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiWriteHandleOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedError.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedError.java index 45f77abc7c..fd01ec636b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedError.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedError.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedErrorOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedErrorOrBuilder.java index 43f9b7ab4f..81c7a5c842 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedErrorOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRedirectedErrorOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiWriteObjectRedirectedErrorOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequest.java index e99183abc8..87a4ad4257 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequestOrBuilder.java index 5b5e562552..adb098818e 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiWriteObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponse.java index d62952d14f..e1f30195fe 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponseOrBuilder.java index 2b0279df82..34457ee6ad 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BidiWriteObjectResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BidiWriteObjectResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java index 21febe3219..2dd77f13b3 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** @@ -2374,6 +2374,168 @@ public interface EncryptionOrBuilder * @return The bytes for defaultKmsKey. */ com.google.protobuf.ByteString getDefaultKmsKeyBytes(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with GMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the googleManagedEncryptionEnforcementConfig field is set. + */ + boolean hasGoogleManagedEncryptionEnforcementConfig(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with GMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The googleManagedEncryptionEnforcementConfig. + */ + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + getGoogleManagedEncryptionEnforcementConfig(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with GMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfigOrBuilder + getGoogleManagedEncryptionEnforcementConfigOrBuilder(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with CMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the customerManagedEncryptionEnforcementConfig field is set. + */ + boolean hasCustomerManagedEncryptionEnforcementConfig(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with CMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The customerManagedEncryptionEnforcementConfig. + */ + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + getCustomerManagedEncryptionEnforcementConfig(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with CMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfigOrBuilder + getCustomerManagedEncryptionEnforcementConfigOrBuilder(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with CSEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the customerSuppliedEncryptionEnforcementConfig field is set. + */ + boolean hasCustomerSuppliedEncryptionEnforcementConfig(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with CSEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The customerSuppliedEncryptionEnforcementConfig. + */ + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + getCustomerSuppliedEncryptionEnforcementConfig(); + + /** + * + * + *
+     * Optional. If omitted, then new objects with CSEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfigOrBuilder + getCustomerSuppliedEncryptionEnforcementConfigOrBuilder(); } /** @@ -2421,917 +2583,1229 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { com.google.storage.v2.Bucket.Encryption.Builder.class); } - public static final int DEFAULT_KMS_KEY_FIELD_NUMBER = 1; + public interface GoogleManagedEncryptionEnforcementConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) + com.google.protobuf.MessageOrBuilder { - @SuppressWarnings("serial") - private volatile java.lang.Object defaultKmsKey_ = ""; + /** + * + * + *
+       * Whether Google Managed Encryption (GMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using GMEK encryption.
+       * If false or unset, creation of new objects with GMEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return Whether the restricted field is set. + */ + boolean hasRestricted(); - /** - * - * - *
-     * Optional. The name of the Cloud KMS key that will be used to encrypt
-     * objects inserted into this bucket, if no encryption method is specified.
-     * 
- * - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @return The defaultKmsKey. - */ - @java.lang.Override - public java.lang.String getDefaultKmsKey() { - java.lang.Object ref = defaultKmsKey_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - defaultKmsKey_ = s; - return s; - } + /** + * + * + *
+       * Whether Google Managed Encryption (GMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using GMEK encryption.
+       * If false or unset, creation of new objects with GMEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ + boolean getRestricted(); + + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return Whether the effectiveTime field is set. + */ + boolean hasEffectiveTime(); + + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. + */ + com.google.protobuf.Timestamp getEffectiveTime(); + + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder(); } /** * * *
-     * Optional. The name of the Cloud KMS key that will be used to encrypt
-     * objects inserted into this bucket, if no encryption method is specified.
+     * Google Managed Encryption (GMEK) enforcement config of a bucket.
      * 
* - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @return The bytes for defaultKmsKey. + * Protobuf type {@code + * google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig} */ - @java.lang.Override - public com.google.protobuf.ByteString getDefaultKmsKeyBytes() { - java.lang.Object ref = defaultKmsKey_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - defaultKmsKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - private byte memoizedIsInitialized = -1; - - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; - - memoizedIsInitialized = 1; - return true; - } - - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(defaultKmsKey_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, defaultKmsKey_); - } - getUnknownFields().writeTo(output); - } - - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(defaultKmsKey_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, defaultKmsKey_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } + public static final class GoogleManagedEncryptionEnforcementConfig + extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) + GoogleManagedEncryptionEnforcementConfigOrBuilder { + private static final long serialVersionUID = 0L; - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.storage.v2.Bucket.Encryption)) { - return super.equals(obj); + // Use GoogleManagedEncryptionEnforcementConfig.newBuilder() to construct. + private GoogleManagedEncryptionEnforcementConfig( + com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); } - com.google.storage.v2.Bucket.Encryption other = (com.google.storage.v2.Bucket.Encryption) obj; - if (!getDefaultKmsKey().equals(other.getDefaultKmsKey())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + private GoogleManagedEncryptionEnforcementConfig() {} - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new GoogleManagedEncryptionEnforcementConfig(); } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + DEFAULT_KMS_KEY_FIELD_NUMBER; - hash = (53 * hash) + getDefaultKmsKey().hashCode(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.Encryption parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.storage.v2.Bucket.Encryption parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.storage.v2.Bucket.Encryption parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - - public static Builder newBuilder(com.google.storage.v2.Bucket.Encryption prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } - - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } - - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - /** - * - * - *
-     * Encryption properties of a bucket.
-     * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Encryption} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Encryption) - com.google.storage.v2.Bucket.EncryptionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Encryption_descriptor; + .internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Encryption_fieldAccessorTable + .internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Encryption.class, - com.google.storage.v2.Bucket.Encryption.Builder.class); + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .class, + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .Builder.class); } - // Construct using com.google.storage.v2.Bucket.Encryption.newBuilder() - private Builder() {} - - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - } + private int bitField0_; + public static final int RESTRICTED_FIELD_NUMBER = 1; + private boolean restricted_ = false; + /** + * + * + *
+       * Whether Google Managed Encryption (GMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using GMEK encryption.
+       * If false or unset, creation of new objects with GMEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return Whether the restricted field is set. + */ @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - defaultKmsKey_ = ""; - return this; + public boolean hasRestricted() { + return ((bitField0_ & 0x00000001) != 0); } + /** + * + * + *
+       * Whether Google Managed Encryption (GMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using GMEK encryption.
+       * If false or unset, creation of new objects with GMEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Encryption_descriptor; + public boolean getRestricted() { + return restricted_; } + public static final int EFFECTIVE_TIME_FIELD_NUMBER = 2; + private com.google.protobuf.Timestamp effectiveTime_; + + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return Whether the effectiveTime field is set. + */ @java.lang.Override - public com.google.storage.v2.Bucket.Encryption getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.Encryption.getDefaultInstance(); + public boolean hasEffectiveTime() { + return ((bitField0_ & 0x00000002) != 0); } + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. + */ @java.lang.Override - public com.google.storage.v2.Bucket.Encryption build() { - com.google.storage.v2.Bucket.Encryption result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + public com.google.protobuf.Timestamp getEffectiveTime() { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; } + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ @java.lang.Override - public com.google.storage.v2.Bucket.Encryption buildPartial() { - com.google.storage.v2.Bucket.Encryption result = - new com.google.storage.v2.Bucket.Encryption(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; + public com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder() { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; } - private void buildPartial0(com.google.storage.v2.Bucket.Encryption result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.defaultKmsKey_ = defaultKmsKey_; - } - } + private byte memoizedIsInitialized = -1; @java.lang.Override - public Builder clone() { - return super.clone(); + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; } @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeBool(1, restricted_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(2, getEffectiveTime()); + } + getUnknownFields().writeTo(output); } @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, restricted_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getEffectiveTime()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig other = + (com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) obj; + + if (hasRestricted() != other.hasRestricted()) return false; + if (hasRestricted()) { + if (getRestricted() != other.getRestricted()) return false; + } + if (hasEffectiveTime() != other.hasEffectiveTime()) return false; + if (hasEffectiveTime()) { + if (!getEffectiveTime().equals(other.getEffectiveTime())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasRestricted()) { + hash = (37 * hash) + RESTRICTED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getRestricted()); + } + if (hasEffectiveTime()) { + hash = (37 * hash) + EFFECTIVE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getEffectiveTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.Encryption) { - return mergeFrom((com.google.storage.v2.Bucket.Encryption) other); - } else { - super.mergeFrom(other); - return this; - } + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - public Builder mergeFrom(com.google.storage.v2.Bucket.Encryption other) { - if (other == com.google.storage.v2.Bucket.Encryption.getDefaultInstance()) return this; - if (!other.getDefaultKmsKey().isEmpty()) { - defaultKmsKey_ = other.defaultKmsKey_; - bitField0_ |= 0x00000001; - onChanged(); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public final boolean isInitialized() { - return true; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - defaultKmsKey_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - private int bitField0_; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private java.lang.Object defaultKmsKey_ = ""; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - /** - * - * - *
-       * Optional. The name of the Cloud KMS key that will be used to encrypt
-       * objects inserted into this bucket, if no encryption method is specified.
-       * 
- * - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @return The defaultKmsKey. - */ - public java.lang.String getDefaultKmsKey() { - java.lang.Object ref = defaultKmsKey_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - defaultKmsKey_ = s; - return s; - } else { - return (java.lang.String) ref; - } + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } - /** - * - * - *
-       * Optional. The name of the Cloud KMS key that will be used to encrypt
-       * objects inserted into this bucket, if no encryption method is specified.
-       * 
- * - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @return The bytes for defaultKmsKey. - */ - public com.google.protobuf.ByteString getDefaultKmsKeyBytes() { - java.lang.Object ref = defaultKmsKey_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - defaultKmsKey_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - /** - * - * - *
-       * Optional. The name of the Cloud KMS key that will be used to encrypt
-       * objects inserted into this bucket, if no encryption method is specified.
-       * 
- * - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @param value The defaultKmsKey to set. - * @return This builder for chaining. - */ - public Builder setDefaultKmsKey(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - defaultKmsKey_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - /** - * - * - *
-       * Optional. The name of the Cloud KMS key that will be used to encrypt
-       * objects inserted into this bucket, if no encryption method is specified.
-       * 
- * - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @return This builder for chaining. - */ - public Builder clearDefaultKmsKey() { - defaultKmsKey_ = getDefaultInstance().getDefaultKmsKey(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - /** - * - * - *
-       * Optional. The name of the Cloud KMS key that will be used to encrypt
-       * objects inserted into this bucket, if no encryption method is specified.
-       * 
- * - * - * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } - * - * - * @param value The bytes for defaultKmsKey to set. - * @return This builder for chaining. - */ - public Builder setDefaultKmsKeyBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - defaultKmsKey_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Encryption) - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Encryption) - private static final com.google.storage.v2.Bucket.Encryption DEFAULT_INSTANCE; + /** + * + * + *
+       * Google Managed Encryption (GMEK) enforcement config of a bucket.
+       * 
+ * + * Protobuf type {@code + * google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) + com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_descriptor; + } - static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Encryption(); - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .class, + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .Builder.class); + } - public static com.google.storage.v2.Bucket.Encryption getDefaultInstance() { - return DEFAULT_INSTANCE; - } + // Construct using + // com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Encryption parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getEffectiveTimeFieldBuilder(); } - }; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + restricted_ = false; + effectiveTime_ = null; + if (effectiveTimeBuilder_ != null) { + effectiveTimeBuilder_.dispose(); + effectiveTimeBuilder_ = null; + } + return this; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_descriptor; + } - @java.lang.Override - public com.google.storage.v2.Bucket.Encryption getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .getDefaultInstance(); + } - public interface IamConfigOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.IamConfig) - com.google.protobuf.MessageOrBuilder { + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + build() { + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig result = + buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } - /** - * - * - *
-     * Optional. Bucket restriction options currently enforced on the bucket.
-     * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the uniformBucketLevelAccess field is set. - */ - boolean hasUniformBucketLevelAccess(); + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + buildPartial() { + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig result = + new com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig( + this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } - /** - * - * - *
-     * Optional. Bucket restriction options currently enforced on the bucket.
-     * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The uniformBucketLevelAccess. - */ - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess getUniformBucketLevelAccess(); + private void buildPartial0( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.restricted_ = restricted_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.effectiveTime_ = + effectiveTimeBuilder_ == null ? effectiveTime_ : effectiveTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + result.bitField0_ |= to_bitField0_; + } - /** - * - * - *
-     * Optional. Bucket restriction options currently enforced on the bucket.
-     * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder - getUniformBucketLevelAccessOrBuilder(); + @java.lang.Override + public Builder clone() { + return super.clone(); + } - /** - * - * - *
-     * Optional. Whether IAM will enforce public access prevention. Valid values
-     * are "enforced" or "inherited".
-     * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The publicAccessPrevention. - */ - java.lang.String getPublicAccessPrevention(); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } - /** - * - * - *
-     * Optional. Whether IAM will enforce public access prevention. Valid values
-     * are "enforced" or "inherited".
-     * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for publicAccessPrevention. - */ - com.google.protobuf.ByteString getPublicAccessPreventionBytes(); - } + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } - /** - * - * - *
-   * Bucket restriction options.
-   * 
- * - * Protobuf type {@code google.storage.v2.Bucket.IamConfig} - */ - public static final class IamConfig extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.IamConfig) - IamConfigOrBuilder { - private static final long serialVersionUID = 0L; + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - // Use IamConfig.newBuilder() to construct. - private IamConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } - private IamConfig() { - publicAccessPrevention_ = ""; - } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new IamConfig(); - } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) { + return mergeFrom( + (com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) + other); + } else { + super.mergeFrom(other); + return this; + } + } - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_descriptor; - } + public Builder mergeFrom( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + other) { + if (other + == com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .getDefaultInstance()) return this; + if (other.hasRestricted()) { + setRestricted(other.getRestricted()); + } + if (other.hasEffectiveTime()) { + mergeEffectiveTime(other.getEffectiveTime()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.IamConfig.class, - com.google.storage.v2.Bucket.IamConfig.Builder.class); + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + restricted_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + input.readMessage( + getEffectiveTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private boolean restricted_; + + /** + * + * + *
+         * Whether Google Managed Encryption (GMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using GMEK encryption.
+         * If false or unset, creation of new objects with GMEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @return Whether the restricted field is set. + */ + @java.lang.Override + public boolean hasRestricted() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+         * Whether Google Managed Encryption (GMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using GMEK encryption.
+         * If false or unset, creation of new objects with GMEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ + @java.lang.Override + public boolean getRestricted() { + return restricted_; + } + + /** + * + * + *
+         * Whether Google Managed Encryption (GMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using GMEK encryption.
+         * If false or unset, creation of new objects with GMEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @param value The restricted to set. + * @return This builder for chaining. + */ + public Builder setRestricted(boolean value) { + + restricted_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+         * Whether Google Managed Encryption (GMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using GMEK encryption.
+         * If false or unset, creation of new objects with GMEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @return This builder for chaining. + */ + public Builder clearRestricted() { + bitField0_ = (bitField0_ & ~0x00000001); + restricted_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp effectiveTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + effectiveTimeBuilder_; + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return Whether the effectiveTime field is set. + */ + public boolean hasEffectiveTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. + */ + public com.google.protobuf.Timestamp getEffectiveTime() { + if (effectiveTimeBuilder_ == null) { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; + } else { + return effectiveTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder setEffectiveTime(com.google.protobuf.Timestamp value) { + if (effectiveTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + effectiveTime_ = value; + } else { + effectiveTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder setEffectiveTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (effectiveTimeBuilder_ == null) { + effectiveTime_ = builderForValue.build(); + } else { + effectiveTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder mergeEffectiveTime(com.google.protobuf.Timestamp value) { + if (effectiveTimeBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && effectiveTime_ != null + && effectiveTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getEffectiveTimeBuilder().mergeFrom(value); + } else { + effectiveTime_ = value; + } + } else { + effectiveTimeBuilder_.mergeFrom(value); + } + if (effectiveTime_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder clearEffectiveTime() { + bitField0_ = (bitField0_ & ~0x00000002); + effectiveTime_ = null; + if (effectiveTimeBuilder_ != null) { + effectiveTimeBuilder_.dispose(); + effectiveTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public com.google.protobuf.Timestamp.Builder getEffectiveTimeBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getEffectiveTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder() { + if (effectiveTimeBuilder_ != null) { + return effectiveTimeBuilder_.getMessageOrBuilder(); + } else { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; + } + } + + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getEffectiveTimeFieldBuilder() { + if (effectiveTimeBuilder_ == null) { + effectiveTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getEffectiveTime(), getParentForChildren(), isClean()); + effectiveTime_ = null; + } + return effectiveTimeBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig) + private static final com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfig + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = + new com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig(); + } + + public static com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public GoogleManagedEncryptionEnforcementConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser + getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } } - public interface UniformBucketLevelAccessOrBuilder + public interface CustomerManagedEncryptionEnforcementConfigOrBuilder extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) com.google.protobuf.MessageOrBuilder { /** * * *
-       * Optional. If set, access checks only use bucket-level IAM policies or
-       * above.
+       * Whether Customer Managed Encryption (CMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CMEK encryption.
+       * If false or unset, creation of new objects with CMEK encryption is
+       * allowed.
        * 
* - * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * optional bool restricted = 1; * - * @return The enabled. + * @return Whether the restricted field is set. */ - boolean getEnabled(); + boolean hasRestricted(); /** * * *
-       * Optional. The deadline time for changing
-       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-       * `false`. Mutable until the specified deadline is reached, but not
-       * afterward.
+       * Whether Customer Managed Encryption (CMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CMEK encryption.
+       * If false or unset, creation of new objects with CMEK encryption is
+       * allowed.
        * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional bool restricted = 1; * - * @return Whether the lockTime field is set. + * @return The restricted. */ - boolean hasLockTime(); + boolean getRestricted(); /** * * *
-       * Optional. The deadline time for changing
-       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-       * `false`. Mutable until the specified deadline is reached, but not
-       * afterward.
+       * Time from which the config was effective. This is service-provided.
        * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; * - * @return The lockTime. + * @return Whether the effectiveTime field is set. */ - com.google.protobuf.Timestamp getLockTime(); + boolean hasEffectiveTime(); /** * * *
-       * Optional. The deadline time for changing
-       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-       * `false`. Mutable until the specified deadline is reached, but not
-       * afterward.
+       * Time from which the config was effective. This is service-provided.
        * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. */ - com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder(); + com.google.protobuf.Timestamp getEffectiveTime(); + + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder(); } /** * * *
-     * Settings for Uniform Bucket level access.
-     * See https://cloud.google.com/storage/docs/uniform-bucket-level-access.
+     * Customer Managed Encryption (CMEK) enforcement config of a bucket.
      * 
* - * Protobuf type {@code google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess} + * Protobuf type {@code + * google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig} */ - public static final class UniformBucketLevelAccess + public static final class CustomerManagedEncryptionEnforcementConfig extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) - UniformBucketLevelAccessOrBuilder { + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) + CustomerManagedEncryptionEnforcementConfigOrBuilder { private static final long serialVersionUID = 0L; - // Use UniformBucketLevelAccess.newBuilder() to construct. - private UniformBucketLevelAccess(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use CustomerManagedEncryptionEnforcementConfig.newBuilder() to construct. + private CustomerManagedEncryptionEnforcementConfig( + com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private UniformBucketLevelAccess() {} + private CustomerManagedEncryptionEnforcementConfig() {} @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new UniformBucketLevelAccess(); + return new CustomerManagedEncryptionEnforcementConfig(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_descriptor; + .internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_fieldAccessorTable + .internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.class, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder.class); + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .class, + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .Builder.class); } private int bitField0_; - public static final int ENABLED_FIELD_NUMBER = 1; - private boolean enabled_ = false; + public static final int RESTRICTED_FIELD_NUMBER = 1; + private boolean restricted_ = false; /** * * *
-       * Optional. If set, access checks only use bucket-level IAM policies or
-       * above.
+       * Whether Customer Managed Encryption (CMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CMEK encryption.
+       * If false or unset, creation of new objects with CMEK encryption is
+       * allowed.
        * 
* - * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * optional bool restricted = 1; * - * @return The enabled. + * @return Whether the restricted field is set. */ @java.lang.Override - public boolean getEnabled() { - return enabled_; + public boolean hasRestricted() { + return ((bitField0_ & 0x00000001) != 0); } - public static final int LOCK_TIME_FIELD_NUMBER = 2; - private com.google.protobuf.Timestamp lockTime_; + /** + * + * + *
+       * Whether Customer Managed Encryption (CMEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CMEK encryption.
+       * If false or unset, creation of new objects with CMEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ + @java.lang.Override + public boolean getRestricted() { + return restricted_; + } + + public static final int EFFECTIVE_TIME_FIELD_NUMBER = 2; + private com.google.protobuf.Timestamp effectiveTime_; /** * * *
-       * Optional. The deadline time for changing
-       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-       * `false`. Mutable until the specified deadline is reached, but not
-       * afterward.
+       * Time from which the config was effective. This is service-provided.
        * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; * - * @return Whether the lockTime field is set. + * @return Whether the effectiveTime field is set. */ @java.lang.Override - public boolean hasLockTime() { - return ((bitField0_ & 0x00000001) != 0); + public boolean hasEffectiveTime() { + return ((bitField0_ & 0x00000002) != 0); } /** * * *
-       * Optional. The deadline time for changing
-       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-       * `false`. Mutable until the specified deadline is reached, but not
-       * afterward.
+       * Time from which the config was effective. This is service-provided.
        * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; * - * @return The lockTime. + * @return The effectiveTime. */ @java.lang.Override - public com.google.protobuf.Timestamp getLockTime() { - return lockTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lockTime_; + public com.google.protobuf.Timestamp getEffectiveTime() { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; } /** * * *
-       * Optional. The deadline time for changing
-       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-       * `false`. Mutable until the specified deadline is reached, but not
-       * afterward.
+       * Time from which the config was effective. This is service-provided.
        * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ @java.lang.Override - public com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder() { - return lockTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lockTime_; + public com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder() { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; } private byte memoizedIsInitialized = -1; @@ -3348,11 +3822,11 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (enabled_ != false) { - output.writeBool(1, enabled_); - } if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(2, getLockTime()); + output.writeBool(1, restricted_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(2, getEffectiveTime()); } getUnknownFields().writeTo(output); } @@ -3363,11 +3837,11 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (enabled_ != false) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, enabled_); - } if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getLockTime()); + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, restricted_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getEffectiveTime()); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -3379,16 +3853,22 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess)) { + if (!(obj + instanceof + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig)) { return super.equals(obj); } - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess other = - (com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) obj; + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig other = + (com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) + obj; - if (getEnabled() != other.getEnabled()) return false; - if (hasLockTime() != other.hasLockTime()) return false; - if (hasLockTime()) { - if (!getLockTime().equals(other.getLockTime())) return false; + if (hasRestricted() != other.hasRestricted()) return false; + if (hasRestricted()) { + if (getRestricted() != other.getRestricted()) return false; + } + if (hasEffectiveTime() != other.hasEffectiveTime()) return false; + if (hasEffectiveTime()) { + if (!getEffectiveTime().equals(other.getEffectiveTime())) return false; } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; @@ -3401,70 +3881,87 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + ENABLED_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnabled()); - if (hasLockTime()) { - hash = (37 * hash) + LOCK_TIME_FIELD_NUMBER; - hash = (53 * hash) + getLockTime().hashCode(); + if (hasRestricted()) { + hash = (37 * hash) + RESTRICTED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getRestricted()); + } + if (hasEffectiveTime()) { + hash = (37 * hash) + EFFECTIVE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getEffectiveTime().hashCode(); } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - java.io.InputStream input) throws java.io.IOException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) @@ -3473,15 +3970,18 @@ public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess pa PARSER, input, extensionRegistry); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } @@ -3496,7 +3996,8 @@ public static Builder newBuilder() { } public static Builder newBuilder( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess prototype) { + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -3516,34 +4017,37 @@ protected Builder newBuilderForType( * * *
-       * Settings for Uniform Bucket level access.
-       * See https://cloud.google.com/storage/docs/uniform-bucket-level-access.
+       * Customer Managed Encryption (CMEK) enforcement config of a bucket.
        * 
* - * Protobuf type {@code google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess} + * Protobuf type {@code + * google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder { + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) + com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfigOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_descriptor; + .internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_fieldAccessorTable + .internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.class, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder.class); + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .class, + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .Builder.class); } // Construct using - // com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.newBuilder() + // com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig.newBuilder() private Builder() { maybeForceBuilderInitialization(); } @@ -3555,7 +4059,7 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { - getLockTimeFieldBuilder(); + getEffectiveTimeFieldBuilder(); } } @@ -3563,11 +4067,11 @@ private void maybeForceBuilderInitialization() { public Builder clear() { super.clear(); bitField0_ = 0; - enabled_ = false; - lockTime_ = null; - if (lockTimeBuilder_ != null) { - lockTimeBuilder_.dispose(); - lockTimeBuilder_ = null; + restricted_ = false; + effectiveTime_ = null; + if (effectiveTimeBuilder_ != null) { + effectiveTimeBuilder_.dispose(); + effectiveTimeBuilder_ = null; } return this; } @@ -3575,19 +4079,21 @@ public Builder clear() { @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_descriptor; + .internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_descriptor; } @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + return com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig .getDefaultInstance(); } @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess build() { - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess result = buildPartial(); + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + build() { + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -3595,9 +4101,12 @@ public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess build() { } @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess buildPartial() { - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess result = - new com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess(this); + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + buildPartial() { + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + result = + new com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig(this); if (bitField0_ != 0) { buildPartial0(result); } @@ -3606,15 +4115,18 @@ public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess buildPart } private void buildPartial0( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess result) { + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + result) { int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000001) != 0)) { - result.enabled_ = enabled_; + result.restricted_ = restricted_; + to_bitField0_ |= 0x00000001; } - int to_bitField0_ = 0; if (((from_bitField0_ & 0x00000002) != 0)) { - result.lockTime_ = lockTimeBuilder_ == null ? lockTime_ : lockTimeBuilder_.build(); - to_bitField0_ |= 0x00000001; + result.effectiveTime_ = + effectiveTimeBuilder_ == null ? effectiveTime_ : effectiveTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; } result.bitField0_ |= to_bitField0_; } @@ -3656,9 +4168,12 @@ public Builder addRepeatedField( @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) { + if (other + instanceof + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) { return mergeFrom( - (com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) other); + (com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) + other); } else { super.mergeFrom(other); return this; @@ -3666,15 +4181,16 @@ public Builder mergeFrom(com.google.protobuf.Message other) { } public Builder mergeFrom( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess other) { + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + other) { if (other - == com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + == com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig .getDefaultInstance()) return this; - if (other.getEnabled() != false) { - setEnabled(other.getEnabled()); + if (other.hasRestricted()) { + setRestricted(other.getRestricted()); } - if (other.hasLockTime()) { - mergeLockTime(other.getLockTime()); + if (other.hasEffectiveTime()) { + mergeEffectiveTime(other.getEffectiveTime()); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -3704,13 +4220,14 @@ public Builder mergeFrom( break; case 8: { - enabled_ = input.readBool(); + restricted_ = input.readBool(); bitField0_ |= 0x00000001; break; } // case 8 case 18: { - input.readMessage(getLockTimeFieldBuilder().getBuilder(), extensionRegistry); + input.readMessage( + getEffectiveTimeFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000002; break; } // case 18 @@ -3733,41 +4250,67 @@ public Builder mergeFrom( private int bitField0_; - private boolean enabled_; + private boolean restricted_; /** * * *
-         * Optional. If set, access checks only use bucket-level IAM policies or
-         * above.
+         * Whether Customer Managed Encryption (CMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CMEK encryption.
+         * If false or unset, creation of new objects with CMEK encryption is
+         * allowed.
          * 
* - * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * optional bool restricted = 1; * - * @return The enabled. + * @return Whether the restricted field is set. */ @java.lang.Override - public boolean getEnabled() { - return enabled_; + public boolean hasRestricted() { + return ((bitField0_ & 0x00000001) != 0); } /** * * *
-         * Optional. If set, access checks only use bucket-level IAM policies or
-         * above.
+         * Whether Customer Managed Encryption (CMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CMEK encryption.
+         * If false or unset, creation of new objects with CMEK encryption is
+         * allowed.
          * 
* - * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * optional bool restricted = 1; * - * @param value The enabled to set. + * @return The restricted. + */ + @java.lang.Override + public boolean getRestricted() { + return restricted_; + } + + /** + * + * + *
+         * Whether Customer Managed Encryption (CMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CMEK encryption.
+         * If false or unset, creation of new objects with CMEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @param value The restricted to set. * @return This builder for chaining. */ - public Builder setEnabled(boolean value) { + public Builder setRestricted(boolean value) { - enabled_ = value; + restricted_ = value; bitField0_ |= 0x00000001; onChanged(); return this; @@ -3777,44 +4320,43 @@ public Builder setEnabled(boolean value) { * * *
-         * Optional. If set, access checks only use bucket-level IAM policies or
-         * above.
+         * Whether Customer Managed Encryption (CMEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CMEK encryption.
+         * If false or unset, creation of new objects with CMEK encryption is
+         * allowed.
          * 
* - * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * optional bool restricted = 1; * * @return This builder for chaining. */ - public Builder clearEnabled() { + public Builder clearRestricted() { bitField0_ = (bitField0_ & ~0x00000001); - enabled_ = false; + restricted_ = false; onChanged(); return this; } - private com.google.protobuf.Timestamp lockTime_; + private com.google.protobuf.Timestamp effectiveTime_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> - lockTimeBuilder_; + effectiveTimeBuilder_; /** * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; * - * @return Whether the lockTime field is set. + * @return Whether the effectiveTime field is set. */ - public boolean hasLockTime() { + public boolean hasEffectiveTime() { return ((bitField0_ & 0x00000002) != 0); } @@ -3822,24 +4364,20 @@ public boolean hasLockTime() { * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; * - * @return The lockTime. + * @return The effectiveTime. */ - public com.google.protobuf.Timestamp getLockTime() { - if (lockTimeBuilder_ == null) { - return lockTime_ == null + public com.google.protobuf.Timestamp getEffectiveTime() { + if (effectiveTimeBuilder_ == null) { + return effectiveTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() - : lockTime_; + : effectiveTime_; } else { - return lockTimeBuilder_.getMessage(); + return effectiveTimeBuilder_.getMessage(); } } @@ -3847,23 +4385,19 @@ public com.google.protobuf.Timestamp getLockTime() { * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ - public Builder setLockTime(com.google.protobuf.Timestamp value) { - if (lockTimeBuilder_ == null) { + public Builder setEffectiveTime(com.google.protobuf.Timestamp value) { + if (effectiveTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - lockTime_ = value; + effectiveTime_ = value; } else { - lockTimeBuilder_.setMessage(value); + effectiveTimeBuilder_.setMessage(value); } bitField0_ |= 0x00000002; onChanged(); @@ -3874,20 +4408,16 @@ public Builder setLockTime(com.google.protobuf.Timestamp value) { * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ - public Builder setLockTime(com.google.protobuf.Timestamp.Builder builderForValue) { - if (lockTimeBuilder_ == null) { - lockTime_ = builderForValue.build(); + public Builder setEffectiveTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (effectiveTimeBuilder_ == null) { + effectiveTime_ = builderForValue.build(); } else { - lockTimeBuilder_.setMessage(builderForValue.build()); + effectiveTimeBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000002; onChanged(); @@ -3898,28 +4428,24 @@ public Builder setLockTime(com.google.protobuf.Timestamp.Builder builderForValue * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ - public Builder mergeLockTime(com.google.protobuf.Timestamp value) { - if (lockTimeBuilder_ == null) { + public Builder mergeEffectiveTime(com.google.protobuf.Timestamp value) { + if (effectiveTimeBuilder_ == null) { if (((bitField0_ & 0x00000002) != 0) - && lockTime_ != null - && lockTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { - getLockTimeBuilder().mergeFrom(value); + && effectiveTime_ != null + && effectiveTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getEffectiveTimeBuilder().mergeFrom(value); } else { - lockTime_ = value; + effectiveTime_ = value; } } else { - lockTimeBuilder_.mergeFrom(value); + effectiveTimeBuilder_.mergeFrom(value); } - if (lockTime_ != null) { + if (effectiveTime_ != null) { bitField0_ |= 0x00000002; onChanged(); } @@ -3930,21 +4456,17 @@ public Builder mergeLockTime(com.google.protobuf.Timestamp value) { * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ - public Builder clearLockTime() { + public Builder clearEffectiveTime() { bitField0_ = (bitField0_ & ~0x00000002); - lockTime_ = null; - if (lockTimeBuilder_ != null) { - lockTimeBuilder_.dispose(); - lockTimeBuilder_ = null; + effectiveTime_ = null; + if (effectiveTimeBuilder_ != null) { + effectiveTimeBuilder_.dispose(); + effectiveTimeBuilder_ = null; } onChanged(); return this; @@ -3954,41 +4476,33 @@ public Builder clearLockTime() { * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ - public com.google.protobuf.Timestamp.Builder getLockTimeBuilder() { + public com.google.protobuf.Timestamp.Builder getEffectiveTimeBuilder() { bitField0_ |= 0x00000002; onChanged(); - return getLockTimeFieldBuilder().getBuilder(); + return getEffectiveTimeFieldBuilder().getBuilder(); } /** * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ - public com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder() { - if (lockTimeBuilder_ != null) { - return lockTimeBuilder_.getMessageOrBuilder(); + public com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder() { + if (effectiveTimeBuilder_ != null) { + return effectiveTimeBuilder_.getMessageOrBuilder(); } else { - return lockTime_ == null + return effectiveTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() - : lockTime_; + : effectiveTime_; } } @@ -3996,30 +4510,26 @@ public com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder() { * * *
-         * Optional. The deadline time for changing
-         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
-         * `false`. Mutable until the specified deadline is reached, but not
-         * afterward.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; - * + * optional .google.protobuf.Timestamp effective_time = 2; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> - getLockTimeFieldBuilder() { - if (lockTimeBuilder_ == null) { - lockTimeBuilder_ = + getEffectiveTimeFieldBuilder() { + if (effectiveTimeBuilder_ == null) { + effectiveTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( - getLockTime(), getParentForChildren(), isClean()); - lockTime_ = null; + getEffectiveTime(), getParentForChildren(), isClean()); + effectiveTime_ = null; } - return lockTimeBuilder_; + return effectiveTimeBuilder_; } @java.lang.Override @@ -4034,1429 +4544,986 @@ public final Builder mergeUnknownFields( return super.mergeUnknownFields(unknownFields); } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) - private static final com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig) + private static final com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess(); + DEFAULT_INSTANCE = + new com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig(); } - public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + public static com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public UniformBucketLevelAccess parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + private static final com.google.protobuf.Parser + PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CustomerManagedEncryptionEnforcementConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser + parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser + getParserForType() { return PARSER; } @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - private int bitField0_; - public static final int UNIFORM_BUCKET_LEVEL_ACCESS_FIELD_NUMBER = 1; - private com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess - uniformBucketLevelAccess_; - - /** - * - * - *
-     * Optional. Bucket restriction options currently enforced on the bucket.
-     * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the uniformBucketLevelAccess field is set. - */ - @java.lang.Override - public boolean hasUniformBucketLevelAccess() { - return ((bitField0_ & 0x00000001) != 0); - } + public interface CustomerSuppliedEncryptionEnforcementConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) + com.google.protobuf.MessageOrBuilder { - /** - * - * - *
-     * Optional. Bucket restriction options currently enforced on the bucket.
-     * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The uniformBucketLevelAccess. - */ - @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess - getUniformBucketLevelAccess() { - return uniformBucketLevelAccess_ == null - ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() - : uniformBucketLevelAccess_; - } + /** + * + * + *
+       * Whether Customer Supplied Encryption (CSEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CSEK encryption.
+       * If false or unset, creation of new objects with CSEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return Whether the restricted field is set. + */ + boolean hasRestricted(); - /** - * - * - *
-     * Optional. Bucket restriction options currently enforced on the bucket.
-     * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder - getUniformBucketLevelAccessOrBuilder() { - return uniformBucketLevelAccess_ == null - ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() - : uniformBucketLevelAccess_; - } + /** + * + * + *
+       * Whether Customer Supplied Encryption (CSEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CSEK encryption.
+       * If false or unset, creation of new objects with CSEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ + boolean getRestricted(); - public static final int PUBLIC_ACCESS_PREVENTION_FIELD_NUMBER = 3; + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return Whether the effectiveTime field is set. + */ + boolean hasEffectiveTime(); - @SuppressWarnings("serial") - private volatile java.lang.Object publicAccessPrevention_ = ""; + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. + */ + com.google.protobuf.Timestamp getEffectiveTime(); - /** - * - * - *
-     * Optional. Whether IAM will enforce public access prevention. Valid values
-     * are "enforced" or "inherited".
-     * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The publicAccessPrevention. - */ - @java.lang.Override - public java.lang.String getPublicAccessPrevention() { - java.lang.Object ref = publicAccessPrevention_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - publicAccessPrevention_ = s; - return s; - } + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder(); } /** * * *
-     * Optional. Whether IAM will enforce public access prevention. Valid values
-     * are "enforced" or "inherited".
+     * Customer Supplied Encryption (CSEK) enforcement config of a bucket.
      * 
* - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for publicAccessPrevention. + * Protobuf type {@code + * google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig} */ - @java.lang.Override - public com.google.protobuf.ByteString getPublicAccessPreventionBytes() { - java.lang.Object ref = publicAccessPrevention_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - publicAccessPrevention_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + public static final class CustomerSuppliedEncryptionEnforcementConfig + extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) + CustomerSuppliedEncryptionEnforcementConfigOrBuilder { + private static final long serialVersionUID = 0L; - private byte memoizedIsInitialized = -1; + // Use CustomerSuppliedEncryptionEnforcementConfig.newBuilder() to construct. + private CustomerSuppliedEncryptionEnforcementConfig( + com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + private CustomerSuppliedEncryptionEnforcementConfig() {} - memoizedIsInitialized = 1; - return true; - } + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new CustomerSuppliedEncryptionEnforcementConfig(); + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(1, getUniformBucketLevelAccess()); + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_descriptor; } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(publicAccessPrevention_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, publicAccessPrevention_); + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .class, + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .Builder.class); } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + private int bitField0_; + public static final int RESTRICTED_FIELD_NUMBER = 1; + private boolean restricted_ = false; - size = 0; - if (((bitField0_ & 0x00000001) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 1, getUniformBucketLevelAccess()); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(publicAccessPrevention_)) { - size += - com.google.protobuf.GeneratedMessageV3.computeStringSize(3, publicAccessPrevention_); + /** + * + * + *
+       * Whether Customer Supplied Encryption (CSEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CSEK encryption.
+       * If false or unset, creation of new objects with CSEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return Whether the restricted field is set. + */ + @java.lang.Override + public boolean hasRestricted() { + return ((bitField0_ & 0x00000001) != 0); } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.storage.v2.Bucket.IamConfig)) { - return super.equals(obj); + /** + * + * + *
+       * Whether Customer Supplied Encryption (CSEK) is restricted for new
+       * objects within the bucket.
+       * If true, new objects can't be created using CSEK encryption.
+       * If false or unset, creation of new objects with CSEK encryption is
+       * allowed.
+       * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ + @java.lang.Override + public boolean getRestricted() { + return restricted_; } - com.google.storage.v2.Bucket.IamConfig other = (com.google.storage.v2.Bucket.IamConfig) obj; - if (hasUniformBucketLevelAccess() != other.hasUniformBucketLevelAccess()) return false; - if (hasUniformBucketLevelAccess()) { - if (!getUniformBucketLevelAccess().equals(other.getUniformBucketLevelAccess())) - return false; - } - if (!getPublicAccessPrevention().equals(other.getPublicAccessPrevention())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + public static final int EFFECTIVE_TIME_FIELD_NUMBER = 2; + private com.google.protobuf.Timestamp effectiveTime_; - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (hasUniformBucketLevelAccess()) { - hash = (37 * hash) + UNIFORM_BUCKET_LEVEL_ACCESS_FIELD_NUMBER; - hash = (53 * hash) + getUniformBucketLevelAccess().hashCode(); + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return Whether the effectiveTime field is set. + */ + @java.lang.Override + public boolean hasEffectiveTime() { + return ((bitField0_ & 0x00000002) != 0); } - hash = (37 * hash) + PUBLIC_ACCESS_PREVENTION_FIELD_NUMBER; - hash = (53 * hash) + getPublicAccessPrevention().hashCode(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } - public static com.google.storage.v2.Bucket.IamConfig parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getEffectiveTime() { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; + } - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
+       * Time from which the config was effective. This is service-provided.
+       * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder() { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; + } - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + private byte memoizedIsInitialized = -1; - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - public static com.google.storage.v2.Bucket.IamConfig parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + memoizedIsInitialized = 1; + return true; + } - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeBool(1, restricted_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(2, getEffectiveTime()); + } + getUnknownFields().writeTo(output); + } - public static com.google.storage.v2.Bucket.IamConfig parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.IamConfig parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); - } - - public static com.google.storage.v2.Bucket.IamConfig parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } - - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } - - public static com.google.storage.v2.Bucket.IamConfig parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } - - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } - - public static Builder newBuilder(com.google.storage.v2.Bucket.IamConfig prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } - - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } - - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } - - /** - * - * - *
-     * Bucket restriction options.
-     * 
- * - * Protobuf type {@code google.storage.v2.Bucket.IamConfig} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.IamConfig) - com.google.storage.v2.Bucket.IamConfigOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_descriptor; + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, restricted_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getEffectiveTime()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; } @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.IamConfig.class, - com.google.storage.v2.Bucket.IamConfig.Builder.class); - } + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj + instanceof + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig other = + (com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) + obj; - // Construct using com.google.storage.v2.Bucket.IamConfig.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + if (hasRestricted() != other.hasRestricted()) return false; + if (hasRestricted()) { + if (getRestricted() != other.getRestricted()) return false; + } + if (hasEffectiveTime() != other.hasEffectiveTime()) return false; + if (hasEffectiveTime()) { + if (!getEffectiveTime().equals(other.getEffectiveTime())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; } - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasRestricted()) { + hash = (37 * hash) + RESTRICTED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getRestricted()); + } + if (hasEffectiveTime()) { + hash = (37 * hash) + EFFECTIVE_TIME_FIELD_NUMBER; + hash = (53 * hash) + getEffectiveTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { - getUniformBucketLevelAccessFieldBuilder(); - } + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - uniformBucketLevelAccess_ = null; - if (uniformBucketLevelAccessBuilder_ != null) { - uniformBucketLevelAccessBuilder_.dispose(); - uniformBucketLevelAccessBuilder_ = null; - } - publicAccessPrevention_ = ""; - return this; + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_IamConfig_descriptor; + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.IamConfig.getDefaultInstance(); + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig build() { - com.google.storage.v2.Bucket.IamConfig result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); } - @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig buildPartial() { - com.google.storage.v2.Bucket.IamConfig result = - new com.google.storage.v2.Bucket.IamConfig(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); } - private void buildPartial0(com.google.storage.v2.Bucket.IamConfig result) { - int from_bitField0_ = bitField0_; - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.uniformBucketLevelAccess_ = - uniformBucketLevelAccessBuilder_ == null - ? uniformBucketLevelAccess_ - : uniformBucketLevelAccessBuilder_.build(); - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.publicAccessPrevention_ = publicAccessPrevention_; - } - result.bitField0_ |= to_bitField0_; + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - @java.lang.Override - public Builder clone() { - return super.clone(); + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); } - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); } @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); + public Builder newBuilderForType() { + return newBuilder(); } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.IamConfig) { - return mergeFrom((com.google.storage.v2.Bucket.IamConfig) other); - } else { - super.mergeFrom(other); - return this; - } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - public Builder mergeFrom(com.google.storage.v2.Bucket.IamConfig other) { - if (other == com.google.storage.v2.Bucket.IamConfig.getDefaultInstance()) return this; - if (other.hasUniformBucketLevelAccess()) { - mergeUniformBucketLevelAccess(other.getUniformBucketLevelAccess()); - } - if (!other.getPublicAccessPrevention().isEmpty()) { - publicAccessPrevention_ = other.publicAccessPrevention_; - bitField0_ |= 0x00000002; - onChanged(); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; + public static Builder newBuilder( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override - public final boolean isInitialized() { - return true; + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - input.readMessage( - getUniformBucketLevelAccessFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 26: - { - publicAccessPrevention_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 26 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } - private int bitField0_; - - private com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess - uniformBucketLevelAccess_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder> - uniformBucketLevelAccessBuilder_; - /** * * *
-       * Optional. Bucket restriction options currently enforced on the bucket.
+       * Customer Supplied Encryption (CSEK) enforcement config of a bucket.
        * 
* - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the uniformBucketLevelAccess field is set. + * Protobuf type {@code + * google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig} */ - public boolean hasUniformBucketLevelAccess() { - return ((bitField0_ & 0x00000001) != 0); - } + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_descriptor; + } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The uniformBucketLevelAccess. - */ - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess - getUniformBucketLevelAccess() { - if (uniformBucketLevelAccessBuilder_ == null) { - return uniformBucketLevelAccess_ == null - ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() - : uniformBucketLevelAccess_; - } else { - return uniformBucketLevelAccessBuilder_.getMessage(); + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig.class, + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig.Builder.class); } - } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setUniformBucketLevelAccess( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess value) { - if (uniformBucketLevelAccessBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - uniformBucketLevelAccess_ = value; - } else { - uniformBucketLevelAccessBuilder_.setMessage(value); + // Construct using + // com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setUniformBucketLevelAccess( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder builderForValue) { - if (uniformBucketLevelAccessBuilder_ == null) { - uniformBucketLevelAccess_ = builderForValue.build(); - } else { - uniformBucketLevelAccessBuilder_.setMessage(builderForValue.build()); + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - bitField0_ |= 0x00000001; - onChanged(); - return this; - } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeUniformBucketLevelAccess( - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess value) { - if (uniformBucketLevelAccessBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0) - && uniformBucketLevelAccess_ != null - && uniformBucketLevelAccess_ - != com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess - .getDefaultInstance()) { - getUniformBucketLevelAccessBuilder().mergeFrom(value); - } else { - uniformBucketLevelAccess_ = value; + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getEffectiveTimeFieldBuilder(); } - } else { - uniformBucketLevelAccessBuilder_.mergeFrom(value); } - if (uniformBucketLevelAccess_ != null) { - bitField0_ |= 0x00000001; - onChanged(); + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + restricted_ = false; + effectiveTime_ = null; + if (effectiveTimeBuilder_ != null) { + effectiveTimeBuilder_.dispose(); + effectiveTimeBuilder_ = null; + } + return this; } - return this; - } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearUniformBucketLevelAccess() { - bitField0_ = (bitField0_ & ~0x00000001); - uniformBucketLevelAccess_ = null; - if (uniformBucketLevelAccessBuilder_ != null) { - uniformBucketLevelAccessBuilder_.dispose(); - uniformBucketLevelAccessBuilder_ = null; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_descriptor; } - onChanged(); - return this; - } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder - getUniformBucketLevelAccessBuilder() { - bitField0_ |= 0x00000001; - onChanged(); - return getUniformBucketLevelAccessFieldBuilder().getBuilder(); - } + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .getDefaultInstance(); + } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder - getUniformBucketLevelAccessOrBuilder() { - if (uniformBucketLevelAccessBuilder_ != null) { - return uniformBucketLevelAccessBuilder_.getMessageOrBuilder(); - } else { - return uniformBucketLevelAccess_ == null - ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() - : uniformBucketLevelAccess_; + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + build() { + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - } - /** - * - * - *
-       * Optional. Bucket restriction options currently enforced on the bucket.
-       * 
- * - * - * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder> - getUniformBucketLevelAccessFieldBuilder() { - if (uniformBucketLevelAccessBuilder_ == null) { - uniformBucketLevelAccessBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder, - com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder>( - getUniformBucketLevelAccess(), getParentForChildren(), isClean()); - uniformBucketLevelAccess_ = null; + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + buildPartial() { + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + result = + new com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; } - return uniformBucketLevelAccessBuilder_; - } - private java.lang.Object publicAccessPrevention_ = ""; - - /** - * - * - *
-       * Optional. Whether IAM will enforce public access prevention. Valid values
-       * are "enforced" or "inherited".
-       * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The publicAccessPrevention. - */ - public java.lang.String getPublicAccessPrevention() { - java.lang.Object ref = publicAccessPrevention_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - publicAccessPrevention_ = s; - return s; - } else { - return (java.lang.String) ref; + private void buildPartial0( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.restricted_ = restricted_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.effectiveTime_ = + effectiveTimeBuilder_ == null ? effectiveTime_ : effectiveTimeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + result.bitField0_ |= to_bitField0_; } - } - /** - * - * - *
-       * Optional. Whether IAM will enforce public access prevention. Valid values
-       * are "enforced" or "inherited".
-       * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for publicAccessPrevention. - */ - public com.google.protobuf.ByteString getPublicAccessPreventionBytes() { - java.lang.Object ref = publicAccessPrevention_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - publicAccessPrevention_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + @java.lang.Override + public Builder clone() { + return super.clone(); } - } - /** - * - * - *
-       * Optional. Whether IAM will enforce public access prevention. Valid values
-       * are "enforced" or "inherited".
-       * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The publicAccessPrevention to set. - * @return This builder for chaining. - */ - public Builder setPublicAccessPrevention(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); } - publicAccessPrevention_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - /** - * - * - *
-       * Optional. Whether IAM will enforce public access prevention. Valid values
-       * are "enforced" or "inherited".
-       * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearPublicAccessPrevention() { - publicAccessPrevention_ = getDefaultInstance().getPublicAccessPrevention(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } - /** - * - * - *
-       * Optional. Whether IAM will enforce public access prevention. Valid values
-       * are "enforced" or "inherited".
-       * 
- * - * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for publicAccessPrevention to set. - * @return This builder for chaining. - */ - public Builder setPublicAccessPreventionBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - checkByteStringIsUtf8(value); - publicAccessPrevention_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.IamConfig) - } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.IamConfig) - private static final com.google.storage.v2.Bucket.IamConfig DEFAULT_INSTANCE; + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other + instanceof + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) { + return mergeFrom( + (com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig) + other); + } else { + super.mergeFrom(other); + return this; + } + } - static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.IamConfig(); - } + public Builder mergeFrom( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + other) { + if (other + == com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .getDefaultInstance()) return this; + if (other.hasRestricted()) { + setRestricted(other.getRestricted()); + } + if (other.hasEffectiveTime()) { + mergeEffectiveTime(other.getEffectiveTime()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - public static com.google.storage.v2.Bucket.IamConfig getDefaultInstance() { - return DEFAULT_INSTANCE; - } + @java.lang.Override + public final boolean isInitialized() { + return true; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public IamConfig parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); } - }; + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + restricted_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + input.readMessage( + getEffectiveTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - public static com.google.protobuf.Parser parser() { - return PARSER; - } + private int bitField0_; - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; - } + private boolean restricted_; - @java.lang.Override - public com.google.storage.v2.Bucket.IamConfig getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } - } + /** + * + * + *
+         * Whether Customer Supplied Encryption (CSEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CSEK encryption.
+         * If false or unset, creation of new objects with CSEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @return Whether the restricted field is set. + */ + @java.lang.Override + public boolean hasRestricted() { + return ((bitField0_ & 0x00000001) != 0); + } - public interface LifecycleOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle) - com.google.protobuf.MessageOrBuilder { + /** + * + * + *
+         * Whether Customer Supplied Encryption (CSEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CSEK encryption.
+         * If false or unset, creation of new objects with CSEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @return The restricted. + */ + @java.lang.Override + public boolean getRestricted() { + return restricted_; + } - /** - * - * - *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
-     * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - java.util.List getRuleList(); + /** + * + * + *
+         * Whether Customer Supplied Encryption (CSEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CSEK encryption.
+         * If false or unset, creation of new objects with CSEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @param value The restricted to set. + * @return This builder for chaining. + */ + public Builder setRestricted(boolean value) { - /** - * - * - *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
-     * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - com.google.storage.v2.Bucket.Lifecycle.Rule getRule(int index); + restricted_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
-     * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - int getRuleCount(); + /** + * + * + *
+         * Whether Customer Supplied Encryption (CSEK) is restricted for new
+         * objects within the bucket.
+         * If true, new objects can't be created using CSEK encryption.
+         * If false or unset, creation of new objects with CSEK encryption is
+         * allowed.
+         * 
+ * + * optional bool restricted = 1; + * + * @return This builder for chaining. + */ + public Builder clearRestricted() { + bitField0_ = (bitField0_ & ~0x00000001); + restricted_ = false; + onChanged(); + return this; + } - /** - * - * - *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
-     * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - java.util.List - getRuleOrBuilderList(); + private com.google.protobuf.Timestamp effectiveTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + effectiveTimeBuilder_; - /** - * - * - *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
-     * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int index); - } + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return Whether the effectiveTime field is set. + */ + public boolean hasEffectiveTime() { + return ((bitField0_ & 0x00000002) != 0); + } - /** - * - * - *
-   * Lifecycle properties of a bucket.
-   * For more information, see https://cloud.google.com/storage/docs/lifecycle.
-   * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle} - */ - public static final class Lifecycle extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Lifecycle) - LifecycleOrBuilder { - private static final long serialVersionUID = 0L; + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + * + * @return The effectiveTime. + */ + public com.google.protobuf.Timestamp getEffectiveTime() { + if (effectiveTimeBuilder_ == null) { + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; + } else { + return effectiveTimeBuilder_.getMessage(); + } + } - // Use Lifecycle.newBuilder() to construct. - private Lifecycle(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder setEffectiveTime(com.google.protobuf.Timestamp value) { + if (effectiveTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + effectiveTime_ = value; + } else { + effectiveTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - private Lifecycle() { - rule_ = java.util.Collections.emptyList(); - } + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder setEffectiveTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (effectiveTimeBuilder_ == null) { + effectiveTime_ = builderForValue.build(); + } else { + effectiveTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Lifecycle(); - } - - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.class, - com.google.storage.v2.Bucket.Lifecycle.Builder.class); - } - - public interface RuleOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle.Rule) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
-       * Optional. The action to take.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the action field is set. - */ - boolean hasAction(); - - /** - * - * - *
-       * Optional. The action to take.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The action. - */ - com.google.storage.v2.Bucket.Lifecycle.Rule.Action getAction(); - - /** - * - * - *
-       * Optional. The action to take.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder getActionOrBuilder(); - - /** - * - * - *
-       * Optional. The condition(s) under which the action will be taken.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the condition field is set. - */ - boolean hasCondition(); - - /** - * - * - *
-       * Optional. The condition(s) under which the action will be taken.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The condition. - */ - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getCondition(); - - /** - * - * - *
-       * Optional. The condition(s) under which the action will be taken.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder getConditionOrBuilder(); - } - - /** - * - * - *
-     * A lifecycle Rule, combining an action to take on an object and a
-     * condition which will trigger that action.
-     * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule} - */ - public static final class Rule extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Lifecycle.Rule) - RuleOrBuilder { - private static final long serialVersionUID = 0L; - - // Use Rule.newBuilder() to construct. - private Rule(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } - - private Rule() {} - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Rule(); - } - - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.Rule.class, - com.google.storage.v2.Bucket.Lifecycle.Rule.Builder.class); - } - - public interface ActionOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle.Rule.Action) - com.google.protobuf.MessageOrBuilder { - - /** - * - * - *
-         * Optional. Type of the action. Currently, only `Delete`,
-         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-         * supported.
-         * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The type. - */ - java.lang.String getType(); - - /** - * - * - *
-         * Optional. Type of the action. Currently, only `Delete`,
-         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-         * supported.
-         * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for type. - */ - com.google.protobuf.ByteString getTypeBytes(); - - /** - * - * - *
-         * Optional. Target storage class. Required iff the type of the action
-         * is SetStorageClass.
-         * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The storageClass. - */ - java.lang.String getStorageClass(); - - /** - * - * - *
-         * Optional. Target storage class. Required iff the type of the action
-         * is SetStorageClass.
-         * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for storageClass. - */ - com.google.protobuf.ByteString getStorageClassBytes(); - } - - /** - * - * - *
-       * An action to take on an object.
-       * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule.Action} - */ - public static final class Action extends com.google.protobuf.GeneratedMessageV3 - implements - // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Lifecycle.Rule.Action) - ActionOrBuilder { - private static final long serialVersionUID = 0L; - - // Use Action.newBuilder() to construct. - private Action(com.google.protobuf.GeneratedMessageV3.Builder builder) { - super(builder); - } - - private Action() { - type_ = ""; - storageClass_ = ""; - } - - @java.lang.Override - @SuppressWarnings({"unused"}) - protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Action(); - } - - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_descriptor; - } - - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.class, - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder.class); - } - - public static final int TYPE_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object type_ = ""; + /** + * + * + *
+         * Time from which the config was effective. This is service-provided.
+         * 
+ * + * optional .google.protobuf.Timestamp effective_time = 2; + */ + public Builder mergeEffectiveTime(com.google.protobuf.Timestamp value) { + if (effectiveTimeBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && effectiveTime_ != null + && effectiveTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getEffectiveTimeBuilder().mergeFrom(value); + } else { + effectiveTime_ = value; + } + } else { + effectiveTimeBuilder_.mergeFrom(value); + } + if (effectiveTime_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } /** * * *
-         * Optional. Type of the action. Currently, only `Delete`,
-         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-         * supported.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The type. + * optional .google.protobuf.Timestamp effective_time = 2; */ - @java.lang.Override - public java.lang.String getType() { - java.lang.Object ref = type_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - type_ = s; - return s; + public Builder clearEffectiveTime() { + bitField0_ = (bitField0_ & ~0x00000002); + effectiveTime_ = null; + if (effectiveTimeBuilder_ != null) { + effectiveTimeBuilder_.dispose(); + effectiveTimeBuilder_ = null; } + onChanged(); + return this; } /** * * *
-         * Optional. Type of the action. Currently, only `Delete`,
-         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-         * supported.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for type. + * optional .google.protobuf.Timestamp effective_time = 2; */ - @java.lang.Override - public com.google.protobuf.ByteString getTypeBytes() { - java.lang.Object ref = type_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - type_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public com.google.protobuf.Timestamp.Builder getEffectiveTimeBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getEffectiveTimeFieldBuilder().getBuilder(); } - public static final int STORAGE_CLASS_FIELD_NUMBER = 2; - - @SuppressWarnings("serial") - private volatile java.lang.Object storageClass_ = ""; - /** * * *
-         * Optional. Target storage class. Required iff the type of the action
-         * is SetStorageClass.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The storageClass. + * optional .google.protobuf.Timestamp effective_time = 2; */ - @java.lang.Override - public java.lang.String getStorageClass() { - java.lang.Object ref = storageClass_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; + public com.google.protobuf.TimestampOrBuilder getEffectiveTimeOrBuilder() { + if (effectiveTimeBuilder_ != null) { + return effectiveTimeBuilder_.getMessageOrBuilder(); } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - storageClass_ = s; - return s; + return effectiveTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : effectiveTime_; } } @@ -5464,811 +5531,5100 @@ public java.lang.String getStorageClass() { * * *
-         * Optional. Target storage class. Required iff the type of the action
-         * is SetStorageClass.
+         * Time from which the config was effective. This is service-provided.
          * 
* - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for storageClass. + * optional .google.protobuf.Timestamp effective_time = 2; */ - @java.lang.Override - public com.google.protobuf.ByteString getStorageClassBytes() { - java.lang.Object ref = storageClass_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - storageClass_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getEffectiveTimeFieldBuilder() { + if (effectiveTimeBuilder_ == null) { + effectiveTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getEffectiveTime(), getParentForChildren(), isClean()); + effectiveTime_ = null; } - } - - private byte memoizedIsInitialized = -1; - - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; - - memoizedIsInitialized = 1; - return true; + return effectiveTimeBuilder_; } @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) - throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, type_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(storageClass_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, storageClass_); - } - getUnknownFields().writeTo(output); + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, type_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(storageClass_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, storageClass_); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Action)) { - return super.equals(obj); - } - com.google.storage.v2.Bucket.Lifecycle.Rule.Action other = - (com.google.storage.v2.Bucket.Lifecycle.Rule.Action) obj; + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) + } - if (!getType().equals(other.getType())) return false; - if (!getStorageClass().equals(other.getStorageClass())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig) + private static final com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + DEFAULT_INSTANCE; - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + TYPE_FIELD_NUMBER; - hash = (53 * hash) + getType().hashCode(); - hash = (37 * hash) + STORAGE_CLASS_FIELD_NUMBER; - hash = (53 * hash) + getStorageClass().hashCode(); - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + static { + DEFAULT_INSTANCE = + new com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig(); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + public static com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig + getDefaultInstance() { + return DEFAULT_INSTANCE; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private static final com.google.protobuf.Parser + PARSER = + new com.google.protobuf.AbstractParser< + CustomerSuppliedEncryptionEnforcementConfig>() { + @java.lang.Override + public CustomerSuppliedEncryptionEnforcementConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + public static com.google.protobuf.Parser + parser() { + return PARSER; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + @java.lang.Override + public com.google.protobuf.Parser + getParserForType() { + return PARSER; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private int bitField0_; + public static final int DEFAULT_KMS_KEY_FIELD_NUMBER = 1; - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + @SuppressWarnings("serial") + private volatile java.lang.Object defaultKmsKey_ = ""; - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
+     * Optional. The name of the Cloud KMS key that will be used to encrypt
+     * objects inserted into this bucket, if no encryption method is specified.
+     * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The defaultKmsKey. + */ + @java.lang.Override + public java.lang.String getDefaultKmsKey() { + java.lang.Object ref = defaultKmsKey_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + defaultKmsKey_ = s; + return s; + } + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input); - } + /** + * + * + *
+     * Optional. The name of the Cloud KMS key that will be used to encrypt
+     * objects inserted into this bucket, if no encryption method is specified.
+     * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for defaultKmsKey. + */ + @java.lang.Override + public com.google.protobuf.ByteString getDefaultKmsKeyBytes() { + java.lang.Object ref = defaultKmsKey_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + defaultKmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + public static final int GOOGLE_MANAGED_ENCRYPTION_ENFORCEMENT_CONFIG_FIELD_NUMBER = 2; + private com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + googleManagedEncryptionEnforcementConfig_; - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with GMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the googleManagedEncryptionEnforcementConfig field is set. + */ + @java.lang.Override + public boolean hasGoogleManagedEncryptionEnforcementConfig() { + return ((bitField0_ & 0x00000001) != 0); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with GMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The googleManagedEncryptionEnforcementConfig. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + getGoogleManagedEncryptionEnforcementConfig() { + return googleManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .getDefaultInstance() + : googleManagedEncryptionEnforcementConfig_; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with GMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfigOrBuilder + getGoogleManagedEncryptionEnforcementConfigOrBuilder() { + return googleManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .getDefaultInstance() + : googleManagedEncryptionEnforcementConfig_; + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + public static final int CUSTOMER_MANAGED_ENCRYPTION_ENFORCEMENT_CONFIG_FIELD_NUMBER = 3; + private com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + customerManagedEncryptionEnforcementConfig_; - public static Builder newBuilder( - com.google.storage.v2.Bucket.Lifecycle.Rule.Action prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with CMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the customerManagedEncryptionEnforcementConfig field is set. + */ + @java.lang.Override + public boolean hasCustomerManagedEncryptionEnforcementConfig() { + return ((bitField0_ & 0x00000002) != 0); + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with CMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The customerManagedEncryptionEnforcementConfig. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + getCustomerManagedEncryptionEnforcementConfig() { + return customerManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .getDefaultInstance() + : customerManagedEncryptionEnforcementConfig_; + } - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + /** + * + * + *
+     * Optional. If omitted, then new objects with CMEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfigOrBuilder + getCustomerManagedEncryptionEnforcementConfigOrBuilder() { + return customerManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .getDefaultInstance() + : customerManagedEncryptionEnforcementConfig_; + } - /** - * - * - *
-         * An action to take on an object.
-         * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule.Action} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle.Rule.Action) - com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_descriptor; - } + public static final int CUSTOMER_SUPPLIED_ENCRYPTION_ENFORCEMENT_CONFIG_FIELD_NUMBER = 4; + private com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + customerSuppliedEncryptionEnforcementConfig_; - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.class, - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder.class); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with CSEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the customerSuppliedEncryptionEnforcementConfig field is set. + */ + @java.lang.Override + public boolean hasCustomerSuppliedEncryptionEnforcementConfig() { + return ((bitField0_ & 0x00000004) != 0); + } - // Construct using com.google.storage.v2.Bucket.Lifecycle.Rule.Action.newBuilder() - private Builder() {} + /** + * + * + *
+     * Optional. If omitted, then new objects with CSEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The customerSuppliedEncryptionEnforcementConfig. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + getCustomerSuppliedEncryptionEnforcementConfig() { + return customerSuppliedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .getDefaultInstance() + : customerSuppliedEncryptionEnforcementConfig_; + } - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - } + /** + * + * + *
+     * Optional. If omitted, then new objects with CSEK encryption-type is
+     * allowed. If set, then new objects created in this bucket must comply with
+     * enforcement config. Changing this has no effect on existing objects; it
+     * applies to new objects only.
+     * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfigOrBuilder + getCustomerSuppliedEncryptionEnforcementConfigOrBuilder() { + return customerSuppliedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .getDefaultInstance() + : customerSuppliedEncryptionEnforcementConfig_; + } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - type_ = ""; - storageClass_ = ""; - return this; - } + private byte memoizedIsInitialized = -1; - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_descriptor; - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance(); - } + memoizedIsInitialized = 1; + return true; + } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action build() { - com.google.storage.v2.Bucket.Lifecycle.Rule.Action result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(defaultKmsKey_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, defaultKmsKey_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getGoogleManagedEncryptionEnforcementConfig()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(3, getCustomerManagedEncryptionEnforcementConfig()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeMessage(4, getCustomerSuppliedEncryptionEnforcementConfig()); + } + getUnknownFields().writeTo(output); + } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action buildPartial() { - com.google.storage.v2.Bucket.Lifecycle.Rule.Action result = - new com.google.storage.v2.Bucket.Lifecycle.Rule.Action(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle.Rule.Action result) { - int from_bitField0_ = bitField0_; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.type_ = type_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.storageClass_ = storageClass_; - } - } + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(defaultKmsKey_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, defaultKmsKey_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 2, getGoogleManagedEncryptionEnforcementConfig()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 3, getCustomerManagedEncryptionEnforcementConfig()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 4, getCustomerSuppliedEncryptionEnforcementConfig()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - @java.lang.Override - public Builder clone() { - return super.clone(); - } + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.Bucket.Encryption)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.Encryption other = (com.google.storage.v2.Bucket.Encryption) obj; - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); - } + if (!getDefaultKmsKey().equals(other.getDefaultKmsKey())) return false; + if (hasGoogleManagedEncryptionEnforcementConfig() + != other.hasGoogleManagedEncryptionEnforcementConfig()) return false; + if (hasGoogleManagedEncryptionEnforcementConfig()) { + if (!getGoogleManagedEncryptionEnforcementConfig() + .equals(other.getGoogleManagedEncryptionEnforcementConfig())) return false; + } + if (hasCustomerManagedEncryptionEnforcementConfig() + != other.hasCustomerManagedEncryptionEnforcementConfig()) return false; + if (hasCustomerManagedEncryptionEnforcementConfig()) { + if (!getCustomerManagedEncryptionEnforcementConfig() + .equals(other.getCustomerManagedEncryptionEnforcementConfig())) return false; + } + if (hasCustomerSuppliedEncryptionEnforcementConfig() + != other.hasCustomerSuppliedEncryptionEnforcementConfig()) return false; + if (hasCustomerSuppliedEncryptionEnforcementConfig()) { + if (!getCustomerSuppliedEncryptionEnforcementConfig() + .equals(other.getCustomerSuppliedEncryptionEnforcementConfig())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + DEFAULT_KMS_KEY_FIELD_NUMBER; + hash = (53 * hash) + getDefaultKmsKey().hashCode(); + if (hasGoogleManagedEncryptionEnforcementConfig()) { + hash = (37 * hash) + GOOGLE_MANAGED_ENCRYPTION_ENFORCEMENT_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getGoogleManagedEncryptionEnforcementConfig().hashCode(); + } + if (hasCustomerManagedEncryptionEnforcementConfig()) { + hash = (37 * hash) + CUSTOMER_MANAGED_ENCRYPTION_ENFORCEMENT_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getCustomerManagedEncryptionEnforcementConfig().hashCode(); + } + if (hasCustomerSuppliedEncryptionEnforcementConfig()) { + hash = (37 * hash) + CUSTOMER_SUPPLIED_ENCRYPTION_ENFORCEMENT_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getCustomerSuppliedEncryptionEnforcementConfig().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } + public static com.google.storage.v2.Bucket.Encryption parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } + public static com.google.storage.v2.Bucket.Encryption parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); - } + public static com.google.storage.v2.Bucket.Encryption parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Action) { - return mergeFrom((com.google.storage.v2.Bucket.Lifecycle.Rule.Action) other); - } else { - super.mergeFrom(other); - return this; - } - } + public static com.google.storage.v2.Bucket.Encryption parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle.Rule.Action other) { - if (other == com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance()) - return this; - if (!other.getType().isEmpty()) { - type_ = other.type_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getStorageClass().isEmpty()) { - storageClass_ = other.storageClass_; - bitField0_ |= 0x00000002; - onChanged(); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } + public static com.google.storage.v2.Bucket.Encryption parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - @java.lang.Override - public final boolean isInitialized() { - return true; - } + public static com.google.storage.v2.Bucket.Encryption parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - type_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - storageClass_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } + public static com.google.storage.v2.Bucket.Encryption parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - private int bitField0_; + public static com.google.storage.v2.Bucket.Encryption parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - private java.lang.Object type_ = ""; + public static com.google.storage.v2.Bucket.Encryption parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } - /** - * - * - *
-           * Optional. Type of the action. Currently, only `Delete`,
-           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-           * supported.
-           * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The type. - */ - public java.lang.String getType() { - java.lang.Object ref = type_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - type_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + public static com.google.storage.v2.Bucket.Encryption parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
-           * Optional. Type of the action. Currently, only `Delete`,
-           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-           * supported.
-           * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for type. - */ - public com.google.protobuf.ByteString getTypeBytes() { - java.lang.Object ref = type_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - type_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - /** - * - * - *
-           * Optional. Type of the action. Currently, only `Delete`,
-           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-           * supported.
-           * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The type to set. - * @return This builder for chaining. - */ - public Builder setType(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - type_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + public static com.google.storage.v2.Bucket.Encryption parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - /** - * - * - *
-           * Optional. Type of the action. Currently, only `Delete`,
-           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-           * supported.
-           * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearType() { - type_ = getDefaultInstance().getType(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + public static com.google.storage.v2.Bucket.Encryption parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - /** - * - * - *
-           * Optional. Type of the action. Currently, only `Delete`,
-           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
-           * supported.
-           * 
- * - * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for type to set. - * @return This builder for chaining. - */ - public Builder setTypeBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - type_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - private java.lang.Object storageClass_ = ""; + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - /** - * - * - *
-           * Optional. Target storage class. Required iff the type of the action
-           * is SetStorageClass.
-           * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The storageClass. - */ - public java.lang.String getStorageClass() { - java.lang.Object ref = storageClass_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - storageClass_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } + public static Builder newBuilder(com.google.storage.v2.Bucket.Encryption prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - /** - * - * - *
-           * Optional. Target storage class. Required iff the type of the action
-           * is SetStorageClass.
-           * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for storageClass. - */ - public com.google.protobuf.ByteString getStorageClassBytes() { - java.lang.Object ref = storageClass_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - storageClass_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - /** - * - * - *
-           * Optional. Target storage class. Required iff the type of the action
-           * is SetStorageClass.
-           * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The storageClass to set. - * @return This builder for chaining. - */ - public Builder setStorageClass(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - storageClass_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - /** - * - * - *
-           * Optional. Target storage class. Required iff the type of the action
-           * is SetStorageClass.
-           * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearStorageClass() { - storageClass_ = getDefaultInstance().getStorageClass(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } + /** + * + * + *
+     * Encryption properties of a bucket.
+     * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Encryption} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Encryption) + com.google.storage.v2.Bucket.EncryptionOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_descriptor; + } - /** - * - * - *
-           * Optional. Target storage class. Required iff the type of the action
-           * is SetStorageClass.
-           * 
- * - * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for storageClass to set. - * @return This builder for chaining. - */ - public Builder setStorageClassBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - storageClass_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Encryption.class, + com.google.storage.v2.Bucket.Encryption.Builder.class); + } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); - } + // Construct using com.google.storage.v2.Bucket.Encryption.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); - } + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle.Rule.Action) + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getGoogleManagedEncryptionEnforcementConfigFieldBuilder(); + getCustomerManagedEncryptionEnforcementConfigFieldBuilder(); + getCustomerSuppliedEncryptionEnforcementConfigFieldBuilder(); } + } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule.Action) - private static final com.google.storage.v2.Bucket.Lifecycle.Rule.Action DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle.Rule.Action(); + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + defaultKmsKey_ = ""; + googleManagedEncryptionEnforcementConfig_ = null; + if (googleManagedEncryptionEnforcementConfigBuilder_ != null) { + googleManagedEncryptionEnforcementConfigBuilder_.dispose(); + googleManagedEncryptionEnforcementConfigBuilder_ = null; } - - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action getDefaultInstance() { - return DEFAULT_INSTANCE; + customerManagedEncryptionEnforcementConfig_ = null; + if (customerManagedEncryptionEnforcementConfigBuilder_ != null) { + customerManagedEncryptionEnforcementConfigBuilder_.dispose(); + customerManagedEncryptionEnforcementConfigBuilder_ = null; } + customerSuppliedEncryptionEnforcementConfig_ = null; + if (customerSuppliedEncryptionEnforcementConfigBuilder_ != null) { + customerSuppliedEncryptionEnforcementConfigBuilder_.dispose(); + customerSuppliedEncryptionEnforcementConfigBuilder_ = null; + } + return this; + } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Action parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Encryption_descriptor; + } - public static com.google.protobuf.Parser parser() { - return PARSER; + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Encryption.getDefaultInstance(); + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption build() { + com.google.storage.v2.Bucket.Encryption result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; + } - @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption buildPartial() { + com.google.storage.v2.Bucket.Encryption result = + new com.google.storage.v2.Bucket.Encryption(this); + if (bitField0_ != 0) { + buildPartial0(result); } + onBuilt(); + return result; + } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + private void buildPartial0(com.google.storage.v2.Bucket.Encryption result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.defaultKmsKey_ = defaultKmsKey_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.googleManagedEncryptionEnforcementConfig_ = + googleManagedEncryptionEnforcementConfigBuilder_ == null + ? googleManagedEncryptionEnforcementConfig_ + : googleManagedEncryptionEnforcementConfigBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.customerManagedEncryptionEnforcementConfig_ = + customerManagedEncryptionEnforcementConfigBuilder_ == null + ? customerManagedEncryptionEnforcementConfig_ + : customerManagedEncryptionEnforcementConfigBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.customerSuppliedEncryptionEnforcementConfig_ = + customerSuppliedEncryptionEnforcementConfigBuilder_ == null + ? customerSuppliedEncryptionEnforcementConfig_ + : customerSuppliedEncryptionEnforcementConfigBuilder_.build(); + to_bitField0_ |= 0x00000004; } + result.bitField0_ |= to_bitField0_; } - public interface ConditionOrBuilder - extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle.Rule.Condition) - com.google.protobuf.MessageOrBuilder { + @java.lang.Override + public Builder clone() { + return super.clone(); + } - /** - * - * - *
-         * Age of an object (in days). This condition is satisfied when an
-         * object reaches the specified age.
-         * A value of 0 indicates that all objects immediately match this
-         * condition.
-         * 
- * - * optional int32 age_days = 1; - * - * @return Whether the ageDays field is set. - */ - boolean hasAgeDays(); + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } - /** - * - * - *
-         * Age of an object (in days). This condition is satisfied when an
-         * object reaches the specified age.
-         * A value of 0 indicates that all objects immediately match this
-         * condition.
-         * 
- * - * optional int32 age_days = 1; - * - * @return The ageDays. - */ - int getAgeDays(); + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } - /** - * - * - *
-         * Optional. This condition is satisfied when an object is created
-         * before midnight of the specified date in UTC.
-         * 
- * - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the createdBefore field is set. - */ - boolean hasCreatedBefore(); + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - /** - * - * - *
-         * Optional. This condition is satisfied when an object is created
-         * before midnight of the specified date in UTC.
-         * 
- * - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The createdBefore. - */ - com.google.type.Date getCreatedBefore(); + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } - /** - * - * - *
-         * Optional. This condition is satisfied when an object is created
-         * before midnight of the specified date in UTC.
-         * 
- * - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - com.google.type.DateOrBuilder getCreatedBeforeOrBuilder(); + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } - /** - * - * - *
-         * Relevant only for versioned objects. If the value is
-         * `true`, this condition matches live objects; if the value
-         * is `false`, it matches archived objects.
-         * 
- * - * optional bool is_live = 3; - * - * @return Whether the isLive field is set. - */ - boolean hasIsLive(); + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.Encryption) { + return mergeFrom((com.google.storage.v2.Bucket.Encryption) other); + } else { + super.mergeFrom(other); + return this; + } + } - /** - * - * - *
-         * Relevant only for versioned objects. If the value is
-         * `true`, this condition matches live objects; if the value
-         * is `false`, it matches archived objects.
-         * 
- * - * optional bool is_live = 3; - * - * @return The isLive. - */ - boolean getIsLive(); + public Builder mergeFrom(com.google.storage.v2.Bucket.Encryption other) { + if (other == com.google.storage.v2.Bucket.Encryption.getDefaultInstance()) return this; + if (!other.getDefaultKmsKey().isEmpty()) { + defaultKmsKey_ = other.defaultKmsKey_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (other.hasGoogleManagedEncryptionEnforcementConfig()) { + mergeGoogleManagedEncryptionEnforcementConfig( + other.getGoogleManagedEncryptionEnforcementConfig()); + } + if (other.hasCustomerManagedEncryptionEnforcementConfig()) { + mergeCustomerManagedEncryptionEnforcementConfig( + other.getCustomerManagedEncryptionEnforcementConfig()); + } + if (other.hasCustomerSuppliedEncryptionEnforcementConfig()) { + mergeCustomerSuppliedEncryptionEnforcementConfig( + other.getCustomerSuppliedEncryptionEnforcementConfig()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + defaultKmsKey_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + input.readMessage( + getGoogleManagedEncryptionEnforcementConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + input.readMessage( + getCustomerManagedEncryptionEnforcementConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 34: + { + input.readMessage( + getCustomerSuppliedEncryptionEnforcementConfigFieldBuilder().getBuilder(), + extensionRegistry); + bitField0_ |= 0x00000008; + break; + } // case 34 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object defaultKmsKey_ = ""; + + /** + * + * + *
+       * Optional. The name of the Cloud KMS key that will be used to encrypt
+       * objects inserted into this bucket, if no encryption method is specified.
+       * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The defaultKmsKey. + */ + public java.lang.String getDefaultKmsKey() { + java.lang.Object ref = defaultKmsKey_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + defaultKmsKey_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+       * Optional. The name of the Cloud KMS key that will be used to encrypt
+       * objects inserted into this bucket, if no encryption method is specified.
+       * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The bytes for defaultKmsKey. + */ + public com.google.protobuf.ByteString getDefaultKmsKeyBytes() { + java.lang.Object ref = defaultKmsKey_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + defaultKmsKey_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+       * Optional. The name of the Cloud KMS key that will be used to encrypt
+       * objects inserted into this bucket, if no encryption method is specified.
+       * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The defaultKmsKey to set. + * @return This builder for chaining. + */ + public Builder setDefaultKmsKey(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + defaultKmsKey_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. The name of the Cloud KMS key that will be used to encrypt
+       * objects inserted into this bucket, if no encryption method is specified.
+       * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearDefaultKmsKey() { + defaultKmsKey_ = getDefaultInstance().getDefaultKmsKey(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. The name of the Cloud KMS key that will be used to encrypt
+       * objects inserted into this bucket, if no encryption method is specified.
+       * 
+ * + * + * string default_kms_key = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes for defaultKmsKey to set. + * @return This builder for chaining. + */ + public Builder setDefaultKmsKeyBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + defaultKmsKey_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + googleManagedEncryptionEnforcementConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfigOrBuilder> + googleManagedEncryptionEnforcementConfigBuilder_; + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the googleManagedEncryptionEnforcementConfig field is set. + */ + public boolean hasGoogleManagedEncryptionEnforcementConfig() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The googleManagedEncryptionEnforcementConfig. + */ + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + getGoogleManagedEncryptionEnforcementConfig() { + if (googleManagedEncryptionEnforcementConfigBuilder_ == null) { + return googleManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .getDefaultInstance() + : googleManagedEncryptionEnforcementConfig_; + } else { + return googleManagedEncryptionEnforcementConfigBuilder_.getMessage(); + } + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setGoogleManagedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig value) { + if (googleManagedEncryptionEnforcementConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + googleManagedEncryptionEnforcementConfig_ = value; + } else { + googleManagedEncryptionEnforcementConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setGoogleManagedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig.Builder + builderForValue) { + if (googleManagedEncryptionEnforcementConfigBuilder_ == null) { + googleManagedEncryptionEnforcementConfig_ = builderForValue.build(); + } else { + googleManagedEncryptionEnforcementConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeGoogleManagedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig value) { + if (googleManagedEncryptionEnforcementConfigBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && googleManagedEncryptionEnforcementConfig_ != null + && googleManagedEncryptionEnforcementConfig_ + != com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfig.getDefaultInstance()) { + getGoogleManagedEncryptionEnforcementConfigBuilder().mergeFrom(value); + } else { + googleManagedEncryptionEnforcementConfig_ = value; + } + } else { + googleManagedEncryptionEnforcementConfigBuilder_.mergeFrom(value); + } + if (googleManagedEncryptionEnforcementConfig_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearGoogleManagedEncryptionEnforcementConfig() { + bitField0_ = (bitField0_ & ~0x00000002); + googleManagedEncryptionEnforcementConfig_ = null; + if (googleManagedEncryptionEnforcementConfigBuilder_ != null) { + googleManagedEncryptionEnforcementConfigBuilder_.dispose(); + googleManagedEncryptionEnforcementConfigBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .Builder + getGoogleManagedEncryptionEnforcementConfigBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getGoogleManagedEncryptionEnforcementConfigFieldBuilder().getBuilder(); + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfigOrBuilder + getGoogleManagedEncryptionEnforcementConfigOrBuilder() { + if (googleManagedEncryptionEnforcementConfigBuilder_ != null) { + return googleManagedEncryptionEnforcementConfigBuilder_.getMessageOrBuilder(); + } else { + return googleManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .getDefaultInstance() + : googleManagedEncryptionEnforcementConfig_; + } + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with GMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig google_managed_encryption_enforcement_config = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfigOrBuilder> + getGoogleManagedEncryptionEnforcementConfigFieldBuilder() { + if (googleManagedEncryptionEnforcementConfigBuilder_ == null) { + googleManagedEncryptionEnforcementConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.GoogleManagedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .GoogleManagedEncryptionEnforcementConfigOrBuilder>( + getGoogleManagedEncryptionEnforcementConfig(), getParentForChildren(), isClean()); + googleManagedEncryptionEnforcementConfig_ = null; + } + return googleManagedEncryptionEnforcementConfigBuilder_; + } + + private com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + customerManagedEncryptionEnforcementConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfigOrBuilder> + customerManagedEncryptionEnforcementConfigBuilder_; + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the customerManagedEncryptionEnforcementConfig field is set. + */ + public boolean hasCustomerManagedEncryptionEnforcementConfig() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The customerManagedEncryptionEnforcementConfig. + */ + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + getCustomerManagedEncryptionEnforcementConfig() { + if (customerManagedEncryptionEnforcementConfigBuilder_ == null) { + return customerManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .getDefaultInstance() + : customerManagedEncryptionEnforcementConfig_; + } else { + return customerManagedEncryptionEnforcementConfigBuilder_.getMessage(); + } + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCustomerManagedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + value) { + if (customerManagedEncryptionEnforcementConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + customerManagedEncryptionEnforcementConfig_ = value; + } else { + customerManagedEncryptionEnforcementConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCustomerManagedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig.Builder + builderForValue) { + if (customerManagedEncryptionEnforcementConfigBuilder_ == null) { + customerManagedEncryptionEnforcementConfig_ = builderForValue.build(); + } else { + customerManagedEncryptionEnforcementConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeCustomerManagedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + value) { + if (customerManagedEncryptionEnforcementConfigBuilder_ == null) { + if (((bitField0_ & 0x00000004) != 0) + && customerManagedEncryptionEnforcementConfig_ != null + && customerManagedEncryptionEnforcementConfig_ + != com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig.getDefaultInstance()) { + getCustomerManagedEncryptionEnforcementConfigBuilder().mergeFrom(value); + } else { + customerManagedEncryptionEnforcementConfig_ = value; + } + } else { + customerManagedEncryptionEnforcementConfigBuilder_.mergeFrom(value); + } + if (customerManagedEncryptionEnforcementConfig_ != null) { + bitField0_ |= 0x00000004; + onChanged(); + } + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearCustomerManagedEncryptionEnforcementConfig() { + bitField0_ = (bitField0_ & ~0x00000004); + customerManagedEncryptionEnforcementConfig_ = null; + if (customerManagedEncryptionEnforcementConfigBuilder_ != null) { + customerManagedEncryptionEnforcementConfigBuilder_.dispose(); + customerManagedEncryptionEnforcementConfigBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .Builder + getCustomerManagedEncryptionEnforcementConfigBuilder() { + bitField0_ |= 0x00000004; + onChanged(); + return getCustomerManagedEncryptionEnforcementConfigFieldBuilder().getBuilder(); + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfigOrBuilder + getCustomerManagedEncryptionEnforcementConfigOrBuilder() { + if (customerManagedEncryptionEnforcementConfigBuilder_ != null) { + return customerManagedEncryptionEnforcementConfigBuilder_.getMessageOrBuilder(); + } else { + return customerManagedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .getDefaultInstance() + : customerManagedEncryptionEnforcementConfig_; + } + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CMEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig customer_managed_encryption_enforcement_config = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfigOrBuilder> + getCustomerManagedEncryptionEnforcementConfigFieldBuilder() { + if (customerManagedEncryptionEnforcementConfigBuilder_ == null) { + customerManagedEncryptionEnforcementConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.CustomerManagedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .CustomerManagedEncryptionEnforcementConfigOrBuilder>( + getCustomerManagedEncryptionEnforcementConfig(), + getParentForChildren(), + isClean()); + customerManagedEncryptionEnforcementConfig_ = null; + } + return customerManagedEncryptionEnforcementConfigBuilder_; + } + + private com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + customerSuppliedEncryptionEnforcementConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfigOrBuilder> + customerSuppliedEncryptionEnforcementConfigBuilder_; + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the customerSuppliedEncryptionEnforcementConfig field is set. + */ + public boolean hasCustomerSuppliedEncryptionEnforcementConfig() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The customerSuppliedEncryptionEnforcementConfig. + */ + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + getCustomerSuppliedEncryptionEnforcementConfig() { + if (customerSuppliedEncryptionEnforcementConfigBuilder_ == null) { + return customerSuppliedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .getDefaultInstance() + : customerSuppliedEncryptionEnforcementConfig_; + } else { + return customerSuppliedEncryptionEnforcementConfigBuilder_.getMessage(); + } + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCustomerSuppliedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + value) { + if (customerSuppliedEncryptionEnforcementConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + customerSuppliedEncryptionEnforcementConfig_ = value; + } else { + customerSuppliedEncryptionEnforcementConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCustomerSuppliedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .Builder + builderForValue) { + if (customerSuppliedEncryptionEnforcementConfigBuilder_ == null) { + customerSuppliedEncryptionEnforcementConfig_ = builderForValue.build(); + } else { + customerSuppliedEncryptionEnforcementConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeCustomerSuppliedEncryptionEnforcementConfig( + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + value) { + if (customerSuppliedEncryptionEnforcementConfigBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0) + && customerSuppliedEncryptionEnforcementConfig_ != null + && customerSuppliedEncryptionEnforcementConfig_ + != com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig.getDefaultInstance()) { + getCustomerSuppliedEncryptionEnforcementConfigBuilder().mergeFrom(value); + } else { + customerSuppliedEncryptionEnforcementConfig_ = value; + } + } else { + customerSuppliedEncryptionEnforcementConfigBuilder_.mergeFrom(value); + } + if (customerSuppliedEncryptionEnforcementConfig_ != null) { + bitField0_ |= 0x00000008; + onChanged(); + } + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearCustomerSuppliedEncryptionEnforcementConfig() { + bitField0_ = (bitField0_ & ~0x00000008); + customerSuppliedEncryptionEnforcementConfig_ = null; + if (customerSuppliedEncryptionEnforcementConfigBuilder_ != null) { + customerSuppliedEncryptionEnforcementConfigBuilder_.dispose(); + customerSuppliedEncryptionEnforcementConfigBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .Builder + getCustomerSuppliedEncryptionEnforcementConfigBuilder() { + bitField0_ |= 0x00000008; + onChanged(); + return getCustomerSuppliedEncryptionEnforcementConfigFieldBuilder().getBuilder(); + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfigOrBuilder + getCustomerSuppliedEncryptionEnforcementConfigOrBuilder() { + if (customerSuppliedEncryptionEnforcementConfigBuilder_ != null) { + return customerSuppliedEncryptionEnforcementConfigBuilder_.getMessageOrBuilder(); + } else { + return customerSuppliedEncryptionEnforcementConfig_ == null + ? com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .getDefaultInstance() + : customerSuppliedEncryptionEnforcementConfig_; + } + } + + /** + * + * + *
+       * Optional. If omitted, then new objects with CSEK encryption-type is
+       * allowed. If set, then new objects created in this bucket must comply with
+       * enforcement config. Changing this has no effect on existing objects; it
+       * applies to new objects only.
+       * 
+ * + * + * optional .google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig customer_supplied_encryption_enforcement_config = 4 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfig + .Builder, + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfigOrBuilder> + getCustomerSuppliedEncryptionEnforcementConfigFieldBuilder() { + if (customerSuppliedEncryptionEnforcementConfigBuilder_ == null) { + customerSuppliedEncryptionEnforcementConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig, + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfig.Builder, + com.google.storage.v2.Bucket.Encryption + .CustomerSuppliedEncryptionEnforcementConfigOrBuilder>( + getCustomerSuppliedEncryptionEnforcementConfig(), + getParentForChildren(), + isClean()); + customerSuppliedEncryptionEnforcementConfig_ = null; + } + return customerSuppliedEncryptionEnforcementConfigBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Encryption) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Encryption) + private static final com.google.storage.v2.Bucket.Encryption DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Encryption(); + } + + public static com.google.storage.v2.Bucket.Encryption getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Encryption parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Encryption getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface IamConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.IamConfig) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * Optional. Bucket restriction options currently enforced on the bucket.
+     * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the uniformBucketLevelAccess field is set. + */ + boolean hasUniformBucketLevelAccess(); + + /** + * + * + *
+     * Optional. Bucket restriction options currently enforced on the bucket.
+     * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The uniformBucketLevelAccess. + */ + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess getUniformBucketLevelAccess(); + + /** + * + * + *
+     * Optional. Bucket restriction options currently enforced on the bucket.
+     * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder + getUniformBucketLevelAccessOrBuilder(); + + /** + * + * + *
+     * Optional. Whether IAM will enforce public access prevention. Valid values
+     * are "enforced" or "inherited".
+     * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The publicAccessPrevention. + */ + java.lang.String getPublicAccessPrevention(); + + /** + * + * + *
+     * Optional. Whether IAM will enforce public access prevention. Valid values
+     * are "enforced" or "inherited".
+     * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for publicAccessPrevention. + */ + com.google.protobuf.ByteString getPublicAccessPreventionBytes(); + } + + /** + * + * + *
+   * Bucket restriction options.
+   * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.IamConfig} + */ + public static final class IamConfig extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.IamConfig) + IamConfigOrBuilder { + private static final long serialVersionUID = 0L; + + // Use IamConfig.newBuilder() to construct. + private IamConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private IamConfig() { + publicAccessPrevention_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new IamConfig(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.IamConfig.class, + com.google.storage.v2.Bucket.IamConfig.Builder.class); + } + + public interface UniformBucketLevelAccessOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+       * Optional. If set, access checks only use bucket-level IAM policies or
+       * above.
+       * 
+ * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enabled. + */ + boolean getEnabled(); + + /** + * + * + *
+       * Optional. The deadline time for changing
+       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+       * `false`. Mutable until the specified deadline is reached, but not
+       * afterward.
+       * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the lockTime field is set. + */ + boolean hasLockTime(); + + /** + * + * + *
+       * Optional. The deadline time for changing
+       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+       * `false`. Mutable until the specified deadline is reached, but not
+       * afterward.
+       * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The lockTime. + */ + com.google.protobuf.Timestamp getLockTime(); + + /** + * + * + *
+       * Optional. The deadline time for changing
+       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+       * `false`. Mutable until the specified deadline is reached, but not
+       * afterward.
+       * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder(); + } + + /** + * + * + *
+     * Settings for Uniform Bucket level access.
+     * See https://cloud.google.com/storage/docs/uniform-bucket-level-access.
+     * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess} + */ + public static final class UniformBucketLevelAccess + extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + UniformBucketLevelAccessOrBuilder { + private static final long serialVersionUID = 0L; + + // Use UniformBucketLevelAccess.newBuilder() to construct. + private UniformBucketLevelAccess(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private UniformBucketLevelAccess() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new UniformBucketLevelAccess(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.class, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder.class); + } + + private int bitField0_; + public static final int ENABLED_FIELD_NUMBER = 1; + private boolean enabled_ = false; + + /** + * + * + *
+       * Optional. If set, access checks only use bucket-level IAM policies or
+       * above.
+       * 
+ * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enabled. + */ + @java.lang.Override + public boolean getEnabled() { + return enabled_; + } + + public static final int LOCK_TIME_FIELD_NUMBER = 2; + private com.google.protobuf.Timestamp lockTime_; + + /** + * + * + *
+       * Optional. The deadline time for changing
+       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+       * `false`. Mutable until the specified deadline is reached, but not
+       * afterward.
+       * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the lockTime field is set. + */ + @java.lang.Override + public boolean hasLockTime() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+       * Optional. The deadline time for changing
+       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+       * `false`. Mutable until the specified deadline is reached, but not
+       * afterward.
+       * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The lockTime. + */ + @java.lang.Override + public com.google.protobuf.Timestamp getLockTime() { + return lockTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lockTime_; + } + + /** + * + * + *
+       * Optional. The deadline time for changing
+       * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+       * `false`. Mutable until the specified deadline is reached, but not
+       * afterward.
+       * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder() { + return lockTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : lockTime_; + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (enabled_ != false) { + output.writeBool(1, enabled_); + } + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(2, getLockTime()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (enabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, enabled_); + } + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getLockTime()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess other = + (com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) obj; + + if (getEnabled() != other.getEnabled()) return false; + if (hasLockTime() != other.hasLockTime()) return false; + if (hasLockTime()) { + if (!getLockTime().equals(other.getLockTime())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnabled()); + if (hasLockTime()) { + hash = (37 * hash) + LOCK_TIME_FIELD_NUMBER; + hash = (53 * hash) + getLockTime().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+       * Settings for Uniform Bucket level access.
+       * See https://cloud.google.com/storage/docs/uniform-bucket-level-access.
+       * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.class, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder.class); + } + + // Construct using + // com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getLockTimeFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + enabled_ = false; + lockTime_ = null; + if (lockTimeBuilder_ != null) { + lockTimeBuilder_.dispose(); + lockTimeBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_UniformBucketLevelAccess_descriptor; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + .getDefaultInstance(); + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess build() { + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess buildPartial() { + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess result = + new com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.enabled_ = enabled_; + } + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.lockTime_ = lockTimeBuilder_ == null ? lockTime_ : lockTimeBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) { + return mergeFrom( + (com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess other) { + if (other + == com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + .getDefaultInstance()) return this; + if (other.getEnabled() != false) { + setEnabled(other.getEnabled()); + } + if (other.hasLockTime()) { + mergeLockTime(other.getLockTime()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + enabled_ = input.readBool(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + input.readMessage(getLockTimeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private boolean enabled_; + + /** + * + * + *
+         * Optional. If set, access checks only use bucket-level IAM policies or
+         * above.
+         * 
+ * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enabled. + */ + @java.lang.Override + public boolean getEnabled() { + return enabled_; + } + + /** + * + * + *
+         * Optional. If set, access checks only use bucket-level IAM policies or
+         * above.
+         * 
+ * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The enabled to set. + * @return This builder for chaining. + */ + public Builder setEnabled(boolean value) { + + enabled_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+         * Optional. If set, access checks only use bucket-level IAM policies or
+         * above.
+         * 
+ * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEnabled() { + bitField0_ = (bitField0_ & ~0x00000001); + enabled_ = false; + onChanged(); + return this; + } + + private com.google.protobuf.Timestamp lockTime_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + lockTimeBuilder_; + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the lockTime field is set. + */ + public boolean hasLockTime() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The lockTime. + */ + public com.google.protobuf.Timestamp getLockTime() { + if (lockTimeBuilder_ == null) { + return lockTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : lockTime_; + } else { + return lockTimeBuilder_.getMessage(); + } + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setLockTime(com.google.protobuf.Timestamp value) { + if (lockTimeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + lockTime_ = value; + } else { + lockTimeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setLockTime(com.google.protobuf.Timestamp.Builder builderForValue) { + if (lockTimeBuilder_ == null) { + lockTime_ = builderForValue.build(); + } else { + lockTimeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeLockTime(com.google.protobuf.Timestamp value) { + if (lockTimeBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && lockTime_ != null + && lockTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { + getLockTimeBuilder().mergeFrom(value); + } else { + lockTime_ = value; + } + } else { + lockTimeBuilder_.mergeFrom(value); + } + if (lockTime_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearLockTime() { + bitField0_ = (bitField0_ & ~0x00000002); + lockTime_ = null; + if (lockTimeBuilder_ != null) { + lockTimeBuilder_.dispose(); + lockTimeBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.Timestamp.Builder getLockTimeBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getLockTimeFieldBuilder().getBuilder(); + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.protobuf.TimestampOrBuilder getLockTimeOrBuilder() { + if (lockTimeBuilder_ != null) { + return lockTimeBuilder_.getMessageOrBuilder(); + } else { + return lockTime_ == null + ? com.google.protobuf.Timestamp.getDefaultInstance() + : lockTime_; + } + } + + /** + * + * + *
+         * Optional. The deadline time for changing
+         * `iam_config.uniform_bucket_level_access.enabled` from `true` to
+         * `false`. Mutable until the specified deadline is reached, but not
+         * afterward.
+         * 
+ * + * .google.protobuf.Timestamp lock_time = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder> + getLockTimeFieldBuilder() { + if (lockTimeBuilder_ == null) { + lockTimeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Timestamp, + com.google.protobuf.Timestamp.Builder, + com.google.protobuf.TimestampOrBuilder>( + getLockTime(), getParentForChildren(), isClean()); + lockTime_ = null; + } + return lockTimeBuilder_; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess) + private static final com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess(); + } + + public static com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public UniformBucketLevelAccess parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int UNIFORM_BUCKET_LEVEL_ACCESS_FIELD_NUMBER = 1; + private com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + uniformBucketLevelAccess_; + + /** + * + * + *
+     * Optional. Bucket restriction options currently enforced on the bucket.
+     * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the uniformBucketLevelAccess field is set. + */ + @java.lang.Override + public boolean hasUniformBucketLevelAccess() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+     * Optional. Bucket restriction options currently enforced on the bucket.
+     * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The uniformBucketLevelAccess. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + getUniformBucketLevelAccess() { + return uniformBucketLevelAccess_ == null + ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() + : uniformBucketLevelAccess_; + } + + /** + * + * + *
+     * Optional. Bucket restriction options currently enforced on the bucket.
+     * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder + getUniformBucketLevelAccessOrBuilder() { + return uniformBucketLevelAccess_ == null + ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() + : uniformBucketLevelAccess_; + } + + public static final int PUBLIC_ACCESS_PREVENTION_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object publicAccessPrevention_ = ""; + + /** + * + * + *
+     * Optional. Whether IAM will enforce public access prevention. Valid values
+     * are "enforced" or "inherited".
+     * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The publicAccessPrevention. + */ + @java.lang.Override + public java.lang.String getPublicAccessPrevention() { + java.lang.Object ref = publicAccessPrevention_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + publicAccessPrevention_ = s; + return s; + } + } + + /** + * + * + *
+     * Optional. Whether IAM will enforce public access prevention. Valid values
+     * are "enforced" or "inherited".
+     * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for publicAccessPrevention. + */ + @java.lang.Override + public com.google.protobuf.ByteString getPublicAccessPreventionBytes() { + java.lang.Object ref = publicAccessPrevention_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + publicAccessPrevention_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getUniformBucketLevelAccess()); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(publicAccessPrevention_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, publicAccessPrevention_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 1, getUniformBucketLevelAccess()); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(publicAccessPrevention_)) { + size += + com.google.protobuf.GeneratedMessageV3.computeStringSize(3, publicAccessPrevention_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.Bucket.IamConfig)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.IamConfig other = (com.google.storage.v2.Bucket.IamConfig) obj; + + if (hasUniformBucketLevelAccess() != other.hasUniformBucketLevelAccess()) return false; + if (hasUniformBucketLevelAccess()) { + if (!getUniformBucketLevelAccess().equals(other.getUniformBucketLevelAccess())) + return false; + } + if (!getPublicAccessPrevention().equals(other.getPublicAccessPrevention())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasUniformBucketLevelAccess()) { + hash = (37 * hash) + UNIFORM_BUCKET_LEVEL_ACCESS_FIELD_NUMBER; + hash = (53 * hash) + getUniformBucketLevelAccess().hashCode(); + } + hash = (37 * hash) + PUBLIC_ACCESS_PREVENTION_FIELD_NUMBER; + hash = (53 * hash) + getPublicAccessPrevention().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.IamConfig parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.IamConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.storage.v2.Bucket.IamConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+     * Bucket restriction options.
+     * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.IamConfig} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.IamConfig) + com.google.storage.v2.Bucket.IamConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.IamConfig.class, + com.google.storage.v2.Bucket.IamConfig.Builder.class); + } + + // Construct using com.google.storage.v2.Bucket.IamConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getUniformBucketLevelAccessFieldBuilder(); + } + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + uniformBucketLevelAccess_ = null; + if (uniformBucketLevelAccessBuilder_ != null) { + uniformBucketLevelAccessBuilder_.dispose(); + uniformBucketLevelAccessBuilder_ = null; + } + publicAccessPrevention_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_IamConfig_descriptor; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.IamConfig.getDefaultInstance(); + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig build() { + com.google.storage.v2.Bucket.IamConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig buildPartial() { + com.google.storage.v2.Bucket.IamConfig result = + new com.google.storage.v2.Bucket.IamConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.storage.v2.Bucket.IamConfig result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.uniformBucketLevelAccess_ = + uniformBucketLevelAccessBuilder_ == null + ? uniformBucketLevelAccess_ + : uniformBucketLevelAccessBuilder_.build(); + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.publicAccessPrevention_ = publicAccessPrevention_; + } + result.bitField0_ |= to_bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.IamConfig) { + return mergeFrom((com.google.storage.v2.Bucket.IamConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.storage.v2.Bucket.IamConfig other) { + if (other == com.google.storage.v2.Bucket.IamConfig.getDefaultInstance()) return this; + if (other.hasUniformBucketLevelAccess()) { + mergeUniformBucketLevelAccess(other.getUniformBucketLevelAccess()); + } + if (!other.getPublicAccessPrevention().isEmpty()) { + publicAccessPrevention_ = other.publicAccessPrevention_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage( + getUniformBucketLevelAccessFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 26: + { + publicAccessPrevention_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 26 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + uniformBucketLevelAccess_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder> + uniformBucketLevelAccessBuilder_; + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the uniformBucketLevelAccess field is set. + */ + public boolean hasUniformBucketLevelAccess() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The uniformBucketLevelAccess. + */ + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + getUniformBucketLevelAccess() { + if (uniformBucketLevelAccessBuilder_ == null) { + return uniformBucketLevelAccess_ == null + ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() + : uniformBucketLevelAccess_; + } else { + return uniformBucketLevelAccessBuilder_.getMessage(); + } + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setUniformBucketLevelAccess( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess value) { + if (uniformBucketLevelAccessBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + uniformBucketLevelAccess_ = value; + } else { + uniformBucketLevelAccessBuilder_.setMessage(value); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setUniformBucketLevelAccess( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder builderForValue) { + if (uniformBucketLevelAccessBuilder_ == null) { + uniformBucketLevelAccess_ = builderForValue.build(); + } else { + uniformBucketLevelAccessBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeUniformBucketLevelAccess( + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess value) { + if (uniformBucketLevelAccessBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) + && uniformBucketLevelAccess_ != null + && uniformBucketLevelAccess_ + != com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess + .getDefaultInstance()) { + getUniformBucketLevelAccessBuilder().mergeFrom(value); + } else { + uniformBucketLevelAccess_ = value; + } + } else { + uniformBucketLevelAccessBuilder_.mergeFrom(value); + } + if (uniformBucketLevelAccess_ != null) { + bitField0_ |= 0x00000001; + onChanged(); + } + return this; + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearUniformBucketLevelAccess() { + bitField0_ = (bitField0_ & ~0x00000001); + uniformBucketLevelAccess_ = null; + if (uniformBucketLevelAccessBuilder_ != null) { + uniformBucketLevelAccessBuilder_.dispose(); + uniformBucketLevelAccessBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder + getUniformBucketLevelAccessBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getUniformBucketLevelAccessFieldBuilder().getBuilder(); + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder + getUniformBucketLevelAccessOrBuilder() { + if (uniformBucketLevelAccessBuilder_ != null) { + return uniformBucketLevelAccessBuilder_.getMessageOrBuilder(); + } else { + return uniformBucketLevelAccess_ == null + ? com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.getDefaultInstance() + : uniformBucketLevelAccess_; + } + } + + /** + * + * + *
+       * Optional. Bucket restriction options currently enforced on the bucket.
+       * 
+ * + * + * .google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess uniform_bucket_level_access = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder> + getUniformBucketLevelAccessFieldBuilder() { + if (uniformBucketLevelAccessBuilder_ == null) { + uniformBucketLevelAccessBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.Builder, + com.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessOrBuilder>( + getUniformBucketLevelAccess(), getParentForChildren(), isClean()); + uniformBucketLevelAccess_ = null; + } + return uniformBucketLevelAccessBuilder_; + } + + private java.lang.Object publicAccessPrevention_ = ""; + + /** + * + * + *
+       * Optional. Whether IAM will enforce public access prevention. Valid values
+       * are "enforced" or "inherited".
+       * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The publicAccessPrevention. + */ + public java.lang.String getPublicAccessPrevention() { + java.lang.Object ref = publicAccessPrevention_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + publicAccessPrevention_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+       * Optional. Whether IAM will enforce public access prevention. Valid values
+       * are "enforced" or "inherited".
+       * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for publicAccessPrevention. + */ + public com.google.protobuf.ByteString getPublicAccessPreventionBytes() { + java.lang.Object ref = publicAccessPrevention_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + publicAccessPrevention_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+       * Optional. Whether IAM will enforce public access prevention. Valid values
+       * are "enforced" or "inherited".
+       * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The publicAccessPrevention to set. + * @return This builder for chaining. + */ + public Builder setPublicAccessPrevention(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + publicAccessPrevention_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. Whether IAM will enforce public access prevention. Valid values
+       * are "enforced" or "inherited".
+       * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearPublicAccessPrevention() { + publicAccessPrevention_ = getDefaultInstance().getPublicAccessPrevention(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. Whether IAM will enforce public access prevention. Valid values
+       * are "enforced" or "inherited".
+       * 
+ * + * string public_access_prevention = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for publicAccessPrevention to set. + * @return This builder for chaining. + */ + public Builder setPublicAccessPreventionBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + publicAccessPrevention_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.IamConfig) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.IamConfig) + private static final com.google.storage.v2.Bucket.IamConfig DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.IamConfig(); + } + + public static com.google.storage.v2.Bucket.IamConfig getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public IamConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.IamConfig getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface LifecycleOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List getRuleList(); + + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Lifecycle.Rule getRule(int index); + + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + int getRuleCount(); + + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + java.util.List + getRuleOrBuilderList(); + + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int index); + } + + /** + * + * + *
+   * Lifecycle properties of a bucket.
+   * For more information, see https://cloud.google.com/storage/docs/lifecycle.
+   * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle} + */ + public static final class Lifecycle extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Lifecycle) + LifecycleOrBuilder { + private static final long serialVersionUID = 0L; + + // Use Lifecycle.newBuilder() to construct. + private Lifecycle(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Lifecycle() { + rule_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Lifecycle(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.class, + com.google.storage.v2.Bucket.Lifecycle.Builder.class); + } + + public interface RuleOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle.Rule) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+       * Optional. The action to take.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the action field is set. + */ + boolean hasAction(); + + /** + * + * + *
+       * Optional. The action to take.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The action. + */ + com.google.storage.v2.Bucket.Lifecycle.Rule.Action getAction(); + + /** + * + * + *
+       * Optional. The action to take.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder getActionOrBuilder(); + + /** + * + * + *
+       * Optional. The condition(s) under which the action will be taken.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the condition field is set. + */ + boolean hasCondition(); + + /** + * + * + *
+       * Optional. The condition(s) under which the action will be taken.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The condition. + */ + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getCondition(); + + /** + * + * + *
+       * Optional. The condition(s) under which the action will be taken.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder getConditionOrBuilder(); + } + + /** + * + * + *
+     * A lifecycle Rule, combining an action to take on an object and a
+     * condition which will trigger that action.
+     * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule} + */ + public static final class Rule extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Lifecycle.Rule) + RuleOrBuilder { + private static final long serialVersionUID = 0L; + + // Use Rule.newBuilder() to construct. + private Rule(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Rule() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Rule(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.Rule.class, + com.google.storage.v2.Bucket.Lifecycle.Rule.Builder.class); + } + + public interface ActionOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle.Rule.Action) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+         * Optional. Type of the action. Currently, only `Delete`,
+         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+         * supported.
+         * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The type. + */ + java.lang.String getType(); + + /** + * + * + *
+         * Optional. Type of the action. Currently, only `Delete`,
+         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+         * supported.
+         * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for type. + */ + com.google.protobuf.ByteString getTypeBytes(); + + /** + * + * + *
+         * Optional. Target storage class. Required iff the type of the action
+         * is SetStorageClass.
+         * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The storageClass. + */ + java.lang.String getStorageClass(); + + /** + * + * + *
+         * Optional. Target storage class. Required iff the type of the action
+         * is SetStorageClass.
+         * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for storageClass. + */ + com.google.protobuf.ByteString getStorageClassBytes(); + } + + /** + * + * + *
+       * An action to take on an object.
+       * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule.Action} + */ + public static final class Action extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Lifecycle.Rule.Action) + ActionOrBuilder { + private static final long serialVersionUID = 0L; + + // Use Action.newBuilder() to construct. + private Action(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Action() { + type_ = ""; + storageClass_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Action(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.class, + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder.class); + } + + public static final int TYPE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object type_ = ""; + + /** + * + * + *
+         * Optional. Type of the action. Currently, only `Delete`,
+         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+         * supported.
+         * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The type. + */ + @java.lang.Override + public java.lang.String getType() { + java.lang.Object ref = type_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + type_ = s; + return s; + } + } + + /** + * + * + *
+         * Optional. Type of the action. Currently, only `Delete`,
+         * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+         * supported.
+         * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for type. + */ + @java.lang.Override + public com.google.protobuf.ByteString getTypeBytes() { + java.lang.Object ref = type_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + type_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int STORAGE_CLASS_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object storageClass_ = ""; + + /** + * + * + *
+         * Optional. Target storage class. Required iff the type of the action
+         * is SetStorageClass.
+         * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The storageClass. + */ + @java.lang.Override + public java.lang.String getStorageClass() { + java.lang.Object ref = storageClass_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + storageClass_ = s; + return s; + } + } + + /** + * + * + *
+         * Optional. Target storage class. Required iff the type of the action
+         * is SetStorageClass.
+         * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for storageClass. + */ + @java.lang.Override + public com.google.protobuf.ByteString getStorageClassBytes() { + java.lang.Object ref = storageClass_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + storageClass_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, type_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(storageClass_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, storageClass_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(type_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, type_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(storageClass_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, storageClass_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Action)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.Lifecycle.Rule.Action other = + (com.google.storage.v2.Bucket.Lifecycle.Rule.Action) obj; + + if (!getType().equals(other.getType())) return false; + if (!getStorageClass().equals(other.getStorageClass())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + TYPE_FIELD_NUMBER; + hash = (53 * hash) + getType().hashCode(); + hash = (37 * hash) + STORAGE_CLASS_FIELD_NUMBER; + hash = (53 * hash) + getStorageClass().hashCode(); + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder( + com.google.storage.v2.Bucket.Lifecycle.Rule.Action prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+         * An action to take on an object.
+         * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule.Action} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle.Rule.Action) + com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.class, + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder.class); + } + + // Construct using com.google.storage.v2.Bucket.Lifecycle.Rule.Action.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + type_ = ""; + storageClass_ = ""; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Action_descriptor; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance(); + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action build() { + com.google.storage.v2.Bucket.Lifecycle.Rule.Action result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action buildPartial() { + com.google.storage.v2.Bucket.Lifecycle.Rule.Action result = + new com.google.storage.v2.Bucket.Lifecycle.Rule.Action(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle.Rule.Action result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.type_ = type_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.storageClass_ = storageClass_; + } + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Action) { + return mergeFrom((com.google.storage.v2.Bucket.Lifecycle.Rule.Action) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle.Rule.Action other) { + if (other == com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance()) + return this; + if (!other.getType().isEmpty()) { + type_ = other.type_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getStorageClass().isEmpty()) { + storageClass_ = other.storageClass_; + bitField0_ |= 0x00000002; + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + type_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + storageClass_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object type_ = ""; + + /** + * + * + *
+           * Optional. Type of the action. Currently, only `Delete`,
+           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+           * supported.
+           * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The type. + */ + public java.lang.String getType() { + java.lang.Object ref = type_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + type_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+           * Optional. Type of the action. Currently, only `Delete`,
+           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+           * supported.
+           * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for type. + */ + public com.google.protobuf.ByteString getTypeBytes() { + java.lang.Object ref = type_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + type_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+           * Optional. Type of the action. Currently, only `Delete`,
+           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+           * supported.
+           * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The type to set. + * @return This builder for chaining. + */ + public Builder setType(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+           * Optional. Type of the action. Currently, only `Delete`,
+           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+           * supported.
+           * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearType() { + type_ = getDefaultInstance().getType(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
+           * Optional. Type of the action. Currently, only `Delete`,
+           * `SetStorageClass`, and `AbortIncompleteMultipartUpload` are
+           * supported.
+           * 
+ * + * string type = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for type to set. + * @return This builder for chaining. + */ + public Builder setTypeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + type_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object storageClass_ = ""; + + /** + * + * + *
+           * Optional. Target storage class. Required iff the type of the action
+           * is SetStorageClass.
+           * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The storageClass. + */ + public java.lang.String getStorageClass() { + java.lang.Object ref = storageClass_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + storageClass_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+           * Optional. Target storage class. Required iff the type of the action
+           * is SetStorageClass.
+           * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for storageClass. + */ + public com.google.protobuf.ByteString getStorageClassBytes() { + java.lang.Object ref = storageClass_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + storageClass_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+           * Optional. Target storage class. Required iff the type of the action
+           * is SetStorageClass.
+           * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The storageClass to set. + * @return This builder for chaining. + */ + public Builder setStorageClass(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + storageClass_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+           * Optional. Target storage class. Required iff the type of the action
+           * is SetStorageClass.
+           * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearStorageClass() { + storageClass_ = getDefaultInstance().getStorageClass(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
+           * Optional. Target storage class. Required iff the type of the action
+           * is SetStorageClass.
+           * 
+ * + * string storage_class = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for storageClass to set. + * @return This builder for chaining. + */ + public Builder setStorageClassBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + storageClass_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle.Rule.Action) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule.Action) + private static final com.google.storage.v2.Bucket.Lifecycle.Rule.Action DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle.Rule.Action(); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Action getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Action parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface ConditionOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Lifecycle.Rule.Condition) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+         * Age of an object (in days). This condition is satisfied when an
+         * object reaches the specified age.
+         * A value of 0 indicates that all objects immediately match this
+         * condition.
+         * 
+ * + * optional int32 age_days = 1; + * + * @return Whether the ageDays field is set. + */ + boolean hasAgeDays(); + + /** + * + * + *
+         * Age of an object (in days). This condition is satisfied when an
+         * object reaches the specified age.
+         * A value of 0 indicates that all objects immediately match this
+         * condition.
+         * 
+ * + * optional int32 age_days = 1; + * + * @return The ageDays. + */ + int getAgeDays(); + + /** + * + * + *
+         * Optional. This condition is satisfied when an object is created
+         * before midnight of the specified date in UTC.
+         * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the createdBefore field is set. + */ + boolean hasCreatedBefore(); + + /** + * + * + *
+         * Optional. This condition is satisfied when an object is created
+         * before midnight of the specified date in UTC.
+         * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The createdBefore. + */ + com.google.type.Date getCreatedBefore(); + + /** + * + * + *
+         * Optional. This condition is satisfied when an object is created
+         * before midnight of the specified date in UTC.
+         * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.type.DateOrBuilder getCreatedBeforeOrBuilder(); + + /** + * + * + *
+         * Relevant only for versioned objects. If the value is
+         * `true`, this condition matches live objects; if the value
+         * is `false`, it matches archived objects.
+         * 
+ * + * optional bool is_live = 3; + * + * @return Whether the isLive field is set. + */ + boolean hasIsLive(); + + /** + * + * + *
+         * Relevant only for versioned objects. If the value is
+         * `true`, this condition matches live objects; if the value
+         * is `false`, it matches archived objects.
+         * 
+ * + * optional bool is_live = 3; + * + * @return The isLive. + */ + boolean getIsLive(); /** * @@ -7257,842 +11613,1520 @@ public com.google.protobuf.ByteString getMatchesPrefixBytes(int index) { private com.google.protobuf.LazyStringArrayList matchesSuffix_ = com.google.protobuf.LazyStringArrayList.emptyList(); - /** - * - * - *
-         * Optional. List of object name suffixes. If any suffix exactly matches
-         * the end of the object name, the condition evaluates to true.
-         * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return A list containing the matchesSuffix. - */ - public com.google.protobuf.ProtocolStringList getMatchesSuffixList() { - return matchesSuffix_; + /** + * + * + *
+         * Optional. List of object name suffixes. If any suffix exactly matches
+         * the end of the object name, the condition evaluates to true.
+         * 
+ * + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return A list containing the matchesSuffix. + */ + public com.google.protobuf.ProtocolStringList getMatchesSuffixList() { + return matchesSuffix_; + } + + /** + * + * + *
+         * Optional. List of object name suffixes. If any suffix exactly matches
+         * the end of the object name, the condition evaluates to true.
+         * 
+ * + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The count of matchesSuffix. + */ + public int getMatchesSuffixCount() { + return matchesSuffix_.size(); + } + + /** + * + * + *
+         * Optional. List of object name suffixes. If any suffix exactly matches
+         * the end of the object name, the condition evaluates to true.
+         * 
+ * + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the element to return. + * @return The matchesSuffix at the given index. + */ + public java.lang.String getMatchesSuffix(int index) { + return matchesSuffix_.get(index); + } + + /** + * + * + *
+         * Optional. List of object name suffixes. If any suffix exactly matches
+         * the end of the object name, the condition evaluates to true.
+         * 
+ * + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the value to return. + * @return The bytes of the matchesSuffix at the given index. + */ + public com.google.protobuf.ByteString getMatchesSuffixBytes(int index) { + return matchesSuffix_.getByteString(index); + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeInt32(1, ageDays_); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(2, getCreatedBefore()); + } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeBool(3, isLive_); + } + if (((bitField0_ & 0x00000008) != 0)) { + output.writeInt32(4, numNewerVersions_); + } + for (int i = 0; i < matchesStorageClass_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 5, matchesStorageClass_.getRaw(i)); + } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeInt32(7, daysSinceCustomTime_); + } + if (((bitField0_ & 0x00000020) != 0)) { + output.writeMessage(8, getCustomTimeBefore()); + } + if (((bitField0_ & 0x00000040) != 0)) { + output.writeInt32(9, daysSinceNoncurrentTime_); + } + if (((bitField0_ & 0x00000080) != 0)) { + output.writeMessage(10, getNoncurrentTimeBefore()); + } + for (int i = 0; i < matchesPrefix_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 11, matchesPrefix_.getRaw(i)); + } + for (int i = 0; i < matchesSuffix_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString( + output, 12, matchesSuffix_.getRaw(i)); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, ageDays_); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getCreatedBefore()); + } + if (((bitField0_ & 0x00000004) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(3, isLive_); + } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, numNewerVersions_); + } + { + int dataSize = 0; + for (int i = 0; i < matchesStorageClass_.size(); i++) { + dataSize += computeStringSizeNoTag(matchesStorageClass_.getRaw(i)); + } + size += dataSize; + size += 1 * getMatchesStorageClassList().size(); + } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt32Size(7, daysSinceCustomTime_); + } + if (((bitField0_ & 0x00000020) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize(8, getCustomTimeBefore()); + } + if (((bitField0_ & 0x00000040) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeInt32Size(9, daysSinceNoncurrentTime_); + } + if (((bitField0_ & 0x00000080) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 10, getNoncurrentTimeBefore()); + } + { + int dataSize = 0; + for (int i = 0; i < matchesPrefix_.size(); i++) { + dataSize += computeStringSizeNoTag(matchesPrefix_.getRaw(i)); + } + size += dataSize; + size += 1 * getMatchesPrefixList().size(); + } + { + int dataSize = 0; + for (int i = 0; i < matchesSuffix_.size(); i++) { + dataSize += computeStringSizeNoTag(matchesSuffix_.getRaw(i)); + } + size += dataSize; + size += 1 * getMatchesSuffixList().size(); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Condition)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition other = + (com.google.storage.v2.Bucket.Lifecycle.Rule.Condition) obj; + + if (hasAgeDays() != other.hasAgeDays()) return false; + if (hasAgeDays()) { + if (getAgeDays() != other.getAgeDays()) return false; + } + if (hasCreatedBefore() != other.hasCreatedBefore()) return false; + if (hasCreatedBefore()) { + if (!getCreatedBefore().equals(other.getCreatedBefore())) return false; + } + if (hasIsLive() != other.hasIsLive()) return false; + if (hasIsLive()) { + if (getIsLive() != other.getIsLive()) return false; + } + if (hasNumNewerVersions() != other.hasNumNewerVersions()) return false; + if (hasNumNewerVersions()) { + if (getNumNewerVersions() != other.getNumNewerVersions()) return false; + } + if (!getMatchesStorageClassList().equals(other.getMatchesStorageClassList())) + return false; + if (hasDaysSinceCustomTime() != other.hasDaysSinceCustomTime()) return false; + if (hasDaysSinceCustomTime()) { + if (getDaysSinceCustomTime() != other.getDaysSinceCustomTime()) return false; + } + if (hasCustomTimeBefore() != other.hasCustomTimeBefore()) return false; + if (hasCustomTimeBefore()) { + if (!getCustomTimeBefore().equals(other.getCustomTimeBefore())) return false; + } + if (hasDaysSinceNoncurrentTime() != other.hasDaysSinceNoncurrentTime()) return false; + if (hasDaysSinceNoncurrentTime()) { + if (getDaysSinceNoncurrentTime() != other.getDaysSinceNoncurrentTime()) return false; + } + if (hasNoncurrentTimeBefore() != other.hasNoncurrentTimeBefore()) return false; + if (hasNoncurrentTimeBefore()) { + if (!getNoncurrentTimeBefore().equals(other.getNoncurrentTimeBefore())) return false; + } + if (!getMatchesPrefixList().equals(other.getMatchesPrefixList())) return false; + if (!getMatchesSuffixList().equals(other.getMatchesSuffixList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasAgeDays()) { + hash = (37 * hash) + AGE_DAYS_FIELD_NUMBER; + hash = (53 * hash) + getAgeDays(); + } + if (hasCreatedBefore()) { + hash = (37 * hash) + CREATED_BEFORE_FIELD_NUMBER; + hash = (53 * hash) + getCreatedBefore().hashCode(); + } + if (hasIsLive()) { + hash = (37 * hash) + IS_LIVE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getIsLive()); + } + if (hasNumNewerVersions()) { + hash = (37 * hash) + NUM_NEWER_VERSIONS_FIELD_NUMBER; + hash = (53 * hash) + getNumNewerVersions(); + } + if (getMatchesStorageClassCount() > 0) { + hash = (37 * hash) + MATCHES_STORAGE_CLASS_FIELD_NUMBER; + hash = (53 * hash) + getMatchesStorageClassList().hashCode(); + } + if (hasDaysSinceCustomTime()) { + hash = (37 * hash) + DAYS_SINCE_CUSTOM_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDaysSinceCustomTime(); + } + if (hasCustomTimeBefore()) { + hash = (37 * hash) + CUSTOM_TIME_BEFORE_FIELD_NUMBER; + hash = (53 * hash) + getCustomTimeBefore().hashCode(); + } + if (hasDaysSinceNoncurrentTime()) { + hash = (37 * hash) + DAYS_SINCE_NONCURRENT_TIME_FIELD_NUMBER; + hash = (53 * hash) + getDaysSinceNoncurrentTime(); + } + if (hasNoncurrentTimeBefore()) { + hash = (37 * hash) + NONCURRENT_TIME_BEFORE_FIELD_NUMBER; + hash = (53 * hash) + getNoncurrentTimeBefore().hashCode(); + } + if (getMatchesPrefixCount() > 0) { + hash = (37 * hash) + MATCHES_PREFIX_FIELD_NUMBER; + hash = (53 * hash) + getMatchesPrefixList().hashCode(); + } + if (getMatchesSuffixCount() > 0) { + hash = (37 * hash) + MATCHES_SUFFIX_FIELD_NUMBER; + hash = (53 * hash) + getMatchesSuffixList().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); } - /** - * - * - *
-         * Optional. List of object name suffixes. If any suffix exactly matches
-         * the end of the object name, the condition evaluates to true.
-         * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The count of matchesSuffix. - */ - public int getMatchesSuffixCount() { - return matchesSuffix_.size(); + public static Builder newBuilder( + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } - /** - * - * - *
-         * Optional. List of object name suffixes. If any suffix exactly matches
-         * the end of the object name, the condition evaluates to true.
-         * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the element to return. - * @return The matchesSuffix at the given index. - */ - public java.lang.String getMatchesSuffix(int index) { - return matchesSuffix_.get(index); + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; } /** * * *
-         * Optional. List of object name suffixes. If any suffix exactly matches
-         * the end of the object name, the condition evaluates to true.
+         * A condition of an object which triggers some action.
          * 
* - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the value to return. - * @return The bytes of the matchesSuffix at the given index. + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule.Condition} */ - public com.google.protobuf.ByteString getMatchesSuffixBytes(int index) { - return matchesSuffix_.getByteString(index); - } - - private byte memoizedIsInitialized = -1; - - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; - - memoizedIsInitialized = 1; - return true; - } + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle.Rule.Condition) + com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Condition_descriptor; + } - @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) - throws java.io.IOException { - if (((bitField0_ & 0x00000001) != 0)) { - output.writeInt32(1, ageDays_); + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Condition_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.class, + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder.class); } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(2, getCreatedBefore()); + + // Construct using com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); } - if (((bitField0_ & 0x00000004) != 0)) { - output.writeBool(3, isLive_); + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); } - if (((bitField0_ & 0x00000008) != 0)) { - output.writeInt32(4, numNewerVersions_); + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getCreatedBeforeFieldBuilder(); + getCustomTimeBeforeFieldBuilder(); + getNoncurrentTimeBeforeFieldBuilder(); + } } - for (int i = 0; i < matchesStorageClass_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString( - output, 5, matchesStorageClass_.getRaw(i)); + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + ageDays_ = 0; + createdBefore_ = null; + if (createdBeforeBuilder_ != null) { + createdBeforeBuilder_.dispose(); + createdBeforeBuilder_ = null; + } + isLive_ = false; + numNewerVersions_ = 0; + matchesStorageClass_ = com.google.protobuf.LazyStringArrayList.emptyList(); + daysSinceCustomTime_ = 0; + customTimeBefore_ = null; + if (customTimeBeforeBuilder_ != null) { + customTimeBeforeBuilder_.dispose(); + customTimeBeforeBuilder_ = null; + } + daysSinceNoncurrentTime_ = 0; + noncurrentTimeBefore_ = null; + if (noncurrentTimeBeforeBuilder_ != null) { + noncurrentTimeBeforeBuilder_.dispose(); + noncurrentTimeBeforeBuilder_ = null; + } + matchesPrefix_ = com.google.protobuf.LazyStringArrayList.emptyList(); + matchesSuffix_ = com.google.protobuf.LazyStringArrayList.emptyList(); + return this; } - if (((bitField0_ & 0x00000010) != 0)) { - output.writeInt32(7, daysSinceCustomTime_); + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Condition_descriptor; } - if (((bitField0_ & 0x00000020) != 0)) { - output.writeMessage(8, getCustomTimeBefore()); + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance(); } - if (((bitField0_ & 0x00000040) != 0)) { - output.writeInt32(9, daysSinceNoncurrentTime_); + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition build() { + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; } - if (((bitField0_ & 0x00000080) != 0)) { - output.writeMessage(10, getNoncurrentTimeBefore()); + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition buildPartial() { + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition result = + new com.google.storage.v2.Bucket.Lifecycle.Rule.Condition(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; } - for (int i = 0; i < matchesPrefix_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString( - output, 11, matchesPrefix_.getRaw(i)); + + private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.ageDays_ = ageDays_; + to_bitField0_ |= 0x00000001; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.createdBefore_ = + createdBeforeBuilder_ == null ? createdBefore_ : createdBeforeBuilder_.build(); + to_bitField0_ |= 0x00000002; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.isLive_ = isLive_; + to_bitField0_ |= 0x00000004; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.numNewerVersions_ = numNewerVersions_; + to_bitField0_ |= 0x00000008; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + matchesStorageClass_.makeImmutable(); + result.matchesStorageClass_ = matchesStorageClass_; + } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.daysSinceCustomTime_ = daysSinceCustomTime_; + to_bitField0_ |= 0x00000010; + } + if (((from_bitField0_ & 0x00000040) != 0)) { + result.customTimeBefore_ = + customTimeBeforeBuilder_ == null + ? customTimeBefore_ + : customTimeBeforeBuilder_.build(); + to_bitField0_ |= 0x00000020; + } + if (((from_bitField0_ & 0x00000080) != 0)) { + result.daysSinceNoncurrentTime_ = daysSinceNoncurrentTime_; + to_bitField0_ |= 0x00000040; + } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.noncurrentTimeBefore_ = + noncurrentTimeBeforeBuilder_ == null + ? noncurrentTimeBefore_ + : noncurrentTimeBeforeBuilder_.build(); + to_bitField0_ |= 0x00000080; + } + if (((from_bitField0_ & 0x00000200) != 0)) { + matchesPrefix_.makeImmutable(); + result.matchesPrefix_ = matchesPrefix_; + } + if (((from_bitField0_ & 0x00000400) != 0)) { + matchesSuffix_.makeImmutable(); + result.matchesSuffix_ = matchesSuffix_; + } + result.bitField0_ |= to_bitField0_; } - for (int i = 0; i < matchesSuffix_.size(); i++) { - com.google.protobuf.GeneratedMessageV3.writeString( - output, 12, matchesSuffix_.getRaw(i)); + + @java.lang.Override + public Builder clone() { + return super.clone(); } - getUnknownFields().writeTo(output); - } - @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } - size = 0; - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, ageDays_); + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getCreatedBefore()); + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); } - if (((bitField0_ & 0x00000004) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeBoolSize(3, isLive_); + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); } - if (((bitField0_ & 0x00000008) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(4, numNewerVersions_); + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); } - { - int dataSize = 0; - for (int i = 0; i < matchesStorageClass_.size(); i++) { - dataSize += computeStringSizeNoTag(matchesStorageClass_.getRaw(i)); + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Condition) { + return mergeFrom((com.google.storage.v2.Bucket.Lifecycle.Rule.Condition) other); + } else { + super.mergeFrom(other); + return this; } - size += dataSize; - size += 1 * getMatchesStorageClassList().size(); - } - if (((bitField0_ & 0x00000010) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeInt32Size(7, daysSinceCustomTime_); - } - if (((bitField0_ & 0x00000020) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize(8, getCustomTimeBefore()); - } - if (((bitField0_ & 0x00000040) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeInt32Size(9, daysSinceNoncurrentTime_); - } - if (((bitField0_ & 0x00000080) != 0)) { - size += - com.google.protobuf.CodedOutputStream.computeMessageSize( - 10, getNoncurrentTimeBefore()); } - { - int dataSize = 0; - for (int i = 0; i < matchesPrefix_.size(); i++) { - dataSize += computeStringSizeNoTag(matchesPrefix_.getRaw(i)); + + public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition other) { + if (other == com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance()) + return this; + if (other.hasAgeDays()) { + setAgeDays(other.getAgeDays()); } - size += dataSize; - size += 1 * getMatchesPrefixList().size(); - } - { - int dataSize = 0; - for (int i = 0; i < matchesSuffix_.size(); i++) { - dataSize += computeStringSizeNoTag(matchesSuffix_.getRaw(i)); + if (other.hasCreatedBefore()) { + mergeCreatedBefore(other.getCreatedBefore()); } - size += dataSize; - size += 1 * getMatchesSuffixList().size(); + if (other.hasIsLive()) { + setIsLive(other.getIsLive()); + } + if (other.hasNumNewerVersions()) { + setNumNewerVersions(other.getNumNewerVersions()); + } + if (!other.matchesStorageClass_.isEmpty()) { + if (matchesStorageClass_.isEmpty()) { + matchesStorageClass_ = other.matchesStorageClass_; + bitField0_ |= 0x00000010; + } else { + ensureMatchesStorageClassIsMutable(); + matchesStorageClass_.addAll(other.matchesStorageClass_); + } + onChanged(); + } + if (other.hasDaysSinceCustomTime()) { + setDaysSinceCustomTime(other.getDaysSinceCustomTime()); + } + if (other.hasCustomTimeBefore()) { + mergeCustomTimeBefore(other.getCustomTimeBefore()); + } + if (other.hasDaysSinceNoncurrentTime()) { + setDaysSinceNoncurrentTime(other.getDaysSinceNoncurrentTime()); + } + if (other.hasNoncurrentTimeBefore()) { + mergeNoncurrentTimeBefore(other.getNoncurrentTimeBefore()); + } + if (!other.matchesPrefix_.isEmpty()) { + if (matchesPrefix_.isEmpty()) { + matchesPrefix_ = other.matchesPrefix_; + bitField0_ |= 0x00000200; + } else { + ensureMatchesPrefixIsMutable(); + matchesPrefix_.addAll(other.matchesPrefix_); + } + onChanged(); + } + if (!other.matchesSuffix_.isEmpty()) { + if (matchesSuffix_.isEmpty()) { + matchesSuffix_ = other.matchesSuffix_; + bitField0_ |= 0x00000400; + } else { + ensureMatchesSuffixIsMutable(); + matchesSuffix_.addAll(other.matchesSuffix_); + } + onChanged(); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; - } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { + @java.lang.Override + public final boolean isInitialized() { return true; } - if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Condition)) { - return super.equals(obj); + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: + { + ageDays_ = input.readInt32(); + bitField0_ |= 0x00000001; + break; + } // case 8 + case 18: + { + input.readMessage( + getCreatedBeforeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 24: + { + isLive_ = input.readBool(); + bitField0_ |= 0x00000004; + break; + } // case 24 + case 32: + { + numNewerVersions_ = input.readInt32(); + bitField0_ |= 0x00000008; + break; + } // case 32 + case 42: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureMatchesStorageClassIsMutable(); + matchesStorageClass_.add(s); + break; + } // case 42 + case 56: + { + daysSinceCustomTime_ = input.readInt32(); + bitField0_ |= 0x00000020; + break; + } // case 56 + case 66: + { + input.readMessage( + getCustomTimeBeforeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000040; + break; + } // case 66 + case 72: + { + daysSinceNoncurrentTime_ = input.readInt32(); + bitField0_ |= 0x00000080; + break; + } // case 72 + case 82: + { + input.readMessage( + getNoncurrentTimeBeforeFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000100; + break; + } // case 82 + case 90: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureMatchesPrefixIsMutable(); + matchesPrefix_.add(s); + break; + } // case 90 + case 98: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureMatchesSuffixIsMutable(); + matchesSuffix_.add(s); + break; + } // case 98 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; } - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition other = - (com.google.storage.v2.Bucket.Lifecycle.Rule.Condition) obj; - if (hasAgeDays() != other.hasAgeDays()) return false; - if (hasAgeDays()) { - if (getAgeDays() != other.getAgeDays()) return false; - } - if (hasCreatedBefore() != other.hasCreatedBefore()) return false; - if (hasCreatedBefore()) { - if (!getCreatedBefore().equals(other.getCreatedBefore())) return false; - } - if (hasIsLive() != other.hasIsLive()) return false; - if (hasIsLive()) { - if (getIsLive() != other.getIsLive()) return false; - } - if (hasNumNewerVersions() != other.hasNumNewerVersions()) return false; - if (hasNumNewerVersions()) { - if (getNumNewerVersions() != other.getNumNewerVersions()) return false; - } - if (!getMatchesStorageClassList().equals(other.getMatchesStorageClassList())) - return false; - if (hasDaysSinceCustomTime() != other.hasDaysSinceCustomTime()) return false; - if (hasDaysSinceCustomTime()) { - if (getDaysSinceCustomTime() != other.getDaysSinceCustomTime()) return false; - } - if (hasCustomTimeBefore() != other.hasCustomTimeBefore()) return false; - if (hasCustomTimeBefore()) { - if (!getCustomTimeBefore().equals(other.getCustomTimeBefore())) return false; - } - if (hasDaysSinceNoncurrentTime() != other.hasDaysSinceNoncurrentTime()) return false; - if (hasDaysSinceNoncurrentTime()) { - if (getDaysSinceNoncurrentTime() != other.getDaysSinceNoncurrentTime()) return false; - } - if (hasNoncurrentTimeBefore() != other.hasNoncurrentTimeBefore()) return false; - if (hasNoncurrentTimeBefore()) { - if (!getNoncurrentTimeBefore().equals(other.getNoncurrentTimeBefore())) return false; - } - if (!getMatchesPrefixList().equals(other.getMatchesPrefixList())) return false; - if (!getMatchesSuffixList().equals(other.getMatchesSuffixList())) return false; - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + private int bitField0_; - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (hasAgeDays()) { - hash = (37 * hash) + AGE_DAYS_FIELD_NUMBER; - hash = (53 * hash) + getAgeDays(); - } - if (hasCreatedBefore()) { - hash = (37 * hash) + CREATED_BEFORE_FIELD_NUMBER; - hash = (53 * hash) + getCreatedBefore().hashCode(); - } - if (hasIsLive()) { - hash = (37 * hash) + IS_LIVE_FIELD_NUMBER; - hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getIsLive()); - } - if (hasNumNewerVersions()) { - hash = (37 * hash) + NUM_NEWER_VERSIONS_FIELD_NUMBER; - hash = (53 * hash) + getNumNewerVersions(); - } - if (getMatchesStorageClassCount() > 0) { - hash = (37 * hash) + MATCHES_STORAGE_CLASS_FIELD_NUMBER; - hash = (53 * hash) + getMatchesStorageClassList().hashCode(); - } - if (hasDaysSinceCustomTime()) { - hash = (37 * hash) + DAYS_SINCE_CUSTOM_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDaysSinceCustomTime(); - } - if (hasCustomTimeBefore()) { - hash = (37 * hash) + CUSTOM_TIME_BEFORE_FIELD_NUMBER; - hash = (53 * hash) + getCustomTimeBefore().hashCode(); - } - if (hasDaysSinceNoncurrentTime()) { - hash = (37 * hash) + DAYS_SINCE_NONCURRENT_TIME_FIELD_NUMBER; - hash = (53 * hash) + getDaysSinceNoncurrentTime(); - } - if (hasNoncurrentTimeBefore()) { - hash = (37 * hash) + NONCURRENT_TIME_BEFORE_FIELD_NUMBER; - hash = (53 * hash) + getNoncurrentTimeBefore().hashCode(); - } - if (getMatchesPrefixCount() > 0) { - hash = (37 * hash) + MATCHES_PREFIX_FIELD_NUMBER; - hash = (53 * hash) + getMatchesPrefixList().hashCode(); - } - if (getMatchesSuffixCount() > 0) { - hash = (37 * hash) + MATCHES_SUFFIX_FIELD_NUMBER; - hash = (53 * hash) + getMatchesSuffixList().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + private int ageDays_; - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+           * Age of an object (in days). This condition is satisfied when an
+           * object reaches the specified age.
+           * A value of 0 indicates that all objects immediately match this
+           * condition.
+           * 
+ * + * optional int32 age_days = 1; + * + * @return Whether the ageDays field is set. + */ + @java.lang.Override + public boolean hasAgeDays() { + return ((bitField0_ & 0x00000001) != 0); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
+           * Age of an object (in days). This condition is satisfied when an
+           * object reaches the specified age.
+           * A value of 0 indicates that all objects immediately match this
+           * condition.
+           * 
+ * + * optional int32 age_days = 1; + * + * @return The ageDays. + */ + @java.lang.Override + public int getAgeDays() { + return ageDays_; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+           * Age of an object (in days). This condition is satisfied when an
+           * object reaches the specified age.
+           * A value of 0 indicates that all objects immediately match this
+           * condition.
+           * 
+ * + * optional int32 age_days = 1; + * + * @param value The ageDays to set. + * @return This builder for chaining. + */ + public Builder setAgeDays(int value) { - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + ageDays_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+           * Age of an object (in days). This condition is satisfied when an
+           * object reaches the specified age.
+           * A value of 0 indicates that all objects immediately match this
+           * condition.
+           * 
+ * + * optional int32 age_days = 1; + * + * @return This builder for chaining. + */ + public Builder clearAgeDays() { + bitField0_ = (bitField0_ & ~0x00000001); + ageDays_ = 0; + onChanged(); + return this; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private com.google.type.Date createdBefore_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + createdBeforeBuilder_; - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the createdBefore field is set. + */ + public boolean hasCreatedBefore() { + return ((bitField0_ & 0x00000002) != 0); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The createdBefore. + */ + public com.google.type.Date getCreatedBefore() { + if (createdBeforeBuilder_ == null) { + return createdBefore_ == null + ? com.google.type.Date.getDefaultInstance() + : createdBefore_; + } else { + return createdBeforeBuilder_.getMessage(); + } + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCreatedBefore(com.google.type.Date value) { + if (createdBeforeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + createdBefore_ = value; + } else { + createdBeforeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCreatedBefore(com.google.type.Date.Builder builderForValue) { + if (createdBeforeBuilder_ == null) { + createdBefore_ = builderForValue.build(); + } else { + createdBeforeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeCreatedBefore(com.google.type.Date value) { + if (createdBeforeBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && createdBefore_ != null + && createdBefore_ != com.google.type.Date.getDefaultInstance()) { + getCreatedBeforeBuilder().mergeFrom(value); + } else { + createdBefore_ = value; + } + } else { + createdBeforeBuilder_.mergeFrom(value); + } + if (createdBefore_ != null) { + bitField0_ |= 0x00000002; + onChanged(); + } + return this; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearCreatedBefore() { + bitField0_ = (bitField0_ & ~0x00000002); + createdBefore_ = null; + if (createdBeforeBuilder_ != null) { + createdBeforeBuilder_.dispose(); + createdBeforeBuilder_ = null; + } + onChanged(); + return this; + } - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.type.Date.Builder getCreatedBeforeBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getCreatedBeforeFieldBuilder().getBuilder(); + } - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.type.DateOrBuilder getCreatedBeforeOrBuilder() { + if (createdBeforeBuilder_ != null) { + return createdBeforeBuilder_.getMessageOrBuilder(); + } else { + return createdBefore_ == null + ? com.google.type.Date.getDefaultInstance() + : createdBefore_; + } + } - public static Builder newBuilder( - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); - } + /** + * + * + *
+           * Optional. This condition is satisfied when an object is created
+           * before midnight of the specified date in UTC.
+           * 
+ * + * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + getCreatedBeforeFieldBuilder() { + if (createdBeforeBuilder_ == null) { + createdBeforeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, + com.google.type.Date.Builder, + com.google.type.DateOrBuilder>( + getCreatedBefore(), getParentForChildren(), isClean()); + createdBefore_ = null; + } + return createdBeforeBuilder_; + } - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); - } + private boolean isLive_; - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + /** + * + * + *
+           * Relevant only for versioned objects. If the value is
+           * `true`, this condition matches live objects; if the value
+           * is `false`, it matches archived objects.
+           * 
+ * + * optional bool is_live = 3; + * + * @return Whether the isLive field is set. + */ + @java.lang.Override + public boolean hasIsLive() { + return ((bitField0_ & 0x00000004) != 0); + } - /** - * - * - *
-         * A condition of an object which triggers some action.
-         * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule.Condition} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle.Rule.Condition) - com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Condition_descriptor; + /** + * + * + *
+           * Relevant only for versioned objects. If the value is
+           * `true`, this condition matches live objects; if the value
+           * is `false`, it matches archived objects.
+           * 
+ * + * optional bool is_live = 3; + * + * @return The isLive. + */ + @java.lang.Override + public boolean getIsLive() { + return isLive_; } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Condition_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.class, - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder.class); - } + /** + * + * + *
+           * Relevant only for versioned objects. If the value is
+           * `true`, this condition matches live objects; if the value
+           * is `false`, it matches archived objects.
+           * 
+ * + * optional bool is_live = 3; + * + * @param value The isLive to set. + * @return This builder for chaining. + */ + public Builder setIsLive(boolean value) { - // Construct using com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); + isLive_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; } - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); + /** + * + * + *
+           * Relevant only for versioned objects. If the value is
+           * `true`, this condition matches live objects; if the value
+           * is `false`, it matches archived objects.
+           * 
+ * + * optional bool is_live = 3; + * + * @return This builder for chaining. + */ + public Builder clearIsLive() { + bitField0_ = (bitField0_ & ~0x00000004); + isLive_ = false; + onChanged(); + return this; } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { - getCreatedBeforeFieldBuilder(); - getCustomTimeBeforeFieldBuilder(); - getNoncurrentTimeBeforeFieldBuilder(); - } - } + private int numNewerVersions_; + /** + * + * + *
+           * Relevant only for versioned objects. If the value is N, this
+           * condition is satisfied when there are at least N versions (including
+           * the live version) newer than this version of the object.
+           * 
+ * + * optional int32 num_newer_versions = 4; + * + * @return Whether the numNewerVersions field is set. + */ @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - ageDays_ = 0; - createdBefore_ = null; - if (createdBeforeBuilder_ != null) { - createdBeforeBuilder_.dispose(); - createdBeforeBuilder_ = null; - } - isLive_ = false; - numNewerVersions_ = 0; - matchesStorageClass_ = com.google.protobuf.LazyStringArrayList.emptyList(); - daysSinceCustomTime_ = 0; - customTimeBefore_ = null; - if (customTimeBeforeBuilder_ != null) { - customTimeBeforeBuilder_.dispose(); - customTimeBeforeBuilder_ = null; - } - daysSinceNoncurrentTime_ = 0; - noncurrentTimeBefore_ = null; - if (noncurrentTimeBeforeBuilder_ != null) { - noncurrentTimeBeforeBuilder_.dispose(); - noncurrentTimeBeforeBuilder_ = null; - } - matchesPrefix_ = com.google.protobuf.LazyStringArrayList.emptyList(); - matchesSuffix_ = com.google.protobuf.LazyStringArrayList.emptyList(); - return this; + public boolean hasNumNewerVersions() { + return ((bitField0_ & 0x00000008) != 0); } + /** + * + * + *
+           * Relevant only for versioned objects. If the value is N, this
+           * condition is satisfied when there are at least N versions (including
+           * the live version) newer than this version of the object.
+           * 
+ * + * optional int32 num_newer_versions = 4; + * + * @return The numNewerVersions. + */ @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_Condition_descriptor; + public int getNumNewerVersions() { + return numNewerVersions_; } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance(); + /** + * + * + *
+           * Relevant only for versioned objects. If the value is N, this
+           * condition is satisfied when there are at least N versions (including
+           * the live version) newer than this version of the object.
+           * 
+ * + * optional int32 num_newer_versions = 4; + * + * @param value The numNewerVersions to set. + * @return This builder for chaining. + */ + public Builder setNumNewerVersions(int value) { + + numNewerVersions_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition build() { - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; + /** + * + * + *
+           * Relevant only for versioned objects. If the value is N, this
+           * condition is satisfied when there are at least N versions (including
+           * the live version) newer than this version of the object.
+           * 
+ * + * optional int32 num_newer_versions = 4; + * + * @return This builder for chaining. + */ + public Builder clearNumNewerVersions() { + bitField0_ = (bitField0_ & ~0x00000008); + numNewerVersions_ = 0; + onChanged(); + return this; } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition buildPartial() { - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition result = - new com.google.storage.v2.Bucket.Lifecycle.Rule.Condition(this); - if (bitField0_ != 0) { - buildPartial0(result); + private com.google.protobuf.LazyStringArrayList matchesStorageClass_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureMatchesStorageClassIsMutable() { + if (!matchesStorageClass_.isModifiable()) { + matchesStorageClass_ = + new com.google.protobuf.LazyStringArrayList(matchesStorageClass_); } - onBuilt(); - return result; + bitField0_ |= 0x00000010; } - private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition result) { - int from_bitField0_ = bitField0_; - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.ageDays_ = ageDays_; - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.createdBefore_ = - createdBeforeBuilder_ == null ? createdBefore_ : createdBeforeBuilder_.build(); - to_bitField0_ |= 0x00000002; - } - if (((from_bitField0_ & 0x00000004) != 0)) { - result.isLive_ = isLive_; - to_bitField0_ |= 0x00000004; - } - if (((from_bitField0_ & 0x00000008) != 0)) { - result.numNewerVersions_ = numNewerVersions_; - to_bitField0_ |= 0x00000008; - } - if (((from_bitField0_ & 0x00000010) != 0)) { - matchesStorageClass_.makeImmutable(); - result.matchesStorageClass_ = matchesStorageClass_; - } - if (((from_bitField0_ & 0x00000020) != 0)) { - result.daysSinceCustomTime_ = daysSinceCustomTime_; - to_bitField0_ |= 0x00000010; - } - if (((from_bitField0_ & 0x00000040) != 0)) { - result.customTimeBefore_ = - customTimeBeforeBuilder_ == null - ? customTimeBefore_ - : customTimeBeforeBuilder_.build(); - to_bitField0_ |= 0x00000020; - } - if (((from_bitField0_ & 0x00000080) != 0)) { - result.daysSinceNoncurrentTime_ = daysSinceNoncurrentTime_; - to_bitField0_ |= 0x00000040; - } - if (((from_bitField0_ & 0x00000100) != 0)) { - result.noncurrentTimeBefore_ = - noncurrentTimeBeforeBuilder_ == null - ? noncurrentTimeBefore_ - : noncurrentTimeBeforeBuilder_.build(); - to_bitField0_ |= 0x00000080; - } - if (((from_bitField0_ & 0x00000200) != 0)) { - matchesPrefix_.makeImmutable(); - result.matchesPrefix_ = matchesPrefix_; - } - if (((from_bitField0_ & 0x00000400) != 0)) { - matchesSuffix_.makeImmutable(); - result.matchesSuffix_ = matchesSuffix_; - } - result.bitField0_ |= to_bitField0_; + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return A list containing the matchesStorageClass. + */ + public com.google.protobuf.ProtocolStringList getMatchesStorageClassList() { + matchesStorageClass_.makeImmutable(); + return matchesStorageClass_; } - @java.lang.Override - public Builder clone() { - return super.clone(); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The count of matchesStorageClass. + */ + public int getMatchesStorageClassCount() { + return matchesStorageClass_.size(); } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the element to return. + * @return The matchesStorageClass at the given index. + */ + public java.lang.String getMatchesStorageClass(int index) { + return matchesStorageClass_.get(index); } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the value to return. + * @return The bytes of the matchesStorageClass at the given index. + */ + public com.google.protobuf.ByteString getMatchesStorageClassBytes(int index) { + return matchesStorageClass_.getByteString(index); } - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index to set the value at. + * @param value The matchesStorageClass to set. + * @return This builder for chaining. + */ + public Builder setMatchesStorageClass(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureMatchesStorageClassIsMutable(); + matchesStorageClass_.set(index, value); + bitField0_ |= 0x00000010; + onChanged(); + return this; } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The matchesStorageClass to add. + * @return This builder for chaining. + */ + public Builder addMatchesStorageClass(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureMatchesStorageClassIsMutable(); + matchesStorageClass_.add(value); + bitField0_ |= 0x00000010; + onChanged(); + return this; } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param values The matchesStorageClass to add. + * @return This builder for chaining. + */ + public Builder addAllMatchesStorageClass(java.lang.Iterable values) { + ensureMatchesStorageClassIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, matchesStorageClass_); + bitField0_ |= 0x00000010; + onChanged(); + return this; } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.Lifecycle.Rule.Condition) { - return mergeFrom((com.google.storage.v2.Bucket.Lifecycle.Rule.Condition) other); - } else { - super.mergeFrom(other); - return this; - } + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return This builder for chaining. + */ + public Builder clearMatchesStorageClass() { + matchesStorageClass_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000010); + ; + onChanged(); + return this; } - public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition other) { - if (other == com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance()) - return this; - if (other.hasAgeDays()) { - setAgeDays(other.getAgeDays()); - } - if (other.hasCreatedBefore()) { - mergeCreatedBefore(other.getCreatedBefore()); - } - if (other.hasIsLive()) { - setIsLive(other.getIsLive()); - } - if (other.hasNumNewerVersions()) { - setNumNewerVersions(other.getNumNewerVersions()); - } - if (!other.matchesStorageClass_.isEmpty()) { - if (matchesStorageClass_.isEmpty()) { - matchesStorageClass_ = other.matchesStorageClass_; - bitField0_ |= 0x00000010; - } else { - ensureMatchesStorageClassIsMutable(); - matchesStorageClass_.addAll(other.matchesStorageClass_); - } - onChanged(); - } - if (other.hasDaysSinceCustomTime()) { - setDaysSinceCustomTime(other.getDaysSinceCustomTime()); - } - if (other.hasCustomTimeBefore()) { - mergeCustomTimeBefore(other.getCustomTimeBefore()); - } - if (other.hasDaysSinceNoncurrentTime()) { - setDaysSinceNoncurrentTime(other.getDaysSinceNoncurrentTime()); - } - if (other.hasNoncurrentTimeBefore()) { - mergeNoncurrentTimeBefore(other.getNoncurrentTimeBefore()); - } - if (!other.matchesPrefix_.isEmpty()) { - if (matchesPrefix_.isEmpty()) { - matchesPrefix_ = other.matchesPrefix_; - bitField0_ |= 0x00000200; - } else { - ensureMatchesPrefixIsMutable(); - matchesPrefix_.addAll(other.matchesPrefix_); - } - onChanged(); - } - if (!other.matchesSuffix_.isEmpty()) { - if (matchesSuffix_.isEmpty()) { - matchesSuffix_ = other.matchesSuffix_; - bitField0_ |= 0x00000400; - } else { - ensureMatchesSuffixIsMutable(); - matchesSuffix_.addAll(other.matchesSuffix_); - } - onChanged(); + /** + * + * + *
+           * Optional. Objects having any of the storage classes specified by this
+           * condition will be matched. Values include `MULTI_REGIONAL`,
+           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
+           * `DURABLE_REDUCED_AVAILABILITY`.
+           * 
+ * + * + * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param value The bytes of the matchesStorageClass to add. + * @return This builder for chaining. + */ + public Builder addMatchesStorageClassBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - this.mergeUnknownFields(other.getUnknownFields()); + checkByteStringIsUtf8(value); + ensureMatchesStorageClassIsMutable(); + matchesStorageClass_.add(value); + bitField0_ |= 0x00000010; onChanged(); return this; } - @java.lang.Override - public final boolean isInitialized() { - return true; - } - - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 8: - { - ageDays_ = input.readInt32(); - bitField0_ |= 0x00000001; - break; - } // case 8 - case 18: - { - input.readMessage( - getCreatedBeforeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000002; - break; - } // case 18 - case 24: - { - isLive_ = input.readBool(); - bitField0_ |= 0x00000004; - break; - } // case 24 - case 32: - { - numNewerVersions_ = input.readInt32(); - bitField0_ |= 0x00000008; - break; - } // case 32 - case 42: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureMatchesStorageClassIsMutable(); - matchesStorageClass_.add(s); - break; - } // case 42 - case 56: - { - daysSinceCustomTime_ = input.readInt32(); - bitField0_ |= 0x00000020; - break; - } // case 56 - case 66: - { - input.readMessage( - getCustomTimeBeforeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000040; - break; - } // case 66 - case 72: - { - daysSinceNoncurrentTime_ = input.readInt32(); - bitField0_ |= 0x00000080; - break; - } // case 72 - case 82: - { - input.readMessage( - getNoncurrentTimeBeforeFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000100; - break; - } // case 82 - case 90: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureMatchesPrefixIsMutable(); - matchesPrefix_.add(s); - break; - } // case 90 - case 98: - { - java.lang.String s = input.readStringRequireUtf8(); - ensureMatchesSuffixIsMutable(); - matchesSuffix_.add(s); - break; - } // case 98 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; - } - - private int bitField0_; - - private int ageDays_; + private int daysSinceCustomTime_; /** * * *
-           * Age of an object (in days). This condition is satisfied when an
-           * object reaches the specified age.
-           * A value of 0 indicates that all objects immediately match this
-           * condition.
+           * Number of days that have elapsed since the custom timestamp set on an
+           * object.
+           * The value of the field must be a nonnegative integer.
            * 
* - * optional int32 age_days = 1; + * optional int32 days_since_custom_time = 7; * - * @return Whether the ageDays field is set. + * @return Whether the daysSinceCustomTime field is set. */ @java.lang.Override - public boolean hasAgeDays() { - return ((bitField0_ & 0x00000001) != 0); + public boolean hasDaysSinceCustomTime() { + return ((bitField0_ & 0x00000020) != 0); } /** * * *
-           * Age of an object (in days). This condition is satisfied when an
-           * object reaches the specified age.
-           * A value of 0 indicates that all objects immediately match this
-           * condition.
+           * Number of days that have elapsed since the custom timestamp set on an
+           * object.
+           * The value of the field must be a nonnegative integer.
            * 
* - * optional int32 age_days = 1; + * optional int32 days_since_custom_time = 7; * - * @return The ageDays. + * @return The daysSinceCustomTime. */ @java.lang.Override - public int getAgeDays() { - return ageDays_; + public int getDaysSinceCustomTime() { + return daysSinceCustomTime_; } /** * * *
-           * Age of an object (in days). This condition is satisfied when an
-           * object reaches the specified age.
-           * A value of 0 indicates that all objects immediately match this
-           * condition.
+           * Number of days that have elapsed since the custom timestamp set on an
+           * object.
+           * The value of the field must be a nonnegative integer.
            * 
* - * optional int32 age_days = 1; + * optional int32 days_since_custom_time = 7; * - * @param value The ageDays to set. + * @param value The daysSinceCustomTime to set. * @return This builder for chaining. */ - public Builder setAgeDays(int value) { + public Builder setDaysSinceCustomTime(int value) { - ageDays_ = value; - bitField0_ |= 0x00000001; + daysSinceCustomTime_ = value; + bitField0_ |= 0x00000020; onChanged(); return this; } @@ -8101,65 +13135,66 @@ public Builder setAgeDays(int value) { * * *
-           * Age of an object (in days). This condition is satisfied when an
-           * object reaches the specified age.
-           * A value of 0 indicates that all objects immediately match this
-           * condition.
+           * Number of days that have elapsed since the custom timestamp set on an
+           * object.
+           * The value of the field must be a nonnegative integer.
            * 
* - * optional int32 age_days = 1; + * optional int32 days_since_custom_time = 7; * * @return This builder for chaining. */ - public Builder clearAgeDays() { - bitField0_ = (bitField0_ & ~0x00000001); - ageDays_ = 0; + public Builder clearDaysSinceCustomTime() { + bitField0_ = (bitField0_ & ~0x00000020); + daysSinceCustomTime_ = 0; onChanged(); return this; } - private com.google.type.Date createdBefore_; + private com.google.type.Date customTimeBefore_; private com.google.protobuf.SingleFieldBuilderV3< com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - createdBeforeBuilder_; + customTimeBeforeBuilder_; /** * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return Whether the createdBefore field is set. + * @return Whether the customTimeBefore field is set. */ - public boolean hasCreatedBefore() { - return ((bitField0_ & 0x00000002) != 0); + public boolean hasCustomTimeBefore() { + return ((bitField0_ & 0x00000040) != 0); } /** * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The createdBefore. + * @return The customTimeBefore. */ - public com.google.type.Date getCreatedBefore() { - if (createdBeforeBuilder_ == null) { - return createdBefore_ == null + public com.google.type.Date getCustomTimeBefore() { + if (customTimeBeforeBuilder_ == null) { + return customTimeBefore_ == null ? com.google.type.Date.getDefaultInstance() - : createdBefore_; + : customTimeBefore_; } else { - return createdBeforeBuilder_.getMessage(); + return customTimeBeforeBuilder_.getMessage(); } } @@ -8167,23 +13202,24 @@ public com.google.type.Date getCreatedBefore() { * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreatedBefore(com.google.type.Date value) { - if (createdBeforeBuilder_ == null) { + public Builder setCustomTimeBefore(com.google.type.Date value) { + if (customTimeBeforeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - createdBefore_ = value; + customTimeBefore_ = value; } else { - createdBeforeBuilder_.setMessage(value); + customTimeBeforeBuilder_.setMessage(value); } - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -8192,20 +13228,21 @@ public Builder setCreatedBefore(com.google.type.Date value) { * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder setCreatedBefore(com.google.type.Date.Builder builderForValue) { - if (createdBeforeBuilder_ == null) { - createdBefore_ = builderForValue.build(); + public Builder setCustomTimeBefore(com.google.type.Date.Builder builderForValue) { + if (customTimeBeforeBuilder_ == null) { + customTimeBefore_ = builderForValue.build(); } else { - createdBeforeBuilder_.setMessage(builderForValue.build()); + customTimeBeforeBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000002; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -8214,27 +13251,28 @@ public Builder setCreatedBefore(com.google.type.Date.Builder builderForValue) { * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder mergeCreatedBefore(com.google.type.Date value) { - if (createdBeforeBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0) - && createdBefore_ != null - && createdBefore_ != com.google.type.Date.getDefaultInstance()) { - getCreatedBeforeBuilder().mergeFrom(value); + public Builder mergeCustomTimeBefore(com.google.type.Date value) { + if (customTimeBeforeBuilder_ == null) { + if (((bitField0_ & 0x00000040) != 0) + && customTimeBefore_ != null + && customTimeBefore_ != com.google.type.Date.getDefaultInstance()) { + getCustomTimeBeforeBuilder().mergeFrom(value); } else { - createdBefore_ = value; + customTimeBefore_ = value; } } else { - createdBeforeBuilder_.mergeFrom(value); + customTimeBeforeBuilder_.mergeFrom(value); } - if (createdBefore_ != null) { - bitField0_ |= 0x00000002; + if (customTimeBefore_ != null) { + bitField0_ |= 0x00000040; onChanged(); } return this; @@ -8244,19 +13282,20 @@ public Builder mergeCreatedBefore(com.google.type.Date value) { * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ - public Builder clearCreatedBefore() { - bitField0_ = (bitField0_ & ~0x00000002); - createdBefore_ = null; - if (createdBeforeBuilder_ != null) { - createdBeforeBuilder_.dispose(); - createdBeforeBuilder_ = null; + public Builder clearCustomTimeBefore() { + bitField0_ = (bitField0_ & ~0x00000040); + customTimeBefore_ = null; + if (customTimeBeforeBuilder_ != null) { + customTimeBeforeBuilder_.dispose(); + customTimeBeforeBuilder_ = null; } onChanged(); return this; @@ -8266,37 +13305,39 @@ public Builder clearCreatedBefore() { * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.type.Date.Builder getCreatedBeforeBuilder() { - bitField0_ |= 0x00000002; + public com.google.type.Date.Builder getCustomTimeBeforeBuilder() { + bitField0_ |= 0x00000040; onChanged(); - return getCreatedBeforeFieldBuilder().getBuilder(); + return getCustomTimeBeforeFieldBuilder().getBuilder(); } /** * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ - public com.google.type.DateOrBuilder getCreatedBeforeOrBuilder() { - if (createdBeforeBuilder_ != null) { - return createdBeforeBuilder_.getMessageOrBuilder(); + public com.google.type.DateOrBuilder getCustomTimeBeforeOrBuilder() { + if (customTimeBeforeBuilder_ != null) { + return customTimeBeforeBuilder_.getMessageOrBuilder(); } else { - return createdBefore_ == null + return customTimeBefore_ == null ? com.google.type.Date.getDefaultInstance() - : createdBefore_; + : customTimeBefore_; } } @@ -8304,164 +13345,91 @@ public com.google.type.DateOrBuilder getCreatedBeforeOrBuilder() { * * *
-           * Optional. This condition is satisfied when an object is created
-           * before midnight of the specified date in UTC.
+           * Optional. An object matches this condition if the custom timestamp
+           * set on the object is before the specified date in UTC.
            * 
* - * .google.type.Date created_before = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; * */ private com.google.protobuf.SingleFieldBuilderV3< com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - getCreatedBeforeFieldBuilder() { - if (createdBeforeBuilder_ == null) { - createdBeforeBuilder_ = + getCustomTimeBeforeFieldBuilder() { + if (customTimeBeforeBuilder_ == null) { + customTimeBeforeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder>( - getCreatedBefore(), getParentForChildren(), isClean()); - createdBefore_ = null; + getCustomTimeBefore(), getParentForChildren(), isClean()); + customTimeBefore_ = null; } - return createdBeforeBuilder_; - } - - private boolean isLive_; - - /** - * - * - *
-           * Relevant only for versioned objects. If the value is
-           * `true`, this condition matches live objects; if the value
-           * is `false`, it matches archived objects.
-           * 
- * - * optional bool is_live = 3; - * - * @return Whether the isLive field is set. - */ - @java.lang.Override - public boolean hasIsLive() { - return ((bitField0_ & 0x00000004) != 0); - } - - /** - * - * - *
-           * Relevant only for versioned objects. If the value is
-           * `true`, this condition matches live objects; if the value
-           * is `false`, it matches archived objects.
-           * 
- * - * optional bool is_live = 3; - * - * @return The isLive. - */ - @java.lang.Override - public boolean getIsLive() { - return isLive_; - } - - /** - * - * - *
-           * Relevant only for versioned objects. If the value is
-           * `true`, this condition matches live objects; if the value
-           * is `false`, it matches archived objects.
-           * 
- * - * optional bool is_live = 3; - * - * @param value The isLive to set. - * @return This builder for chaining. - */ - public Builder setIsLive(boolean value) { - - isLive_ = value; - bitField0_ |= 0x00000004; - onChanged(); - return this; - } - - /** - * - * - *
-           * Relevant only for versioned objects. If the value is
-           * `true`, this condition matches live objects; if the value
-           * is `false`, it matches archived objects.
-           * 
- * - * optional bool is_live = 3; - * - * @return This builder for chaining. - */ - public Builder clearIsLive() { - bitField0_ = (bitField0_ & ~0x00000004); - isLive_ = false; - onChanged(); - return this; + return customTimeBeforeBuilder_; } - private int numNewerVersions_; + private int daysSinceNoncurrentTime_; /** * * *
-           * Relevant only for versioned objects. If the value is N, this
-           * condition is satisfied when there are at least N versions (including
-           * the live version) newer than this version of the object.
+           * This condition is relevant only for versioned objects. An object
+           * version satisfies this condition only if these many days have been
+           * passed since it became noncurrent. The value of the field must be a
+           * nonnegative integer. If it's zero, the object version will become
+           * eligible for Lifecycle action as soon as it becomes noncurrent.
            * 
* - * optional int32 num_newer_versions = 4; + * optional int32 days_since_noncurrent_time = 9; * - * @return Whether the numNewerVersions field is set. + * @return Whether the daysSinceNoncurrentTime field is set. */ @java.lang.Override - public boolean hasNumNewerVersions() { - return ((bitField0_ & 0x00000008) != 0); + public boolean hasDaysSinceNoncurrentTime() { + return ((bitField0_ & 0x00000080) != 0); } /** * * *
-           * Relevant only for versioned objects. If the value is N, this
-           * condition is satisfied when there are at least N versions (including
-           * the live version) newer than this version of the object.
+           * This condition is relevant only for versioned objects. An object
+           * version satisfies this condition only if these many days have been
+           * passed since it became noncurrent. The value of the field must be a
+           * nonnegative integer. If it's zero, the object version will become
+           * eligible for Lifecycle action as soon as it becomes noncurrent.
            * 
* - * optional int32 num_newer_versions = 4; + * optional int32 days_since_noncurrent_time = 9; * - * @return The numNewerVersions. + * @return The daysSinceNoncurrentTime. */ @java.lang.Override - public int getNumNewerVersions() { - return numNewerVersions_; + public int getDaysSinceNoncurrentTime() { + return daysSinceNoncurrentTime_; } /** * * *
-           * Relevant only for versioned objects. If the value is N, this
-           * condition is satisfied when there are at least N versions (including
-           * the live version) newer than this version of the object.
+           * This condition is relevant only for versioned objects. An object
+           * version satisfies this condition only if these many days have been
+           * passed since it became noncurrent. The value of the field must be a
+           * nonnegative integer. If it's zero, the object version will become
+           * eligible for Lifecycle action as soon as it becomes noncurrent.
            * 
* - * optional int32 num_newer_versions = 4; + * optional int32 days_since_noncurrent_time = 9; * - * @param value The numNewerVersions to set. + * @param value The daysSinceNoncurrentTime to set. * @return This builder for chaining. */ - public Builder setNumNewerVersions(int value) { + public Builder setDaysSinceNoncurrentTime(int value) { - numNewerVersions_ = value; - bitField0_ |= 0x00000008; + daysSinceNoncurrentTime_ = value; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -8470,142 +13438,153 @@ public Builder setNumNewerVersions(int value) { * * *
-           * Relevant only for versioned objects. If the value is N, this
-           * condition is satisfied when there are at least N versions (including
-           * the live version) newer than this version of the object.
+           * This condition is relevant only for versioned objects. An object
+           * version satisfies this condition only if these many days have been
+           * passed since it became noncurrent. The value of the field must be a
+           * nonnegative integer. If it's zero, the object version will become
+           * eligible for Lifecycle action as soon as it becomes noncurrent.
            * 
* - * optional int32 num_newer_versions = 4; + * optional int32 days_since_noncurrent_time = 9; * * @return This builder for chaining. */ - public Builder clearNumNewerVersions() { - bitField0_ = (bitField0_ & ~0x00000008); - numNewerVersions_ = 0; + public Builder clearDaysSinceNoncurrentTime() { + bitField0_ = (bitField0_ & ~0x00000080); + daysSinceNoncurrentTime_ = 0; onChanged(); return this; } - private com.google.protobuf.LazyStringArrayList matchesStorageClass_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureMatchesStorageClassIsMutable() { - if (!matchesStorageClass_.isModifiable()) { - matchesStorageClass_ = - new com.google.protobuf.LazyStringArrayList(matchesStorageClass_); - } - bitField0_ |= 0x00000010; - } + private com.google.type.Date noncurrentTimeBefore_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + noncurrentTimeBeforeBuilder_; /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return A list containing the matchesStorageClass. + * @return Whether the noncurrentTimeBefore field is set. */ - public com.google.protobuf.ProtocolStringList getMatchesStorageClassList() { - matchesStorageClass_.makeImmutable(); - return matchesStorageClass_; + public boolean hasNoncurrentTimeBefore() { + return ((bitField0_ & 0x00000100) != 0); } /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The count of matchesStorageClass. + * @return The noncurrentTimeBefore. */ - public int getMatchesStorageClassCount() { - return matchesStorageClass_.size(); + public com.google.type.Date getNoncurrentTimeBefore() { + if (noncurrentTimeBeforeBuilder_ == null) { + return noncurrentTimeBefore_ == null + ? com.google.type.Date.getDefaultInstance() + : noncurrentTimeBefore_; + } else { + return noncurrentTimeBeforeBuilder_.getMessage(); + } } /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index of the element to return. - * @return The matchesStorageClass at the given index. */ - public java.lang.String getMatchesStorageClass(int index) { - return matchesStorageClass_.get(index); + public Builder setNoncurrentTimeBefore(com.google.type.Date value) { + if (noncurrentTimeBeforeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + noncurrentTimeBefore_ = value; + } else { + noncurrentTimeBeforeBuilder_.setMessage(value); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index of the value to return. - * @return The bytes of the matchesStorageClass at the given index. */ - public com.google.protobuf.ByteString getMatchesStorageClassBytes(int index) { - return matchesStorageClass_.getByteString(index); + public Builder setNoncurrentTimeBefore(com.google.type.Date.Builder builderForValue) { + if (noncurrentTimeBeforeBuilder_ == null) { + noncurrentTimeBefore_ = builderForValue.build(); + } else { + noncurrentTimeBeforeBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000100; + onChanged(); + return this; } /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param index The index to set the value at. - * @param value The matchesStorageClass to set. - * @return This builder for chaining. */ - public Builder setMatchesStorageClass(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder mergeNoncurrentTimeBefore(com.google.type.Date value) { + if (noncurrentTimeBeforeBuilder_ == null) { + if (((bitField0_ & 0x00000100) != 0) + && noncurrentTimeBefore_ != null + && noncurrentTimeBefore_ != com.google.type.Date.getDefaultInstance()) { + getNoncurrentTimeBeforeBuilder().mergeFrom(value); + } else { + noncurrentTimeBefore_ = value; + } + } else { + noncurrentTimeBeforeBuilder_.mergeFrom(value); + } + if (noncurrentTimeBefore_ != null) { + bitField0_ |= 0x00000100; + onChanged(); } - ensureMatchesStorageClassIsMutable(); - matchesStorageClass_.set(index, value); - bitField0_ |= 0x00000010; - onChanged(); return this; } @@ -8613,26 +13592,22 @@ public Builder setMatchesStorageClass(int index, java.lang.String value) { * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param value The matchesStorageClass to add. - * @return This builder for chaining. */ - public Builder addMatchesStorageClass(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); + public Builder clearNoncurrentTimeBefore() { + bitField0_ = (bitField0_ & ~0x00000100); + noncurrentTimeBefore_ = null; + if (noncurrentTimeBeforeBuilder_ != null) { + noncurrentTimeBeforeBuilder_.dispose(); + noncurrentTimeBeforeBuilder_ = null; } - ensureMatchesStorageClassIsMutable(); - matchesStorageClass_.add(value); - bitField0_ |= 0x00000010; onChanged(); return this; } @@ -8641,229 +13616,243 @@ public Builder addMatchesStorageClass(java.lang.String value) { * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param values The matchesStorageClass to add. - * @return This builder for chaining. */ - public Builder addAllMatchesStorageClass(java.lang.Iterable values) { - ensureMatchesStorageClassIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, matchesStorageClass_); - bitField0_ |= 0x00000010; + public com.google.type.Date.Builder getNoncurrentTimeBeforeBuilder() { + bitField0_ |= 0x00000100; onChanged(); - return this; + return getNoncurrentTimeBeforeFieldBuilder().getBuilder(); } /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @return This builder for chaining. */ - public Builder clearMatchesStorageClass() { - matchesStorageClass_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000010); - ; - onChanged(); - return this; + public com.google.type.DateOrBuilder getNoncurrentTimeBeforeOrBuilder() { + if (noncurrentTimeBeforeBuilder_ != null) { + return noncurrentTimeBeforeBuilder_.getMessageOrBuilder(); + } else { + return noncurrentTimeBefore_ == null + ? com.google.type.Date.getDefaultInstance() + : noncurrentTimeBefore_; + } } /** * * *
-           * Optional. Objects having any of the storage classes specified by this
-           * condition will be matched. Values include `MULTI_REGIONAL`,
-           * `REGIONAL`, `NEARLINE`, `COLDLINE`, `STANDARD`, and
-           * `DURABLE_REDUCED_AVAILABILITY`.
+           * Optional. This condition is relevant only for versioned objects. An
+           * object version satisfies this condition only if it became noncurrent
+           * before the specified date in UTC.
            * 
* * - * repeated string matches_storage_class = 5 [(.google.api.field_behavior) = OPTIONAL]; + * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; * - * - * @param value The bytes of the matchesStorageClass to add. - * @return This builder for chaining. */ - public Builder addMatchesStorageClassBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + private com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> + getNoncurrentTimeBeforeFieldBuilder() { + if (noncurrentTimeBeforeBuilder_ == null) { + noncurrentTimeBeforeBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.type.Date, + com.google.type.Date.Builder, + com.google.type.DateOrBuilder>( + getNoncurrentTimeBefore(), getParentForChildren(), isClean()); + noncurrentTimeBefore_ = null; } - checkByteStringIsUtf8(value); - ensureMatchesStorageClassIsMutable(); - matchesStorageClass_.add(value); - bitField0_ |= 0x00000010; - onChanged(); - return this; + return noncurrentTimeBeforeBuilder_; } - private int daysSinceCustomTime_; + private com.google.protobuf.LazyStringArrayList matchesPrefix_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureMatchesPrefixIsMutable() { + if (!matchesPrefix_.isModifiable()) { + matchesPrefix_ = new com.google.protobuf.LazyStringArrayList(matchesPrefix_); + } + bitField0_ |= 0x00000200; + } /** * * *
-           * Number of days that have elapsed since the custom timestamp set on an
-           * object.
-           * The value of the field must be a nonnegative integer.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_custom_time = 7; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return Whether the daysSinceCustomTime field is set. + * @return A list containing the matchesPrefix. */ - @java.lang.Override - public boolean hasDaysSinceCustomTime() { - return ((bitField0_ & 0x00000020) != 0); + public com.google.protobuf.ProtocolStringList getMatchesPrefixList() { + matchesPrefix_.makeImmutable(); + return matchesPrefix_; } /** * * *
-           * Number of days that have elapsed since the custom timestamp set on an
-           * object.
-           * The value of the field must be a nonnegative integer.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_custom_time = 7; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The daysSinceCustomTime. + * @return The count of matchesPrefix. */ - @java.lang.Override - public int getDaysSinceCustomTime() { - return daysSinceCustomTime_; + public int getMatchesPrefixCount() { + return matchesPrefix_.size(); } /** * * *
-           * Number of days that have elapsed since the custom timestamp set on an
-           * object.
-           * The value of the field must be a nonnegative integer.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_custom_time = 7; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The daysSinceCustomTime to set. - * @return This builder for chaining. + * @param index The index of the element to return. + * @return The matchesPrefix at the given index. */ - public Builder setDaysSinceCustomTime(int value) { + public java.lang.String getMatchesPrefix(int index) { + return matchesPrefix_.get(index); + } - daysSinceCustomTime_ = value; - bitField0_ |= 0x00000020; - onChanged(); - return this; + /** + * + * + *
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
+           * 
+ * + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the value to return. + * @return The bytes of the matchesPrefix at the given index. + */ + public com.google.protobuf.ByteString getMatchesPrefixBytes(int index) { + return matchesPrefix_.getByteString(index); } /** * * *
-           * Number of days that have elapsed since the custom timestamp set on an
-           * object.
-           * The value of the field must be a nonnegative integer.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_custom_time = 7; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; + * * + * @param index The index to set the value at. + * @param value The matchesPrefix to set. * @return This builder for chaining. */ - public Builder clearDaysSinceCustomTime() { - bitField0_ = (bitField0_ & ~0x00000020); - daysSinceCustomTime_ = 0; + public Builder setMatchesPrefix(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureMatchesPrefixIsMutable(); + matchesPrefix_.set(index, value); + bitField0_ |= 0x00000200; onChanged(); return this; } - private com.google.type.Date customTimeBefore_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - customTimeBeforeBuilder_; - /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return Whether the customTimeBefore field is set. + * @param value The matchesPrefix to add. + * @return This builder for chaining. */ - public boolean hasCustomTimeBefore() { - return ((bitField0_ & 0x00000040) != 0); + public Builder addMatchesPrefix(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureMatchesPrefixIsMutable(); + matchesPrefix_.add(value); + bitField0_ |= 0x00000200; + onChanged(); + return this; } /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; * * - * @return The customTimeBefore. + * @param values The matchesPrefix to add. + * @return This builder for chaining. */ - public com.google.type.Date getCustomTimeBefore() { - if (customTimeBeforeBuilder_ == null) { - return customTimeBefore_ == null - ? com.google.type.Date.getDefaultInstance() - : customTimeBefore_; - } else { - return customTimeBeforeBuilder_.getMessage(); - } + public Builder addAllMatchesPrefix(java.lang.Iterable values) { + ensureMatchesPrefixIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, matchesPrefix_); + bitField0_ |= 0x00000200; + onChanged(); + return this; } /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return This builder for chaining. */ - public Builder setCustomTimeBefore(com.google.type.Date value) { - if (customTimeBeforeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - customTimeBefore_ = value; - } else { - customTimeBeforeBuilder_.setMessage(value); - } - bitField0_ |= 0x00000040; + public Builder clearMatchesPrefix() { + matchesPrefix_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000200); + ; onChanged(); return this; } @@ -8872,2028 +13861,2486 @@ public Builder setCustomTimeBefore(com.google.type.Date value) { * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name prefixes. If any prefix exactly matches
+           * the beginning of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param value The bytes of the matchesPrefix to add. + * @return This builder for chaining. */ - public Builder setCustomTimeBefore(com.google.type.Date.Builder builderForValue) { - if (customTimeBeforeBuilder_ == null) { - customTimeBefore_ = builderForValue.build(); - } else { - customTimeBeforeBuilder_.setMessage(builderForValue.build()); + public Builder addMatchesPrefixBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000040; + checkByteStringIsUtf8(value); + ensureMatchesPrefixIsMutable(); + matchesPrefix_.add(value); + bitField0_ |= 0x00000200; onChanged(); return this; } + private com.google.protobuf.LazyStringArrayList matchesSuffix_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureMatchesSuffixIsMutable() { + if (!matchesSuffix_.isModifiable()) { + matchesSuffix_ = new com.google.protobuf.LazyStringArrayList(matchesSuffix_); + } + bitField0_ |= 0x00000400; + } + /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return A list containing the matchesSuffix. */ - public Builder mergeCustomTimeBefore(com.google.type.Date value) { - if (customTimeBeforeBuilder_ == null) { - if (((bitField0_ & 0x00000040) != 0) - && customTimeBefore_ != null - && customTimeBefore_ != com.google.type.Date.getDefaultInstance()) { - getCustomTimeBeforeBuilder().mergeFrom(value); - } else { - customTimeBefore_ = value; - } - } else { - customTimeBeforeBuilder_.mergeFrom(value); - } - if (customTimeBefore_ != null) { - bitField0_ |= 0x00000040; - onChanged(); - } - return this; + public com.google.protobuf.ProtocolStringList getMatchesSuffixList() { + matchesSuffix_.makeImmutable(); + return matchesSuffix_; } /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @return The count of matchesSuffix. */ - public Builder clearCustomTimeBefore() { - bitField0_ = (bitField0_ & ~0x00000040); - customTimeBefore_ = null; - if (customTimeBeforeBuilder_ != null) { - customTimeBeforeBuilder_.dispose(); - customTimeBeforeBuilder_ = null; - } - onChanged(); - return this; + public int getMatchesSuffixCount() { + return matchesSuffix_.size(); } /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param index The index of the element to return. + * @return The matchesSuffix at the given index. */ - public com.google.type.Date.Builder getCustomTimeBeforeBuilder() { - bitField0_ |= 0x00000040; - onChanged(); - return getCustomTimeBeforeFieldBuilder().getBuilder(); + public java.lang.String getMatchesSuffix(int index) { + return matchesSuffix_.get(index); + } + + /** + * + * + *
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
+           * 
+ * + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @param index The index of the value to return. + * @return The bytes of the matchesSuffix at the given index. + */ + public com.google.protobuf.ByteString getMatchesSuffixBytes(int index) { + return matchesSuffix_.getByteString(index); } /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param index The index to set the value at. + * @param value The matchesSuffix to set. + * @return This builder for chaining. */ - public com.google.type.DateOrBuilder getCustomTimeBeforeOrBuilder() { - if (customTimeBeforeBuilder_ != null) { - return customTimeBeforeBuilder_.getMessageOrBuilder(); - } else { - return customTimeBefore_ == null - ? com.google.type.Date.getDefaultInstance() - : customTimeBefore_; + public Builder setMatchesSuffix(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + ensureMatchesSuffixIsMutable(); + matchesSuffix_.set(index, value); + bitField0_ |= 0x00000400; + onChanged(); + return this; } /** * * *
-           * Optional. An object matches this condition if the custom timestamp
-           * set on the object is before the specified date in UTC.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * - * .google.type.Date custom_time_before = 8 [(.google.api.field_behavior) = OPTIONAL]; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; * + * + * @param value The matchesSuffix to add. + * @return This builder for chaining. */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - getCustomTimeBeforeFieldBuilder() { - if (customTimeBeforeBuilder_ == null) { - customTimeBeforeBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, - com.google.type.Date.Builder, - com.google.type.DateOrBuilder>( - getCustomTimeBefore(), getParentForChildren(), isClean()); - customTimeBefore_ = null; + public Builder addMatchesSuffix(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } - return customTimeBeforeBuilder_; + ensureMatchesSuffixIsMutable(); + matchesSuffix_.add(value); + bitField0_ |= 0x00000400; + onChanged(); + return this; } - private int daysSinceNoncurrentTime_; - /** * * *
-           * This condition is relevant only for versioned objects. An object
-           * version satisfies this condition only if these many days have been
-           * passed since it became noncurrent. The value of the field must be a
-           * nonnegative integer. If it's zero, the object version will become
-           * eligible for Lifecycle action as soon as it becomes noncurrent.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_noncurrent_time = 9; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return Whether the daysSinceNoncurrentTime field is set. + * @param values The matchesSuffix to add. + * @return This builder for chaining. */ - @java.lang.Override - public boolean hasDaysSinceNoncurrentTime() { - return ((bitField0_ & 0x00000080) != 0); + public Builder addAllMatchesSuffix(java.lang.Iterable values) { + ensureMatchesSuffixIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, matchesSuffix_); + bitField0_ |= 0x00000400; + onChanged(); + return this; } /** * * *
-           * This condition is relevant only for versioned objects. An object
-           * version satisfies this condition only if these many days have been
-           * passed since it became noncurrent. The value of the field must be a
-           * nonnegative integer. If it's zero, the object version will become
-           * eligible for Lifecycle action as soon as it becomes noncurrent.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_noncurrent_time = 9; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @return The daysSinceNoncurrentTime. + * @return This builder for chaining. */ - @java.lang.Override - public int getDaysSinceNoncurrentTime() { - return daysSinceNoncurrentTime_; + public Builder clearMatchesSuffix() { + matchesSuffix_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000400); + ; + onChanged(); + return this; } /** * * *
-           * This condition is relevant only for versioned objects. An object
-           * version satisfies this condition only if these many days have been
-           * passed since it became noncurrent. The value of the field must be a
-           * nonnegative integer. If it's zero, the object version will become
-           * eligible for Lifecycle action as soon as it becomes noncurrent.
+           * Optional. List of object name suffixes. If any suffix exactly matches
+           * the end of the object name, the condition evaluates to true.
            * 
* - * optional int32 days_since_noncurrent_time = 9; + * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; + * * - * @param value The daysSinceNoncurrentTime to set. + * @param value The bytes of the matchesSuffix to add. * @return This builder for chaining. */ - public Builder setDaysSinceNoncurrentTime(int value) { + public Builder addMatchesSuffixBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureMatchesSuffixIsMutable(); + matchesSuffix_.add(value); + bitField0_ |= 0x00000400; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle.Rule.Condition) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule.Condition) + private static final com.google.storage.v2.Bucket.Lifecycle.Rule.Condition DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle.Rule.Condition(); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Condition parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + private int bitField0_; + public static final int ACTION_FIELD_NUMBER = 1; + private com.google.storage.v2.Bucket.Lifecycle.Rule.Action action_; + + /** + * + * + *
+       * Optional. The action to take.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the action field is set. + */ + @java.lang.Override + public boolean hasAction() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+       * Optional. The action to take.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The action. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getAction() { + return action_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() + : action_; + } + + /** + * + * + *
+       * Optional. The action to take.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder getActionOrBuilder() { + return action_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() + : action_; + } + + public static final int CONDITION_FIELD_NUMBER = 2; + private com.google.storage.v2.Bucket.Lifecycle.Rule.Condition condition_; + + /** + * + * + *
+       * Optional. The condition(s) under which the action will be taken.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the condition field is set. + */ + @java.lang.Override + public boolean hasCondition() { + return ((bitField0_ & 0x00000002) != 0); + } + + /** + * + * + *
+       * Optional. The condition(s) under which the action will be taken.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The condition. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getCondition() { + return condition_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() + : condition_; + } + + /** + * + * + *
+       * Optional. The condition(s) under which the action will be taken.
+       * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder + getConditionOrBuilder() { + return condition_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() + : condition_; + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (((bitField0_ & 0x00000001) != 0)) { + output.writeMessage(1, getAction()); + } + if (((bitField0_ & 0x00000002) != 0)) { + output.writeMessage(2, getCondition()); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (((bitField0_ & 0x00000001) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getAction()); + } + if (((bitField0_ & 0x00000002) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getCondition()); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle.Rule)) { + return super.equals(obj); + } + com.google.storage.v2.Bucket.Lifecycle.Rule other = + (com.google.storage.v2.Bucket.Lifecycle.Rule) obj; + + if (hasAction() != other.hasAction()) return false; + if (hasAction()) { + if (!getAction().equals(other.getAction())) return false; + } + if (hasCondition() != other.hasCondition()) return false; + if (hasCondition()) { + if (!getCondition().equals(other.getCondition())) return false; + } + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasAction()) { + hash = (37 * hash) + ACTION_FIELD_NUMBER; + hash = (53 * hash) + getAction().hashCode(); + } + if (hasCondition()) { + hash = (37 * hash) + CONDITION_FIELD_NUMBER; + hash = (53 * hash) + getCondition().hashCode(); + } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.storage.v2.Bucket.Lifecycle.Rule prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+       * A lifecycle Rule, combining an action to take on an object and a
+       * condition which will trigger that action.
+       * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle.Rule) + com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.Rule.class, + com.google.storage.v2.Bucket.Lifecycle.Rule.Builder.class); + } - daysSinceNoncurrentTime_ = value; - bitField0_ |= 0x00000080; - onChanged(); - return this; + // Construct using com.google.storage.v2.Bucket.Lifecycle.Rule.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { + getActionFieldBuilder(); + getConditionFieldBuilder(); } + } - /** - * - * - *
-           * This condition is relevant only for versioned objects. An object
-           * version satisfies this condition only if these many days have been
-           * passed since it became noncurrent. The value of the field must be a
-           * nonnegative integer. If it's zero, the object version will become
-           * eligible for Lifecycle action as soon as it becomes noncurrent.
-           * 
- * - * optional int32 days_since_noncurrent_time = 9; - * - * @return This builder for chaining. - */ - public Builder clearDaysSinceNoncurrentTime() { - bitField0_ = (bitField0_ & ~0x00000080); - daysSinceNoncurrentTime_ = 0; - onChanged(); - return this; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + action_ = null; + if (actionBuilder_ != null) { + actionBuilder_.dispose(); + actionBuilder_ = null; + } + condition_ = null; + if (conditionBuilder_ != null) { + conditionBuilder_.dispose(); + conditionBuilder_ = null; } + return this; + } - private com.google.type.Date noncurrentTimeBefore_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - noncurrentTimeBeforeBuilder_; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_descriptor; + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the noncurrentTimeBefore field is set. - */ - public boolean hasNoncurrentTimeBefore() { - return ((bitField0_ & 0x00000100) != 0); - } + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance(); + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The noncurrentTimeBefore. - */ - public com.google.type.Date getNoncurrentTimeBefore() { - if (noncurrentTimeBeforeBuilder_ == null) { - return noncurrentTimeBefore_ == null - ? com.google.type.Date.getDefaultInstance() - : noncurrentTimeBefore_; - } else { - return noncurrentTimeBeforeBuilder_.getMessage(); - } + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule build() { + com.google.storage.v2.Bucket.Lifecycle.Rule result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setNoncurrentTimeBefore(com.google.type.Date value) { - if (noncurrentTimeBeforeBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - noncurrentTimeBefore_ = value; - } else { - noncurrentTimeBeforeBuilder_.setMessage(value); - } - bitField0_ |= 0x00000100; - onChanged(); - return this; + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule buildPartial() { + com.google.storage.v2.Bucket.Lifecycle.Rule result = + new com.google.storage.v2.Bucket.Lifecycle.Rule(this); + if (bitField0_ != 0) { + buildPartial0(result); } + onBuilt(); + return result; + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setNoncurrentTimeBefore(com.google.type.Date.Builder builderForValue) { - if (noncurrentTimeBeforeBuilder_ == null) { - noncurrentTimeBefore_ = builderForValue.build(); - } else { - noncurrentTimeBeforeBuilder_.setMessage(builderForValue.build()); - } - bitField0_ |= 0x00000100; - onChanged(); - return this; + private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle.Rule result) { + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.action_ = actionBuilder_ == null ? action_ : actionBuilder_.build(); + to_bitField0_ |= 0x00000001; } - - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeNoncurrentTimeBefore(com.google.type.Date value) { - if (noncurrentTimeBeforeBuilder_ == null) { - if (((bitField0_ & 0x00000100) != 0) - && noncurrentTimeBefore_ != null - && noncurrentTimeBefore_ != com.google.type.Date.getDefaultInstance()) { - getNoncurrentTimeBeforeBuilder().mergeFrom(value); - } else { - noncurrentTimeBefore_ = value; - } - } else { - noncurrentTimeBeforeBuilder_.mergeFrom(value); - } - if (noncurrentTimeBefore_ != null) { - bitField0_ |= 0x00000100; - onChanged(); - } - return this; + if (((from_bitField0_ & 0x00000002) != 0)) { + result.condition_ = conditionBuilder_ == null ? condition_ : conditionBuilder_.build(); + to_bitField0_ |= 0x00000002; } + result.bitField0_ |= to_bitField0_; + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearNoncurrentTimeBefore() { - bitField0_ = (bitField0_ & ~0x00000100); - noncurrentTimeBefore_ = null; - if (noncurrentTimeBeforeBuilder_ != null) { - noncurrentTimeBeforeBuilder_.dispose(); - noncurrentTimeBeforeBuilder_ = null; - } - onChanged(); - return this; - } + @java.lang.Override + public Builder clone() { + return super.clone(); + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.type.Date.Builder getNoncurrentTimeBeforeBuilder() { - bitField0_ |= 0x00000100; - onChanged(); - return getNoncurrentTimeBeforeFieldBuilder().getBuilder(); - } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.type.DateOrBuilder getNoncurrentTimeBeforeOrBuilder() { - if (noncurrentTimeBeforeBuilder_ != null) { - return noncurrentTimeBeforeBuilder_.getMessageOrBuilder(); - } else { - return noncurrentTimeBefore_ == null - ? com.google.type.Date.getDefaultInstance() - : noncurrentTimeBefore_; - } - } + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } - /** - * - * - *
-           * Optional. This condition is relevant only for versioned objects. An
-           * object version satisfies this condition only if it became noncurrent
-           * before the specified date in UTC.
-           * 
- * - * - * .google.type.Date noncurrent_time_before = 10 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder> - getNoncurrentTimeBeforeFieldBuilder() { - if (noncurrentTimeBeforeBuilder_ == null) { - noncurrentTimeBeforeBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.type.Date, - com.google.type.Date.Builder, - com.google.type.DateOrBuilder>( - getNoncurrentTimeBefore(), getParentForChildren(), isClean()); - noncurrentTimeBefore_ = null; - } - return noncurrentTimeBeforeBuilder_; - } + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } - private com.google.protobuf.LazyStringArrayList matchesPrefix_ = - com.google.protobuf.LazyStringArrayList.emptyList(); + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } - private void ensureMatchesPrefixIsMutable() { - if (!matchesPrefix_.isModifiable()) { - matchesPrefix_ = new com.google.protobuf.LazyStringArrayList(matchesPrefix_); - } - bitField0_ |= 0x00000200; - } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return A list containing the matchesPrefix. - */ - public com.google.protobuf.ProtocolStringList getMatchesPrefixList() { - matchesPrefix_.makeImmutable(); - return matchesPrefix_; + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.Lifecycle.Rule) { + return mergeFrom((com.google.storage.v2.Bucket.Lifecycle.Rule) other); + } else { + super.mergeFrom(other); + return this; } + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The count of matchesPrefix. - */ - public int getMatchesPrefixCount() { - return matchesPrefix_.size(); + public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle.Rule other) { + if (other == com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance()) + return this; + if (other.hasAction()) { + mergeAction(other.getAction()); + } + if (other.hasCondition()) { + mergeCondition(other.getCondition()); } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the element to return. - * @return The matchesPrefix at the given index. - */ - public java.lang.String getMatchesPrefix(int index) { - return matchesPrefix_.get(index); + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + input.readMessage(getActionFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + input.readMessage(getConditionFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000002; + break; + } // case 18 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the value to return. - * @return The bytes of the matchesPrefix at the given index. - */ - public com.google.protobuf.ByteString getMatchesPrefixBytes(int index) { - return matchesPrefix_.getByteString(index); + private int bitField0_; + + private com.google.storage.v2.Bucket.Lifecycle.Rule.Action action_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule.Action, + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder, + com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder> + actionBuilder_; + + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the action field is set. + */ + public boolean hasAction() { + return ((bitField0_ & 0x00000001) != 0); + } + + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The action. + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getAction() { + if (actionBuilder_ == null) { + return action_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() + : action_; + } else { + return actionBuilder_.getMessage(); } + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index to set the value at. - * @param value The matchesPrefix to set. - * @return This builder for chaining. - */ - public Builder setMatchesPrefix(int index, java.lang.String value) { + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAction(com.google.storage.v2.Bucket.Lifecycle.Rule.Action value) { + if (actionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureMatchesPrefixIsMutable(); - matchesPrefix_.set(index, value); - bitField0_ |= 0x00000200; - onChanged(); - return this; + action_ = value; + } else { + actionBuilder_.setMessage(value); } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The matchesPrefix to add. - * @return This builder for chaining. - */ - public Builder addMatchesPrefix(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureMatchesPrefixIsMutable(); - matchesPrefix_.add(value); - bitField0_ |= 0x00000200; - onChanged(); - return this; + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setAction( + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder builderForValue) { + if (actionBuilder_ == null) { + action_ = builderForValue.build(); + } else { + actionBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00000001; + onChanged(); + return this; + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param values The matchesPrefix to add. - * @return This builder for chaining. - */ - public Builder addAllMatchesPrefix(java.lang.Iterable values) { - ensureMatchesPrefixIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, matchesPrefix_); - bitField0_ |= 0x00000200; - onChanged(); - return this; + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeAction(com.google.storage.v2.Bucket.Lifecycle.Rule.Action value) { + if (actionBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0) + && action_ != null + && action_ + != com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance()) { + getActionBuilder().mergeFrom(value); + } else { + action_ = value; + } + } else { + actionBuilder_.mergeFrom(value); } - - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return This builder for chaining. - */ - public Builder clearMatchesPrefix() { - matchesPrefix_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000200); - ; + if (action_ != null) { + bitField0_ |= 0x00000001; onChanged(); - return this; } + return this; + } - /** - * - * - *
-           * Optional. List of object name prefixes. If any prefix exactly matches
-           * the beginning of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_prefix = 11 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The bytes of the matchesPrefix to add. - * @return This builder for chaining. - */ - public Builder addMatchesPrefixBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - ensureMatchesPrefixIsMutable(); - matchesPrefix_.add(value); - bitField0_ |= 0x00000200; - onChanged(); - return this; + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearAction() { + bitField0_ = (bitField0_ & ~0x00000001); + action_ = null; + if (actionBuilder_ != null) { + actionBuilder_.dispose(); + actionBuilder_ = null; } + onChanged(); + return this; + } - private com.google.protobuf.LazyStringArrayList matchesSuffix_ = - com.google.protobuf.LazyStringArrayList.emptyList(); - - private void ensureMatchesSuffixIsMutable() { - if (!matchesSuffix_.isModifiable()) { - matchesSuffix_ = new com.google.protobuf.LazyStringArrayList(matchesSuffix_); - } - bitField0_ |= 0x00000400; - } + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder getActionBuilder() { + bitField0_ |= 0x00000001; + onChanged(); + return getActionFieldBuilder().getBuilder(); + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return A list containing the matchesSuffix. - */ - public com.google.protobuf.ProtocolStringList getMatchesSuffixList() { - matchesSuffix_.makeImmutable(); - return matchesSuffix_; + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder getActionOrBuilder() { + if (actionBuilder_ != null) { + return actionBuilder_.getMessageOrBuilder(); + } else { + return action_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() + : action_; } + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The count of matchesSuffix. - */ - public int getMatchesSuffixCount() { - return matchesSuffix_.size(); + /** + * + * + *
+         * Optional. The action to take.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule.Action, + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder, + com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder> + getActionFieldBuilder() { + if (actionBuilder_ == null) { + actionBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule.Action, + com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder, + com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder>( + getAction(), getParentForChildren(), isClean()); + action_ = null; } + return actionBuilder_; + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the element to return. - * @return The matchesSuffix at the given index. - */ - public java.lang.String getMatchesSuffix(int index) { - return matchesSuffix_.get(index); - } + private com.google.storage.v2.Bucket.Lifecycle.Rule.Condition condition_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition, + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder, + com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder> + conditionBuilder_; - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index of the value to return. - * @return The bytes of the matchesSuffix at the given index. - */ - public com.google.protobuf.ByteString getMatchesSuffixBytes(int index) { - return matchesSuffix_.getByteString(index); - } + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the condition field is set. + */ + public boolean hasCondition() { + return ((bitField0_ & 0x00000002) != 0); + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param index The index to set the value at. - * @param value The matchesSuffix to set. - * @return This builder for chaining. - */ - public Builder setMatchesSuffix(int index, java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - ensureMatchesSuffixIsMutable(); - matchesSuffix_.set(index, value); - bitField0_ |= 0x00000400; - onChanged(); - return this; + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The condition. + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getCondition() { + if (conditionBuilder_ == null) { + return condition_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() + : condition_; + } else { + return conditionBuilder_.getMessage(); } + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The matchesSuffix to add. - * @return This builder for chaining. - */ - public Builder addMatchesSuffix(java.lang.String value) { + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCondition(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition value) { + if (conditionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } - ensureMatchesSuffixIsMutable(); - matchesSuffix_.add(value); - bitField0_ |= 0x00000400; - onChanged(); - return this; - } - - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param values The matchesSuffix to add. - * @return This builder for chaining. - */ - public Builder addAllMatchesSuffix(java.lang.Iterable values) { - ensureMatchesSuffixIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, matchesSuffix_); - bitField0_ |= 0x00000400; - onChanged(); - return this; + condition_ = value; + } else { + conditionBuilder_.setMessage(value); } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return This builder for chaining. - */ - public Builder clearMatchesSuffix() { - matchesSuffix_ = com.google.protobuf.LazyStringArrayList.emptyList(); - bitField0_ = (bitField0_ & ~0x00000400); - ; - onChanged(); - return this; + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setCondition( + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder builderForValue) { + if (conditionBuilder_ == null) { + condition_ = builderForValue.build(); + } else { + conditionBuilder_.setMessage(builderForValue.build()); } + bitField0_ |= 0x00000002; + onChanged(); + return this; + } - /** - * - * - *
-           * Optional. List of object name suffixes. If any suffix exactly matches
-           * the end of the object name, the condition evaluates to true.
-           * 
- * - * repeated string matches_suffix = 12 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @param value The bytes of the matchesSuffix to add. - * @return This builder for chaining. - */ - public Builder addMatchesSuffixBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeCondition(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition value) { + if (conditionBuilder_ == null) { + if (((bitField0_ & 0x00000002) != 0) + && condition_ != null + && condition_ + != com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance()) { + getConditionBuilder().mergeFrom(value); + } else { + condition_ = value; } - checkByteStringIsUtf8(value); - ensureMatchesSuffixIsMutable(); - matchesSuffix_.add(value); - bitField0_ |= 0x00000400; - onChanged(); - return this; + } else { + conditionBuilder_.mergeFrom(value); } - - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + if (condition_ != null) { + bitField0_ |= 0x00000002; + onChanged(); } + return this; + } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearCondition() { + bitField0_ = (bitField0_ & ~0x00000002); + condition_ = null; + if (conditionBuilder_ != null) { + conditionBuilder_.dispose(); + conditionBuilder_ = null; } - - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle.Rule.Condition) + onChanged(); + return this; } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule.Condition) - private static final com.google.storage.v2.Bucket.Lifecycle.Rule.Condition DEFAULT_INSTANCE; - - static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle.Rule.Condition(); + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder getConditionBuilder() { + bitField0_ |= 0x00000002; + onChanged(); + return getConditionFieldBuilder().getBuilder(); } - public static com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getDefaultInstance() { - return DEFAULT_INSTANCE; + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder + getConditionOrBuilder() { + if (conditionBuilder_ != null) { + return conditionBuilder_.getMessageOrBuilder(); + } else { + return condition_ == null + ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() + : condition_; + } } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Condition parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; - - public static com.google.protobuf.Parser parser() { - return PARSER; + /** + * + * + *
+         * Optional. The condition(s) under which the action will be taken.
+         * 
+ * + * + * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition, + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder, + com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder> + getConditionFieldBuilder() { + if (conditionBuilder_ == null) { + conditionBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition, + com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder, + com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder>( + getCondition(), getParentForChildren(), isClean()); + condition_ = null; + } + return conditionBuilder_; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getDefaultInstanceForType() { - return DEFAULT_INSTANCE; + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - } - - private int bitField0_; - public static final int ACTION_FIELD_NUMBER = 1; - private com.google.storage.v2.Bucket.Lifecycle.Rule.Action action_; - - /** - * - * - *
-       * Optional. The action to take.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the action field is set. - */ - @java.lang.Override - public boolean hasAction() { - return ((bitField0_ & 0x00000001) != 0); - } - - /** - * - * - *
-       * Optional. The action to take.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The action. - */ - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getAction() { - return action_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() - : action_; - } - /** - * - * - *
-       * Optional. The action to take.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder getActionOrBuilder() { - return action_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() - : action_; + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle.Rule) } - public static final int CONDITION_FIELD_NUMBER = 2; - private com.google.storage.v2.Bucket.Lifecycle.Rule.Condition condition_; - - /** - * - * - *
-       * Optional. The condition(s) under which the action will be taken.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the condition field is set. - */ - @java.lang.Override - public boolean hasCondition() { - return ((bitField0_ & 0x00000002) != 0); - } + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule) + private static final com.google.storage.v2.Bucket.Lifecycle.Rule DEFAULT_INSTANCE; - /** - * - * - *
-       * Optional. The condition(s) under which the action will be taken.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The condition. - */ - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getCondition() { - return condition_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() - : condition_; + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle.Rule(); } - /** - * - * - *
-       * Optional. The condition(s) under which the action will be taken.
-       * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder - getConditionOrBuilder() { - return condition_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() - : condition_; + public static com.google.storage.v2.Bucket.Lifecycle.Rule getDefaultInstance() { + return DEFAULT_INSTANCE; } - private byte memoizedIsInitialized = -1; - - @java.lang.Override - public final boolean isInitialized() { - byte isInitialized = memoizedIsInitialized; - if (isInitialized == 1) return true; - if (isInitialized == 0) return false; + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Rule parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; - memoizedIsInitialized = 1; - return true; + public static com.google.protobuf.Parser parser() { + return PARSER; } @java.lang.Override - public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (((bitField0_ & 0x00000001) != 0)) { - output.writeMessage(1, getAction()); - } - if (((bitField0_ & 0x00000002) != 0)) { - output.writeMessage(2, getCondition()); - } - getUnknownFields().writeTo(output); + public com.google.protobuf.Parser getParserForType() { + return PARSER; } @java.lang.Override - public int getSerializedSize() { - int size = memoizedSize; - if (size != -1) return size; - - size = 0; - if (((bitField0_ & 0x00000001) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getAction()); - } - if (((bitField0_ & 0x00000002) != 0)) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getCondition()); - } - size += getUnknownFields().getSerializedSize(); - memoizedSize = size; - return size; + public com.google.storage.v2.Bucket.Lifecycle.Rule getDefaultInstanceForType() { + return DEFAULT_INSTANCE; } + } - @java.lang.Override - public boolean equals(final java.lang.Object obj) { - if (obj == this) { - return true; - } - if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle.Rule)) { - return super.equals(obj); - } - com.google.storage.v2.Bucket.Lifecycle.Rule other = - (com.google.storage.v2.Bucket.Lifecycle.Rule) obj; - - if (hasAction() != other.hasAction()) return false; - if (hasAction()) { - if (!getAction().equals(other.getAction())) return false; - } - if (hasCondition() != other.hasCondition()) return false; - if (hasCondition()) { - if (!getCondition().equals(other.getCondition())) return false; - } - if (!getUnknownFields().equals(other.getUnknownFields())) return false; - return true; - } + public static final int RULE_FIELD_NUMBER = 1; - @java.lang.Override - public int hashCode() { - if (memoizedHashCode != 0) { - return memoizedHashCode; - } - int hash = 41; - hash = (19 * hash) + getDescriptor().hashCode(); - if (hasAction()) { - hash = (37 * hash) + ACTION_FIELD_NUMBER; - hash = (53 * hash) + getAction().hashCode(); - } - if (hasCondition()) { - hash = (37 * hash) + CONDITION_FIELD_NUMBER; - hash = (53 * hash) + getCondition().hashCode(); - } - hash = (29 * hash) + getUnknownFields().hashCode(); - memoizedHashCode = hash; - return hash; - } + @SuppressWarnings("serial") + private java.util.List rule_; - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom(java.nio.ByteBuffer data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List getRuleList() { + return rule_; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public java.util.List + getRuleOrBuilderList() { + return rule_; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - com.google.protobuf.ByteString data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public int getRuleCount() { + return rule_.size(); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - com.google.protobuf.ByteString data, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.Rule getRule(int index) { + return rule_.get(index); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom(byte[] data) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data); - } + /** + * + * + *
+     * Optional. A lifecycle management rule, which is made of an action to take
+     * and the condition(s) under which the action will be taken.
+     * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int index) { + return rule_.get(index); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - return PARSER.parseFrom(data, extensionRegistry); - } + private byte memoizedIsInitialized = -1; - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom(java.io.InputStream input) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); - } + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); - } + memoizedIsInitialized = 1; + return true; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + for (int i = 0; i < rule_.size(); i++) { + output.writeMessage(1, rule_.get(i)); } + getUnknownFields().writeTo(output); + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseDelimitedFrom( - java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( - PARSER, input, extensionRegistry); - } + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - com.google.protobuf.CodedInputStream input) throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + size = 0; + for (int i = 0; i < rule_.size(); i++) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, rule_.get(i)); } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } - public static com.google.storage.v2.Bucket.Lifecycle.Rule parseFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - return com.google.protobuf.GeneratedMessageV3.parseWithIOException( - PARSER, input, extensionRegistry); + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; } - - @java.lang.Override - public Builder newBuilderForType() { - return newBuilder(); + if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle)) { + return super.equals(obj); } + com.google.storage.v2.Bucket.Lifecycle other = (com.google.storage.v2.Bucket.Lifecycle) obj; - public static Builder newBuilder() { - return DEFAULT_INSTANCE.toBuilder(); - } + if (!getRuleList().equals(other.getRuleList())) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } - public static Builder newBuilder(com.google.storage.v2.Bucket.Lifecycle.Rule prototype) { - return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; } - - @java.lang.Override - public Builder toBuilder() { - return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getRuleCount() > 0) { + hash = (37 * hash) + RULE_FIELD_NUMBER; + hash = (53 * hash) + getRuleList().hashCode(); } + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } - @java.lang.Override - protected Builder newBuilderForType( - com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - Builder builder = new Builder(parent); - return builder; - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - /** - * - * - *
-       * A lifecycle Rule, combining an action to take on an object and a
-       * condition which will trigger that action.
-       * 
- * - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle.Rule} - */ - public static final class Builder - extends com.google.protobuf.GeneratedMessageV3.Builder - implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle.Rule) - com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder { - public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_descriptor; - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @java.lang.Override - protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable - internalGetFieldAccessorTable() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_fieldAccessorTable - .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.Rule.class, - com.google.storage.v2.Bucket.Lifecycle.Rule.Builder.class); - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - // Construct using com.google.storage.v2.Bucket.Lifecycle.Rule.newBuilder() - private Builder() { - maybeForceBuilderInitialization(); - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { - super(parent); - maybeForceBuilderInitialization(); - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } - private void maybeForceBuilderInitialization() { - if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) { - getActionFieldBuilder(); - getConditionFieldBuilder(); - } - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } - @java.lang.Override - public Builder clear() { - super.clear(); - bitField0_ = 0; - action_ = null; - if (actionBuilder_ != null) { - actionBuilder_.dispose(); - actionBuilder_ = null; - } - condition_ = null; - if (conditionBuilder_ != null) { - conditionBuilder_.dispose(); - conditionBuilder_ = null; - } - return this; - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - @java.lang.Override - public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { - return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_Rule_descriptor; - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance(); - } + public static com.google.storage.v2.Bucket.Lifecycle parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule build() { - com.google.storage.v2.Bucket.Lifecycle.Rule result = buildPartial(); - if (!result.isInitialized()) { - throw newUninitializedMessageException(result); - } - return result; - } + public static com.google.storage.v2.Bucket.Lifecycle parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule buildPartial() { - com.google.storage.v2.Bucket.Lifecycle.Rule result = - new com.google.storage.v2.Bucket.Lifecycle.Rule(this); - if (bitField0_ != 0) { - buildPartial0(result); - } - onBuilt(); - return result; - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } - private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle.Rule result) { - int from_bitField0_ = bitField0_; - int to_bitField0_ = 0; - if (((from_bitField0_ & 0x00000001) != 0)) { - result.action_ = actionBuilder_ == null ? action_ : actionBuilder_.build(); - to_bitField0_ |= 0x00000001; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.condition_ = conditionBuilder_ == null ? condition_ : conditionBuilder_.build(); - to_bitField0_ |= 0x00000002; - } - result.bitField0_ |= to_bitField0_; - } + public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } - @java.lang.Override - public Builder clone() { - return super.clone(); - } + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } - @java.lang.Override - public Builder setField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.setField(field, value); - } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } - @java.lang.Override - public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { - return super.clearField(field); - } + public static Builder newBuilder(com.google.storage.v2.Bucket.Lifecycle prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } - @java.lang.Override - public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { - return super.clearOneof(oneof); - } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } - @java.lang.Override - public Builder setRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, - int index, - java.lang.Object value) { - return super.setRepeatedField(field, index, value); - } + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } - @java.lang.Override - public Builder addRepeatedField( - com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { - return super.addRepeatedField(field, value); - } + /** + * + * + *
+     * Lifecycle properties of a bucket.
+     * For more information, see https://cloud.google.com/storage/docs/lifecycle.
+     * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Lifecycle} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle) + com.google.storage.v2.Bucket.LifecycleOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_descriptor; + } - @java.lang.Override - public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.Lifecycle.Rule) { - return mergeFrom((com.google.storage.v2.Bucket.Lifecycle.Rule) other); - } else { - super.mergeFrom(other); - return this; - } - } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Lifecycle.class, + com.google.storage.v2.Bucket.Lifecycle.Builder.class); + } - public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle.Rule other) { - if (other == com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance()) - return this; - if (other.hasAction()) { - mergeAction(other.getAction()); - } - if (other.hasCondition()) { - mergeCondition(other.getCondition()); - } - this.mergeUnknownFields(other.getUnknownFields()); - onChanged(); - return this; - } + // Construct using com.google.storage.v2.Bucket.Lifecycle.newBuilder() + private Builder() {} - @java.lang.Override - public final boolean isInitialized() { - return true; - } + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + } - @java.lang.Override - public Builder mergeFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws java.io.IOException { - if (extensionRegistry == null) { - throw new java.lang.NullPointerException(); - } - try { - boolean done = false; - while (!done) { - int tag = input.readTag(); - switch (tag) { - case 0: - done = true; - break; - case 10: - { - input.readMessage(getActionFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000001; - break; - } // case 10 - case 18: - { - input.readMessage(getConditionFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000002; - break; - } // case 18 - default: - { - if (!super.parseUnknownField(input, extensionRegistry, tag)) { - done = true; // was an endgroup tag - } - break; - } // default: - } // switch (tag) - } // while (!done) - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.unwrapIOException(); - } finally { - onChanged(); - } // finally - return this; + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + if (ruleBuilder_ == null) { + rule_ = java.util.Collections.emptyList(); + } else { + rule_ = null; + ruleBuilder_.clear(); } + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } - private int bitField0_; - - private com.google.storage.v2.Bucket.Lifecycle.Rule.Action action_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule.Action, - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder, - com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder> - actionBuilder_; + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Lifecycle_descriptor; + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the action field is set. - */ - public boolean hasAction() { - return ((bitField0_ & 0x00000001) != 0); - } + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Lifecycle.getDefaultInstance(); + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The action. - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action getAction() { - if (actionBuilder_ == null) { - return action_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() - : action_; - } else { - return actionBuilder_.getMessage(); - } + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle build() { + com.google.storage.v2.Bucket.Lifecycle result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); } + return result; + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setAction(com.google.storage.v2.Bucket.Lifecycle.Rule.Action value) { - if (actionBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - action_ = value; - } else { - actionBuilder_.setMessage(value); - } - bitField0_ |= 0x00000001; - onChanged(); - return this; + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle buildPartial() { + com.google.storage.v2.Bucket.Lifecycle result = + new com.google.storage.v2.Bucket.Lifecycle(this); + buildPartialRepeatedFields(result); + if (bitField0_ != 0) { + buildPartial0(result); } + onBuilt(); + return result; + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setAction( - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder builderForValue) { - if (actionBuilder_ == null) { - action_ = builderForValue.build(); - } else { - actionBuilder_.setMessage(builderForValue.build()); + private void buildPartialRepeatedFields(com.google.storage.v2.Bucket.Lifecycle result) { + if (ruleBuilder_ == null) { + if (((bitField0_ & 0x00000001) != 0)) { + rule_ = java.util.Collections.unmodifiableList(rule_); + bitField0_ = (bitField0_ & ~0x00000001); } - bitField0_ |= 0x00000001; - onChanged(); + result.rule_ = rule_; + } else { + result.rule_ = ruleBuilder_.build(); + } + } + + private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle result) { + int from_bitField0_ = bitField0_; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, + java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.Bucket.Lifecycle) { + return mergeFrom((com.google.storage.v2.Bucket.Lifecycle) other); + } else { + super.mergeFrom(other); return this; } + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeAction(com.google.storage.v2.Bucket.Lifecycle.Rule.Action value) { - if (actionBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0) - && action_ != null - && action_ - != com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance()) { - getActionBuilder().mergeFrom(value); + public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle other) { + if (other == com.google.storage.v2.Bucket.Lifecycle.getDefaultInstance()) return this; + if (ruleBuilder_ == null) { + if (!other.rule_.isEmpty()) { + if (rule_.isEmpty()) { + rule_ = other.rule_; + bitField0_ = (bitField0_ & ~0x00000001); } else { - action_ = value; + ensureRuleIsMutable(); + rule_.addAll(other.rule_); } - } else { - actionBuilder_.mergeFrom(value); - } - if (action_ != null) { - bitField0_ |= 0x00000001; onChanged(); } - return this; + } else { + if (!other.rule_.isEmpty()) { + if (ruleBuilder_.isEmpty()) { + ruleBuilder_.dispose(); + ruleBuilder_ = null; + rule_ = other.rule_; + bitField0_ = (bitField0_ & ~0x00000001); + ruleBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders + ? getRuleFieldBuilder() + : null; + } else { + ruleBuilder_.addAllMessages(other.rule_); + } + } } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearAction() { - bitField0_ = (bitField0_ & ~0x00000001); - action_ = null; - if (actionBuilder_ != null) { - actionBuilder_.dispose(); - actionBuilder_ = null; - } - onChanged(); - return this; + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + com.google.storage.v2.Bucket.Lifecycle.Rule m = + input.readMessage( + com.google.storage.v2.Bucket.Lifecycle.Rule.parser(), extensionRegistry); + if (ruleBuilder_ == null) { + ensureRuleIsMutable(); + rule_.add(m); + } else { + ruleBuilder_.addMessage(m); + } + break; + } // case 10 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder getActionBuilder() { + private int bitField0_; + + private java.util.List rule_ = + java.util.Collections.emptyList(); + + private void ensureRuleIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + rule_ = new java.util.ArrayList(rule_); bitField0_ |= 0x00000001; - onChanged(); - return getActionFieldBuilder().getBuilder(); } + } - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder getActionOrBuilder() { - if (actionBuilder_ != null) { - return actionBuilder_.getMessageOrBuilder(); - } else { - return action_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Action.getDefaultInstance() - : action_; - } - } + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule, + com.google.storage.v2.Bucket.Lifecycle.Rule.Builder, + com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder> + ruleBuilder_; - /** - * - * - *
-         * Optional. The action to take.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Action action = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule.Action, - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder, - com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder> - getActionFieldBuilder() { - if (actionBuilder_ == null) { - actionBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule.Action, - com.google.storage.v2.Bucket.Lifecycle.Rule.Action.Builder, - com.google.storage.v2.Bucket.Lifecycle.Rule.ActionOrBuilder>( - getAction(), getParentForChildren(), isClean()); - action_ = null; - } - return actionBuilder_; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List getRuleList() { + if (ruleBuilder_ == null) { + return java.util.Collections.unmodifiableList(rule_); + } else { + return ruleBuilder_.getMessageList(); } + } - private com.google.storage.v2.Bucket.Lifecycle.Rule.Condition condition_; - private com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition, - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder, - com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder> - conditionBuilder_; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public int getRuleCount() { + if (ruleBuilder_ == null) { + return rule_.size(); + } else { + return ruleBuilder_.getCount(); + } + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return Whether the condition field is set. - */ - public boolean hasCondition() { - return ((bitField0_ & 0x00000002) != 0); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule getRule(int index) { + if (ruleBuilder_ == null) { + return rule_.get(index); + } else { + return ruleBuilder_.getMessage(index); } + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * - * @return The condition. - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition getCondition() { - if (conditionBuilder_ == null) { - return condition_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() - : condition_; - } else { - return conditionBuilder_.getMessage(); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setRule(int index, com.google.storage.v2.Bucket.Lifecycle.Rule value) { + if (ruleBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } + ensureRuleIsMutable(); + rule_.set(index, value); + onChanged(); + } else { + ruleBuilder_.setMessage(index, value); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setCondition(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition value) { - if (conditionBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - condition_ = value; - } else { - conditionBuilder_.setMessage(value); - } - bitField0_ |= 0x00000002; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setRule( + int index, com.google.storage.v2.Bucket.Lifecycle.Rule.Builder builderForValue) { + if (ruleBuilder_ == null) { + ensureRuleIsMutable(); + rule_.set(index, builderForValue.build()); onChanged(); - return this; + } else { + ruleBuilder_.setMessage(index, builderForValue.build()); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setCondition( - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder builderForValue) { - if (conditionBuilder_ == null) { - condition_ = builderForValue.build(); - } else { - conditionBuilder_.setMessage(builderForValue.build()); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addRule(com.google.storage.v2.Bucket.Lifecycle.Rule value) { + if (ruleBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - bitField0_ |= 0x00000002; + ensureRuleIsMutable(); + rule_.add(value); onChanged(); - return this; + } else { + ruleBuilder_.addMessage(value); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder mergeCondition(com.google.storage.v2.Bucket.Lifecycle.Rule.Condition value) { - if (conditionBuilder_ == null) { - if (((bitField0_ & 0x00000002) != 0) - && condition_ != null - && condition_ - != com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance()) { - getConditionBuilder().mergeFrom(value); - } else { - condition_ = value; - } - } else { - conditionBuilder_.mergeFrom(value); - } - if (condition_ != null) { - bitField0_ |= 0x00000002; - onChanged(); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addRule(int index, com.google.storage.v2.Bucket.Lifecycle.Rule value) { + if (ruleBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); } - return this; + ensureRuleIsMutable(); + rule_.add(index, value); + onChanged(); + } else { + ruleBuilder_.addMessage(index, value); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder clearCondition() { - bitField0_ = (bitField0_ & ~0x00000002); - condition_ = null; - if (conditionBuilder_ != null) { - conditionBuilder_.dispose(); - conditionBuilder_ = null; - } + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addRule(com.google.storage.v2.Bucket.Lifecycle.Rule.Builder builderForValue) { + if (ruleBuilder_ == null) { + ensureRuleIsMutable(); + rule_.add(builderForValue.build()); onChanged(); - return this; + } else { + ruleBuilder_.addMessage(builderForValue.build()); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder getConditionBuilder() { - bitField0_ |= 0x00000002; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addRule( + int index, com.google.storage.v2.Bucket.Lifecycle.Rule.Builder builderForValue) { + if (ruleBuilder_ == null) { + ensureRuleIsMutable(); + rule_.add(index, builderForValue.build()); onChanged(); - return getConditionFieldBuilder().getBuilder(); + } else { + ruleBuilder_.addMessage(index, builderForValue.build()); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder - getConditionOrBuilder() { - if (conditionBuilder_ != null) { - return conditionBuilder_.getMessageOrBuilder(); - } else { - return condition_ == null - ? com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.getDefaultInstance() - : condition_; - } + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder addAllRule( + java.lang.Iterable values) { + if (ruleBuilder_ == null) { + ensureRuleIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, rule_); + onChanged(); + } else { + ruleBuilder_.addAllMessages(values); } + return this; + } - /** - * - * - *
-         * Optional. The condition(s) under which the action will be taken.
-         * 
- * - * - * .google.storage.v2.Bucket.Lifecycle.Rule.Condition condition = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - private com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition, - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder, - com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder> - getConditionFieldBuilder() { - if (conditionBuilder_ == null) { - conditionBuilder_ = - new com.google.protobuf.SingleFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition, - com.google.storage.v2.Bucket.Lifecycle.Rule.Condition.Builder, - com.google.storage.v2.Bucket.Lifecycle.Rule.ConditionOrBuilder>( - getCondition(), getParentForChildren(), isClean()); - condition_ = null; - } - return conditionBuilder_; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearRule() { + if (ruleBuilder_ == null) { + rule_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + } else { + ruleBuilder_.clear(); } + return this; + } - @java.lang.Override - public final Builder setUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.setUnknownFields(unknownFields); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder removeRule(int index) { + if (ruleBuilder_ == null) { + ensureRuleIsMutable(); + rule_.remove(index); + onChanged(); + } else { + ruleBuilder_.remove(index); } + return this; + } - @java.lang.Override - public final Builder mergeUnknownFields( - final com.google.protobuf.UnknownFieldSet unknownFields) { - return super.mergeUnknownFields(unknownFields); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Builder getRuleBuilder(int index) { + return getRuleFieldBuilder().getBuilder(index); + } + + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int index) { + if (ruleBuilder_ == null) { + return rule_.get(index); + } else { + return ruleBuilder_.getMessageOrBuilder(index); } + } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle.Rule) + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getRuleOrBuilderList() { + if (ruleBuilder_ != null) { + return ruleBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(rule_); + } } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle.Rule) - private static final com.google.storage.v2.Bucket.Lifecycle.Rule DEFAULT_INSTANCE; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Builder addRuleBuilder() { + return getRuleFieldBuilder() + .addBuilder(com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance()); + } - static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle.Rule(); + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.Lifecycle.Rule.Builder addRuleBuilder(int index) { + return getRuleFieldBuilder() + .addBuilder(index, com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance()); } - public static com.google.storage.v2.Bucket.Lifecycle.Rule getDefaultInstance() { - return DEFAULT_INSTANCE; + /** + * + * + *
+       * Optional. A lifecycle management rule, which is made of an action to take
+       * and the condition(s) under which the action will be taken.
+       * 
+ * + * + * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public java.util.List + getRuleBuilderList() { + return getRuleFieldBuilder().getBuilderList(); } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { - @java.lang.Override - public Rule parsePartialFrom( - com.google.protobuf.CodedInputStream input, - com.google.protobuf.ExtensionRegistryLite extensionRegistry) - throws com.google.protobuf.InvalidProtocolBufferException { - Builder builder = newBuilder(); - try { - builder.mergeFrom(input, extensionRegistry); - } catch (com.google.protobuf.InvalidProtocolBufferException e) { - throw e.setUnfinishedMessage(builder.buildPartial()); - } catch (com.google.protobuf.UninitializedMessageException e) { - throw e.asInvalidProtocolBufferException() - .setUnfinishedMessage(builder.buildPartial()); - } catch (java.io.IOException e) { - throw new com.google.protobuf.InvalidProtocolBufferException(e) - .setUnfinishedMessage(builder.buildPartial()); - } - return builder.buildPartial(); - } - }; + private com.google.protobuf.RepeatedFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule, + com.google.storage.v2.Bucket.Lifecycle.Rule.Builder, + com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder> + getRuleFieldBuilder() { + if (ruleBuilder_ == null) { + ruleBuilder_ = + new com.google.protobuf.RepeatedFieldBuilderV3< + com.google.storage.v2.Bucket.Lifecycle.Rule, + com.google.storage.v2.Bucket.Lifecycle.Rule.Builder, + com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder>( + rule_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); + rule_ = null; + } + return ruleBuilder_; + } - public static com.google.protobuf.Parser parser() { - return PARSER; + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { - return PARSER; + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); } - @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule getDefaultInstanceForType() { - return DEFAULT_INSTANCE; - } + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle) + private static final com.google.storage.v2.Bucket.Lifecycle DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle(); + } + + public static com.google.storage.v2.Bucket.Lifecycle getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public Lifecycle parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException() + .setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.Bucket.Lifecycle getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + } + + public interface LoggingOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Logging) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+     * Optional. The destination bucket where the current bucket's logs should
+     * be placed, using path format (like `projects/123456/buckets/foo`).
+     * 
+ * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The logBucket. + */ + java.lang.String getLogBucket(); + + /** + * + * + *
+     * Optional. The destination bucket where the current bucket's logs should
+     * be placed, using path format (like `projects/123456/buckets/foo`).
+     * 
+ * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for logBucket. + */ + com.google.protobuf.ByteString getLogBucketBytes(); + + /** + * + * + *
+     * Optional. A prefix for log object names.
+     * 
+ * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The logObjectPrefix. + */ + java.lang.String getLogObjectPrefix(); + + /** + * + * + *
+     * Optional. A prefix for log object names.
+     * 
+ * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for logObjectPrefix. + */ + com.google.protobuf.ByteString getLogObjectPrefixBytes(); + } + + /** + * + * + *
+   * Logging-related properties of a bucket.
+   * 
+ * + * Protobuf type {@code google.storage.v2.Bucket.Logging} + */ + public static final class Logging extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Logging) + LoggingOrBuilder { + private static final long serialVersionUID = 0L; + + // Use Logging.newBuilder() to construct. + private Logging(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private Logging() { + logBucket_ = ""; + logObjectPrefix_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new Logging(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Logging_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_Bucket_Logging_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.Bucket.Logging.class, + com.google.storage.v2.Bucket.Logging.Builder.class); } - public static final int RULE_FIELD_NUMBER = 1; + public static final int LOG_BUCKET_FIELD_NUMBER = 1; @SuppressWarnings("serial") - private java.util.List rule_; + private volatile java.lang.Object logBucket_ = ""; /** * * *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
+     * Optional. The destination bucket where the current bucket's logs should
+     * be placed, using path format (like `projects/123456/buckets/foo`).
      * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - @java.lang.Override - public java.util.List getRuleList() { - return rule_; - } - - /** - * - * - *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
-     * 
+ * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * @return The logBucket. */ @java.lang.Override - public java.util.List - getRuleOrBuilderList() { - return rule_; + public java.lang.String getLogBucket() { + java.lang.Object ref = logBucket_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + logBucket_ = s; + return s; + } } /** * * *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
+     * Optional. The destination bucket where the current bucket's logs should
+     * be placed, using path format (like `projects/123456/buckets/foo`).
      * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for logBucket. */ @java.lang.Override - public int getRuleCount() { - return rule_.size(); + public com.google.protobuf.ByteString getLogBucketBytes() { + java.lang.Object ref = logBucket_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + logBucket_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } + public static final int LOG_OBJECT_PREFIX_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object logObjectPrefix_ = ""; + /** * * *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
+     * Optional. A prefix for log object names.
      * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The logObjectPrefix. */ @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.Rule getRule(int index) { - return rule_.get(index); + public java.lang.String getLogObjectPrefix() { + java.lang.Object ref = logObjectPrefix_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + logObjectPrefix_ = s; + return s; + } } /** * * *
-     * Optional. A lifecycle management rule, which is made of an action to take
-     * and the condition(s) under which the action will be taken.
+     * Optional. A prefix for log object names.
      * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for logObjectPrefix. */ @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int index) { - return rule_.get(index); + public com.google.protobuf.ByteString getLogObjectPrefixBytes() { + java.lang.Object ref = logObjectPrefix_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + logObjectPrefix_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } } private byte memoizedIsInitialized = -1; @@ -10910,8 +16357,11 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - for (int i = 0; i < rule_.size(); i++) { - output.writeMessage(1, rule_.get(i)); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logBucket_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, logBucket_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logObjectPrefix_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, logObjectPrefix_); } getUnknownFields().writeTo(output); } @@ -10922,8 +16372,11 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - for (int i = 0; i < rule_.size(); i++) { - size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, rule_.get(i)); + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logBucket_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, logBucket_); + } + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logObjectPrefix_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, logObjectPrefix_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -10935,12 +16388,13 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof com.google.storage.v2.Bucket.Lifecycle)) { + if (!(obj instanceof com.google.storage.v2.Bucket.Logging)) { return super.equals(obj); } - com.google.storage.v2.Bucket.Lifecycle other = (com.google.storage.v2.Bucket.Lifecycle) obj; + com.google.storage.v2.Bucket.Logging other = (com.google.storage.v2.Bucket.Logging) obj; - if (!getRuleList().equals(other.getRuleList())) return false; + if (!getLogBucket().equals(other.getLogBucket())) return false; + if (!getLogObjectPrefix().equals(other.getLogObjectPrefix())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -10952,80 +16406,80 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - if (getRuleCount() > 0) { - hash = (37 * hash) + RULE_FIELD_NUMBER; - hash = (53 * hash) + getRuleList().hashCode(); - } + hash = (37 * hash) + LOG_BUCKET_FIELD_NUMBER; + hash = (53 * hash) + getLogBucket().hashCode(); + hash = (37 * hash) + LOG_OBJECT_PREFIX_FIELD_NUMBER; + hash = (53 * hash) + getLogObjectPrefix().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom(java.nio.ByteBuffer data) + public static com.google.storage.v2.Bucket.Logging parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom(byte[] data) + public static com.google.storage.v2.Bucket.Logging parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom(java.io.InputStream input) + public static com.google.storage.v2.Bucket.Logging parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } - public static com.google.storage.v2.Bucket.Lifecycle parseDelimitedFrom( - java.io.InputStream input) throws java.io.IOException { + public static com.google.storage.v2.Bucket.Logging parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.Lifecycle parseDelimitedFrom( + public static com.google.storage.v2.Bucket.Logging parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.Lifecycle parseFrom( + public static com.google.storage.v2.Bucket.Logging parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -11042,7 +16496,7 @@ public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(com.google.storage.v2.Bucket.Lifecycle prototype) { + public static Builder newBuilder(com.google.storage.v2.Bucket.Logging prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -11062,33 +16516,32 @@ protected Builder newBuilderForType( * * *
-     * Lifecycle properties of a bucket.
-     * For more information, see https://cloud.google.com/storage/docs/lifecycle.
+     * Logging-related properties of a bucket.
      * 
* - * Protobuf type {@code google.storage.v2.Bucket.Lifecycle} + * Protobuf type {@code google.storage.v2.Bucket.Logging} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Lifecycle) - com.google.storage.v2.Bucket.LifecycleOrBuilder { + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Logging) + com.google.storage.v2.Bucket.LoggingOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_descriptor; + .internal_static_google_storage_v2_Bucket_Logging_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_fieldAccessorTable + .internal_static_google_storage_v2_Bucket_Logging_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Lifecycle.class, - com.google.storage.v2.Bucket.Lifecycle.Builder.class); + com.google.storage.v2.Bucket.Logging.class, + com.google.storage.v2.Bucket.Logging.Builder.class); } - // Construct using com.google.storage.v2.Bucket.Lifecycle.newBuilder() + // Construct using com.google.storage.v2.Bucket.Logging.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { @@ -11099,30 +16552,25 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - if (ruleBuilder_ == null) { - rule_ = java.util.Collections.emptyList(); - } else { - rule_ = null; - ruleBuilder_.clear(); - } - bitField0_ = (bitField0_ & ~0x00000001); + logBucket_ = ""; + logObjectPrefix_ = ""; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Lifecycle_descriptor; + .internal_static_google_storage_v2_Bucket_Logging_descriptor; } @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.Lifecycle.getDefaultInstance(); + public com.google.storage.v2.Bucket.Logging getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.Logging.getDefaultInstance(); } @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle build() { - com.google.storage.v2.Bucket.Lifecycle result = buildPartial(); + public com.google.storage.v2.Bucket.Logging build() { + com.google.storage.v2.Bucket.Logging result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -11130,10 +16578,9 @@ public com.google.storage.v2.Bucket.Lifecycle build() { } @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle buildPartial() { - com.google.storage.v2.Bucket.Lifecycle result = - new com.google.storage.v2.Bucket.Lifecycle(this); - buildPartialRepeatedFields(result); + public com.google.storage.v2.Bucket.Logging buildPartial() { + com.google.storage.v2.Bucket.Logging result = + new com.google.storage.v2.Bucket.Logging(this); if (bitField0_ != 0) { buildPartial0(result); } @@ -11141,20 +16588,14 @@ public com.google.storage.v2.Bucket.Lifecycle buildPartial() { return result; } - private void buildPartialRepeatedFields(com.google.storage.v2.Bucket.Lifecycle result) { - if (ruleBuilder_ == null) { - if (((bitField0_ & 0x00000001) != 0)) { - rule_ = java.util.Collections.unmodifiableList(rule_); - bitField0_ = (bitField0_ & ~0x00000001); - } - result.rule_ = rule_; - } else { - result.rule_ = ruleBuilder_.build(); - } - } - - private void buildPartial0(com.google.storage.v2.Bucket.Lifecycle result) { + private void buildPartial0(com.google.storage.v2.Bucket.Logging result) { int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.logBucket_ = logBucket_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.logObjectPrefix_ = logObjectPrefix_; + } } @java.lang.Override @@ -11194,42 +16635,25 @@ public Builder addRepeatedField( @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.Lifecycle) { - return mergeFrom((com.google.storage.v2.Bucket.Lifecycle) other); + if (other instanceof com.google.storage.v2.Bucket.Logging) { + return mergeFrom((com.google.storage.v2.Bucket.Logging) other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(com.google.storage.v2.Bucket.Lifecycle other) { - if (other == com.google.storage.v2.Bucket.Lifecycle.getDefaultInstance()) return this; - if (ruleBuilder_ == null) { - if (!other.rule_.isEmpty()) { - if (rule_.isEmpty()) { - rule_ = other.rule_; - bitField0_ = (bitField0_ & ~0x00000001); - } else { - ensureRuleIsMutable(); - rule_.addAll(other.rule_); - } - onChanged(); - } - } else { - if (!other.rule_.isEmpty()) { - if (ruleBuilder_.isEmpty()) { - ruleBuilder_.dispose(); - ruleBuilder_ = null; - rule_ = other.rule_; - bitField0_ = (bitField0_ & ~0x00000001); - ruleBuilder_ = - com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders - ? getRuleFieldBuilder() - : null; - } else { - ruleBuilder_.addAllMessages(other.rule_); - } - } + public Builder mergeFrom(com.google.storage.v2.Bucket.Logging other) { + if (other == com.google.storage.v2.Bucket.Logging.getDefaultInstance()) return this; + if (!other.getLogBucket().isEmpty()) { + logBucket_ = other.logBucket_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getLogObjectPrefix().isEmpty()) { + logObjectPrefix_ = other.logObjectPrefix_; + bitField0_ |= 0x00000002; + onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -11259,17 +16683,16 @@ public Builder mergeFrom( break; case 10: { - com.google.storage.v2.Bucket.Lifecycle.Rule m = - input.readMessage( - com.google.storage.v2.Bucket.Lifecycle.Rule.parser(), extensionRegistry); - if (ruleBuilder_ == null) { - ensureRuleIsMutable(); - rule_.add(m); - } else { - ruleBuilder_.addMessage(m); - } + logBucket_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; break; } // case 10 + case 18: + { + logObjectPrefix_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -11289,275 +16712,76 @@ public Builder mergeFrom( private int bitField0_; - private java.util.List rule_ = - java.util.Collections.emptyList(); - - private void ensureRuleIsMutable() { - if (!((bitField0_ & 0x00000001) != 0)) { - rule_ = new java.util.ArrayList(rule_); - bitField0_ |= 0x00000001; - } - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule, - com.google.storage.v2.Bucket.Lifecycle.Rule.Builder, - com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder> - ruleBuilder_; - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public java.util.List getRuleList() { - if (ruleBuilder_ == null) { - return java.util.Collections.unmodifiableList(rule_); - } else { - return ruleBuilder_.getMessageList(); - } - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public int getRuleCount() { - if (ruleBuilder_ == null) { - return rule_.size(); - } else { - return ruleBuilder_.getCount(); - } - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public com.google.storage.v2.Bucket.Lifecycle.Rule getRule(int index) { - if (ruleBuilder_ == null) { - return rule_.get(index); - } else { - return ruleBuilder_.getMessage(index); - } - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setRule(int index, com.google.storage.v2.Bucket.Lifecycle.Rule value) { - if (ruleBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureRuleIsMutable(); - rule_.set(index, value); - onChanged(); - } else { - ruleBuilder_.setMessage(index, value); - } - return this; - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder setRule( - int index, com.google.storage.v2.Bucket.Lifecycle.Rule.Builder builderForValue) { - if (ruleBuilder_ == null) { - ensureRuleIsMutable(); - rule_.set(index, builderForValue.build()); - onChanged(); - } else { - ruleBuilder_.setMessage(index, builderForValue.build()); - } - return this; - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addRule(com.google.storage.v2.Bucket.Lifecycle.Rule value) { - if (ruleBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureRuleIsMutable(); - rule_.add(value); - onChanged(); - } else { - ruleBuilder_.addMessage(value); - } - return this; - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addRule(int index, com.google.storage.v2.Bucket.Lifecycle.Rule value) { - if (ruleBuilder_ == null) { - if (value == null) { - throw new NullPointerException(); - } - ensureRuleIsMutable(); - rule_.add(index, value); - onChanged(); - } else { - ruleBuilder_.addMessage(index, value); - } - return this; - } - - /** - * - * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
-       * 
- * - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - */ - public Builder addRule(com.google.storage.v2.Bucket.Lifecycle.Rule.Builder builderForValue) { - if (ruleBuilder_ == null) { - ensureRuleIsMutable(); - rule_.add(builderForValue.build()); - onChanged(); - } else { - ruleBuilder_.addMessage(builderForValue.build()); - } - return this; - } + private java.lang.Object logBucket_ = ""; /** * * - *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * 
+       * Optional. The destination bucket where the current bucket's logs should
+       * be placed, using path format (like `projects/123456/buckets/foo`).
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The logBucket. */ - public Builder addRule( - int index, com.google.storage.v2.Bucket.Lifecycle.Rule.Builder builderForValue) { - if (ruleBuilder_ == null) { - ensureRuleIsMutable(); - rule_.add(index, builderForValue.build()); - onChanged(); + public java.lang.String getLogBucket() { + java.lang.Object ref = logBucket_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + logBucket_ = s; + return s; } else { - ruleBuilder_.addMessage(index, builderForValue.build()); + return (java.lang.String) ref; } - return this; } /** * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. The destination bucket where the current bucket's logs should
+       * be placed, using path format (like `projects/123456/buckets/foo`).
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for logBucket. */ - public Builder addAllRule( - java.lang.Iterable values) { - if (ruleBuilder_ == null) { - ensureRuleIsMutable(); - com.google.protobuf.AbstractMessageLite.Builder.addAll(values, rule_); - onChanged(); + public com.google.protobuf.ByteString getLogBucketBytes() { + java.lang.Object ref = logBucket_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + logBucket_ = b; + return b; } else { - ruleBuilder_.addAllMessages(values); + return (com.google.protobuf.ByteString) ref; } - return this; } /** * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. The destination bucket where the current bucket's logs should
+       * be placed, using path format (like `projects/123456/buckets/foo`).
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The logBucket to set. + * @return This builder for chaining. */ - public Builder clearRule() { - if (ruleBuilder_ == null) { - rule_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - } else { - ruleBuilder_.clear(); + public Builder setLogBucket(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); } + logBucket_ = value; + bitField0_ |= 0x00000001; + onChanged(); return this; } @@ -11565,22 +16789,18 @@ public Builder clearRule() { * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. The destination bucket where the current bucket's logs should
+       * be placed, using path format (like `projects/123456/buckets/foo`).
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public Builder removeRule(int index) { - if (ruleBuilder_ == null) { - ensureRuleIsMutable(); - rule_.remove(index); - onChanged(); - } else { - ruleBuilder_.remove(index); - } + public Builder clearLogBucket() { + logBucket_ = getDefaultInstance().getLogBucket(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); return this; } @@ -11588,35 +16808,48 @@ public Builder removeRule(int index) { * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. The destination bucket where the current bucket's logs should
+       * be placed, using path format (like `projects/123456/buckets/foo`).
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for logBucket to set. + * @return This builder for chaining. */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Builder getRuleBuilder(int index) { - return getRuleFieldBuilder().getBuilder(index); + public Builder setLogBucketBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + logBucket_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; } + private java.lang.Object logObjectPrefix_ = ""; + /** * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. A prefix for log object names.
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The logObjectPrefix. */ - public com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int index) { - if (ruleBuilder_ == null) { - return rule_.get(index); + public java.lang.String getLogObjectPrefix() { + java.lang.Object ref = logObjectPrefix_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + logObjectPrefix_ = s; + return s; } else { - return ruleBuilder_.getMessageOrBuilder(index); + return (java.lang.String) ref; } } @@ -11624,20 +16857,22 @@ public com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. A prefix for log object names.
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for logObjectPrefix. */ - public java.util.List - getRuleOrBuilderList() { - if (ruleBuilder_ != null) { - return ruleBuilder_.getMessageOrBuilderList(); + public com.google.protobuf.ByteString getLogObjectPrefixBytes() { + java.lang.Object ref = logObjectPrefix_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + logObjectPrefix_ = b; + return b; } else { - return java.util.Collections.unmodifiableList(rule_); + return (com.google.protobuf.ByteString) ref; } } @@ -11645,68 +16880,63 @@ public com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder getRuleOrBuilder(int * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. A prefix for log object names.
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The logObjectPrefix to set. + * @return This builder for chaining. */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Builder addRuleBuilder() { - return getRuleFieldBuilder() - .addBuilder(com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance()); + public Builder setLogObjectPrefix(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + logObjectPrefix_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } /** * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. A prefix for log object names.
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. */ - public com.google.storage.v2.Bucket.Lifecycle.Rule.Builder addRuleBuilder(int index) { - return getRuleFieldBuilder() - .addBuilder(index, com.google.storage.v2.Bucket.Lifecycle.Rule.getDefaultInstance()); + public Builder clearLogObjectPrefix() { + logObjectPrefix_ = getDefaultInstance().getLogObjectPrefix(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; } /** * * *
-       * Optional. A lifecycle management rule, which is made of an action to take
-       * and the condition(s) under which the action will be taken.
+       * Optional. A prefix for log object names.
        * 
* - * - * repeated .google.storage.v2.Bucket.Lifecycle.Rule rule = 1 [(.google.api.field_behavior) = OPTIONAL]; - * + * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for logObjectPrefix to set. + * @return This builder for chaining. */ - public java.util.List - getRuleBuilderList() { - return getRuleFieldBuilder().getBuilderList(); - } - - private com.google.protobuf.RepeatedFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule, - com.google.storage.v2.Bucket.Lifecycle.Rule.Builder, - com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder> - getRuleFieldBuilder() { - if (ruleBuilder_ == null) { - ruleBuilder_ = - new com.google.protobuf.RepeatedFieldBuilderV3< - com.google.storage.v2.Bucket.Lifecycle.Rule, - com.google.storage.v2.Bucket.Lifecycle.Rule.Builder, - com.google.storage.v2.Bucket.Lifecycle.RuleOrBuilder>( - rule_, ((bitField0_ & 0x00000001) != 0), getParentForChildren(), isClean()); - rule_ = null; + public Builder setLogObjectPrefixBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); } - return ruleBuilder_; + checkByteStringIsUtf8(value); + logObjectPrefix_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; } @java.lang.Override @@ -11721,24 +16951,24 @@ public final Builder mergeUnknownFields( return super.mergeUnknownFields(unknownFields); } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Lifecycle) + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Logging) } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Lifecycle) - private static final com.google.storage.v2.Bucket.Lifecycle DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Logging) + private static final com.google.storage.v2.Bucket.Logging DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Lifecycle(); + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Logging(); } - public static com.google.storage.v2.Bucket.Lifecycle getDefaultInstance() { + public static com.google.storage.v2.Bucket.Logging getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { @java.lang.Override - public Lifecycle parsePartialFrom( + public Logging parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -11758,233 +16988,106 @@ public Lifecycle parsePartialFrom( } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public com.google.storage.v2.Bucket.Lifecycle getDefaultInstanceForType() { + public com.google.storage.v2.Bucket.Logging getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } - public interface LoggingOrBuilder + public interface ObjectRetentionOrBuilder extends - // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.Logging) + // @@protoc_insertion_point(interface_extends:google.storage.v2.Bucket.ObjectRetention) com.google.protobuf.MessageOrBuilder { /** * * *
-     * Optional. The destination bucket where the current bucket's logs should
-     * be placed, using path format (like `projects/123456/buckets/foo`).
-     * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The logBucket. - */ - java.lang.String getLogBucket(); - - /** - * - * - *
-     * Optional. The destination bucket where the current bucket's logs should
-     * be placed, using path format (like `projects/123456/buckets/foo`).
-     * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for logBucket. - */ - com.google.protobuf.ByteString getLogBucketBytes(); - - /** - * - * - *
-     * Optional. A prefix for log object names.
-     * 
- * - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The logObjectPrefix. - */ - java.lang.String getLogObjectPrefix(); - - /** - * - * - *
-     * Optional. A prefix for log object names.
+     * Optional. Output only. If true, object retention is enabled for the
+     * bucket.
      * 
* - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for logObjectPrefix. + * @return The enabled. */ - com.google.protobuf.ByteString getLogObjectPrefixBytes(); + boolean getEnabled(); } /** * * *
-   * Logging-related properties of a bucket.
+   * Object Retention related properties of a bucket.
    * 
* - * Protobuf type {@code google.storage.v2.Bucket.Logging} + * Protobuf type {@code google.storage.v2.Bucket.ObjectRetention} */ - public static final class Logging extends com.google.protobuf.GeneratedMessageV3 + public static final class ObjectRetention extends com.google.protobuf.GeneratedMessageV3 implements - // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.Logging) - LoggingOrBuilder { + // @@protoc_insertion_point(message_implements:google.storage.v2.Bucket.ObjectRetention) + ObjectRetentionOrBuilder { private static final long serialVersionUID = 0L; - // Use Logging.newBuilder() to construct. - private Logging(com.google.protobuf.GeneratedMessageV3.Builder builder) { + // Use ObjectRetention.newBuilder() to construct. + private ObjectRetention(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } - private Logging() { - logBucket_ = ""; - logObjectPrefix_ = ""; - } + private ObjectRetention() {} @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { - return new Logging(); + return new ObjectRetention(); } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Logging_descriptor; + .internal_static_google_storage_v2_Bucket_ObjectRetention_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Logging_fieldAccessorTable + .internal_static_google_storage_v2_Bucket_ObjectRetention_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Logging.class, - com.google.storage.v2.Bucket.Logging.Builder.class); - } - - public static final int LOG_BUCKET_FIELD_NUMBER = 1; - - @SuppressWarnings("serial") - private volatile java.lang.Object logBucket_ = ""; - - /** - * - * - *
-     * Optional. The destination bucket where the current bucket's logs should
-     * be placed, using path format (like `projects/123456/buckets/foo`).
-     * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The logBucket. - */ - @java.lang.Override - public java.lang.String getLogBucket() { - java.lang.Object ref = logBucket_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - logBucket_ = s; - return s; - } - } - - /** - * - * - *
-     * Optional. The destination bucket where the current bucket's logs should
-     * be placed, using path format (like `projects/123456/buckets/foo`).
-     * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for logBucket. - */ - @java.lang.Override - public com.google.protobuf.ByteString getLogBucketBytes() { - java.lang.Object ref = logBucket_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - logBucket_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + com.google.storage.v2.Bucket.ObjectRetention.class, + com.google.storage.v2.Bucket.ObjectRetention.Builder.class); } - public static final int LOG_OBJECT_PREFIX_FIELD_NUMBER = 2; - - @SuppressWarnings("serial") - private volatile java.lang.Object logObjectPrefix_ = ""; - - /** - * - * - *
-     * Optional. A prefix for log object names.
-     * 
- * - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The logObjectPrefix. - */ - @java.lang.Override - public java.lang.String getLogObjectPrefix() { - java.lang.Object ref = logObjectPrefix_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - logObjectPrefix_ = s; - return s; - } - } + public static final int ENABLED_FIELD_NUMBER = 1; + private boolean enabled_ = false; /** * * *
-     * Optional. A prefix for log object names.
+     * Optional. Output only. If true, object retention is enabled for the
+     * bucket.
      * 
* - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @return The bytes for logObjectPrefix. + * @return The enabled. */ @java.lang.Override - public com.google.protobuf.ByteString getLogObjectPrefixBytes() { - java.lang.Object ref = logObjectPrefix_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - logObjectPrefix_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } + public boolean getEnabled() { + return enabled_; } private byte memoizedIsInitialized = -1; @@ -12001,11 +17104,8 @@ public final boolean isInitialized() { @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logBucket_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, logBucket_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logObjectPrefix_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 2, logObjectPrefix_); + if (enabled_ != false) { + output.writeBool(1, enabled_); } getUnknownFields().writeTo(output); } @@ -12016,11 +17116,8 @@ public int getSerializedSize() { if (size != -1) return size; size = 0; - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logBucket_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, logBucket_); - } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(logObjectPrefix_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, logObjectPrefix_); + if (enabled_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(1, enabled_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; @@ -12032,13 +17129,13 @@ public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } - if (!(obj instanceof com.google.storage.v2.Bucket.Logging)) { + if (!(obj instanceof com.google.storage.v2.Bucket.ObjectRetention)) { return super.equals(obj); } - com.google.storage.v2.Bucket.Logging other = (com.google.storage.v2.Bucket.Logging) obj; + com.google.storage.v2.Bucket.ObjectRetention other = + (com.google.storage.v2.Bucket.ObjectRetention) obj; - if (!getLogBucket().equals(other.getLogBucket())) return false; - if (!getLogObjectPrefix().equals(other.getLogObjectPrefix())) return false; + if (getEnabled() != other.getEnabled()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -12050,80 +17147,78 @@ public int hashCode() { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + LOG_BUCKET_FIELD_NUMBER; - hash = (53 * hash) + getLogBucket().hashCode(); - hash = (37 * hash) + LOG_OBJECT_PREFIX_FIELD_NUMBER; - hash = (53 * hash) + getLogObjectPrefix().hashCode(); + hash = (37 * hash) + ENABLED_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnabled()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } - public static com.google.storage.v2.Bucket.Logging parseFrom(java.nio.ByteBuffer data) + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.Logging parseFrom(byte[] data) + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } - public static com.google.storage.v2.Bucket.Logging parseFrom(java.io.InputStream input) + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } - public static com.google.storage.v2.Bucket.Logging parseDelimitedFrom(java.io.InputStream input) - throws java.io.IOException { + public static com.google.storage.v2.Bucket.ObjectRetention parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.Logging parseDelimitedFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } - public static com.google.storage.v2.Bucket.Logging parseFrom( + public static com.google.storage.v2.Bucket.ObjectRetention parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { @@ -12140,7 +17235,7 @@ public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } - public static Builder newBuilder(com.google.storage.v2.Bucket.Logging prototype) { + public static Builder newBuilder(com.google.storage.v2.Bucket.ObjectRetention prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @@ -12160,32 +17255,32 @@ protected Builder newBuilderForType( * * *
-     * Logging-related properties of a bucket.
+     * Object Retention related properties of a bucket.
      * 
* - * Protobuf type {@code google.storage.v2.Bucket.Logging} + * Protobuf type {@code google.storage.v2.Bucket.ObjectRetention} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements - // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.Logging) - com.google.storage.v2.Bucket.LoggingOrBuilder { + // @@protoc_insertion_point(builder_implements:google.storage.v2.Bucket.ObjectRetention) + com.google.storage.v2.Bucket.ObjectRetentionOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Logging_descriptor; + .internal_static_google_storage_v2_Bucket_ObjectRetention_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Logging_fieldAccessorTable + .internal_static_google_storage_v2_Bucket_ObjectRetention_fieldAccessorTable .ensureFieldAccessorsInitialized( - com.google.storage.v2.Bucket.Logging.class, - com.google.storage.v2.Bucket.Logging.Builder.class); + com.google.storage.v2.Bucket.ObjectRetention.class, + com.google.storage.v2.Bucket.ObjectRetention.Builder.class); } - // Construct using com.google.storage.v2.Bucket.Logging.newBuilder() + // Construct using com.google.storage.v2.Bucket.ObjectRetention.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { @@ -12196,25 +17291,24 @@ private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { public Builder clear() { super.clear(); bitField0_ = 0; - logBucket_ = ""; - logObjectPrefix_ = ""; + enabled_ = false; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.google.storage.v2.StorageProto - .internal_static_google_storage_v2_Bucket_Logging_descriptor; + .internal_static_google_storage_v2_Bucket_ObjectRetention_descriptor; } @java.lang.Override - public com.google.storage.v2.Bucket.Logging getDefaultInstanceForType() { - return com.google.storage.v2.Bucket.Logging.getDefaultInstance(); + public com.google.storage.v2.Bucket.ObjectRetention getDefaultInstanceForType() { + return com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance(); } @java.lang.Override - public com.google.storage.v2.Bucket.Logging build() { - com.google.storage.v2.Bucket.Logging result = buildPartial(); + public com.google.storage.v2.Bucket.ObjectRetention build() { + com.google.storage.v2.Bucket.ObjectRetention result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } @@ -12222,9 +17316,9 @@ public com.google.storage.v2.Bucket.Logging build() { } @java.lang.Override - public com.google.storage.v2.Bucket.Logging buildPartial() { - com.google.storage.v2.Bucket.Logging result = - new com.google.storage.v2.Bucket.Logging(this); + public com.google.storage.v2.Bucket.ObjectRetention buildPartial() { + com.google.storage.v2.Bucket.ObjectRetention result = + new com.google.storage.v2.Bucket.ObjectRetention(this); if (bitField0_ != 0) { buildPartial0(result); } @@ -12232,13 +17326,10 @@ public com.google.storage.v2.Bucket.Logging buildPartial() { return result; } - private void buildPartial0(com.google.storage.v2.Bucket.Logging result) { + private void buildPartial0(com.google.storage.v2.Bucket.ObjectRetention result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { - result.logBucket_ = logBucket_; - } - if (((from_bitField0_ & 0x00000002) != 0)) { - result.logObjectPrefix_ = logObjectPrefix_; + result.enabled_ = enabled_; } } @@ -12279,25 +17370,18 @@ public Builder addRepeatedField( @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { - if (other instanceof com.google.storage.v2.Bucket.Logging) { - return mergeFrom((com.google.storage.v2.Bucket.Logging) other); + if (other instanceof com.google.storage.v2.Bucket.ObjectRetention) { + return mergeFrom((com.google.storage.v2.Bucket.ObjectRetention) other); } else { super.mergeFrom(other); return this; } } - public Builder mergeFrom(com.google.storage.v2.Bucket.Logging other) { - if (other == com.google.storage.v2.Bucket.Logging.getDefaultInstance()) return this; - if (!other.getLogBucket().isEmpty()) { - logBucket_ = other.logBucket_; - bitField0_ |= 0x00000001; - onChanged(); - } - if (!other.getLogObjectPrefix().isEmpty()) { - logObjectPrefix_ = other.logObjectPrefix_; - bitField0_ |= 0x00000002; - onChanged(); + public Builder mergeFrom(com.google.storage.v2.Bucket.ObjectRetention other) { + if (other == com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance()) return this; + if (other.getEnabled() != false) { + setEnabled(other.getEnabled()); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); @@ -12325,18 +17409,12 @@ public Builder mergeFrom( case 0: done = true; break; - case 10: + case 8: { - logBucket_ = input.readStringRequireUtf8(); + enabled_ = input.readBool(); bitField0_ |= 0x00000001; break; - } // case 10 - case 18: - { - logObjectPrefix_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000002; - break; - } // case 18 + } // case 8 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -12356,229 +17434,67 @@ public Builder mergeFrom( private int bitField0_; - private java.lang.Object logBucket_ = ""; - - /** - * - * - *
-       * Optional. The destination bucket where the current bucket's logs should
-       * be placed, using path format (like `projects/123456/buckets/foo`).
-       * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The logBucket. - */ - public java.lang.String getLogBucket() { - java.lang.Object ref = logBucket_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - logBucket_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - - /** - * - * - *
-       * Optional. The destination bucket where the current bucket's logs should
-       * be placed, using path format (like `projects/123456/buckets/foo`).
-       * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for logBucket. - */ - public com.google.protobuf.ByteString getLogBucketBytes() { - java.lang.Object ref = logBucket_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - logBucket_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } + private boolean enabled_; /** * * *
-       * Optional. The destination bucket where the current bucket's logs should
-       * be placed, using path format (like `projects/123456/buckets/foo`).
+       * Optional. Output only. If true, object retention is enabled for the
+       * bucket.
        * 
* - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The logBucket to set. - * @return This builder for chaining. + * @return The enabled. */ - public Builder setLogBucket(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - logBucket_ = value; - bitField0_ |= 0x00000001; - onChanged(); - return this; + @java.lang.Override + public boolean getEnabled() { + return enabled_; } /** * * *
-       * Optional. The destination bucket where the current bucket's logs should
-       * be placed, using path format (like `projects/123456/buckets/foo`).
+       * Optional. Output only. If true, object retention is enabled for the
+       * bucket.
        * 
* - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * * + * @param value The enabled to set. * @return This builder for chaining. */ - public Builder clearLogBucket() { - logBucket_ = getDefaultInstance().getLogBucket(); - bitField0_ = (bitField0_ & ~0x00000001); - onChanged(); - return this; - } + public Builder setEnabled(boolean value) { - /** - * - * - *
-       * Optional. The destination bucket where the current bucket's logs should
-       * be placed, using path format (like `projects/123456/buckets/foo`).
-       * 
- * - * string log_bucket = 1 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The bytes for logBucket to set. - * @return This builder for chaining. - */ - public Builder setLogBucketBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - logBucket_ = value; + enabled_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } - private java.lang.Object logObjectPrefix_ = ""; - /** * * *
-       * Optional. A prefix for log object names.
+       * Optional. Output only. If true, object retention is enabled for the
+       * bucket.
        * 
* - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The logObjectPrefix. - */ - public java.lang.String getLogObjectPrefix() { - java.lang.Object ref = logObjectPrefix_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - logObjectPrefix_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - - /** - * - * - *
-       * Optional. A prefix for log object names.
-       * 
- * - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return The bytes for logObjectPrefix. - */ - public com.google.protobuf.ByteString getLogObjectPrefixBytes() { - java.lang.Object ref = logObjectPrefix_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - logObjectPrefix_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - - /** - * - * - *
-       * Optional. A prefix for log object names.
-       * 
- * - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @param value The logObjectPrefix to set. - * @return This builder for chaining. - */ - public Builder setLogObjectPrefix(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - logObjectPrefix_ = value; - bitField0_ |= 0x00000002; - onChanged(); - return this; - } - - /** - * - * - *
-       * Optional. A prefix for log object names.
-       * 
- * - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; - * - * @return This builder for chaining. - */ - public Builder clearLogObjectPrefix() { - logObjectPrefix_ = getDefaultInstance().getLogObjectPrefix(); - bitField0_ = (bitField0_ & ~0x00000002); - onChanged(); - return this; - } - - /** - * - * - *
-       * Optional. A prefix for log object names.
-       * 
- * - * string log_object_prefix = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * bool enabled = 1 [(.google.api.field_behavior) = OPTIONAL, (.google.api.field_behavior) = OUTPUT_ONLY]; + * * - * @param value The bytes for logObjectPrefix to set. * @return This builder for chaining. */ - public Builder setLogObjectPrefixBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - logObjectPrefix_ = value; - bitField0_ |= 0x00000002; + public Builder clearEnabled() { + bitField0_ = (bitField0_ & ~0x00000001); + enabled_ = false; onChanged(); return this; } @@ -12595,24 +17511,24 @@ public final Builder mergeUnknownFields( return super.mergeUnknownFields(unknownFields); } - // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.Logging) + // @@protoc_insertion_point(builder_scope:google.storage.v2.Bucket.ObjectRetention) } - // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.Logging) - private static final com.google.storage.v2.Bucket.Logging DEFAULT_INSTANCE; + // @@protoc_insertion_point(class_scope:google.storage.v2.Bucket.ObjectRetention) + private static final com.google.storage.v2.Bucket.ObjectRetention DEFAULT_INSTANCE; static { - DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.Logging(); + DEFAULT_INSTANCE = new com.google.storage.v2.Bucket.ObjectRetention(); } - public static com.google.storage.v2.Bucket.Logging getDefaultInstance() { + public static com.google.storage.v2.Bucket.ObjectRetention getDefaultInstance() { return DEFAULT_INSTANCE; } - private static final com.google.protobuf.Parser PARSER = - new com.google.protobuf.AbstractParser() { + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { @java.lang.Override - public Logging parsePartialFrom( + public ObjectRetention parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { @@ -12632,17 +17548,17 @@ public Logging parsePartialFrom( } }; - public static com.google.protobuf.Parser parser() { + public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override - public com.google.protobuf.Parser getParserForType() { + public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override - public com.google.storage.v2.Bucket.Logging getDefaultInstanceForType() { + public com.google.storage.v2.Bucket.ObjectRetention getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } @@ -16639,7 +21555,7 @@ public interface CustomPlacementConfigOrBuilder *
    * Configuration for Custom Dual Regions.  It should specify precisely two
    * eligible regions within the same Multiregion. More information on regions
-   * may be found [https://cloud.google.com/storage/docs/locations][here].
+   * may be found [here](https://cloud.google.com/storage/docs/locations).
    * 
* * Protobuf type {@code google.storage.v2.Bucket.CustomPlacementConfig} @@ -16922,7 +21838,7 @@ protected Builder newBuilderForType( *
      * Configuration for Custom Dual Regions.  It should specify precisely two
      * eligible regions within the same Multiregion. More information on regions
-     * may be found [https://cloud.google.com/storage/docs/locations][here].
+     * may be found [here](https://cloud.google.com/storage/docs/locations).
      * 
* * Protobuf type {@code google.storage.v2.Bucket.CustomPlacementConfig} @@ -19154,6 +24070,34 @@ com.google.storage.v2.Bucket.IpFilter.VpcNetworkSourceOrBuilder getVpcNetworkSou * @return The allowCrossOrgVpcs. */ boolean getAllowCrossOrgVpcs(); + + /** + * + * + *
+     * Whether or not to allow all P4SA access to the bucket. When set to true,
+     * IP filter config validation will not apply.
+     * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return Whether the allowAllServiceAgentAccess field is set. + */ + boolean hasAllowAllServiceAgentAccess(); + + /** + * + * + *
+     * Whether or not to allow all P4SA access to the bucket. When set to true,
+     * IP filter config validation will not apply.
+     * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return The allowAllServiceAgentAccess. + */ + boolean getAllowAllServiceAgentAccess(); } /** @@ -21484,6 +26428,43 @@ public boolean getAllowCrossOrgVpcs() { return allowCrossOrgVpcs_; } + public static final int ALLOW_ALL_SERVICE_AGENT_ACCESS_FIELD_NUMBER = 5; + private boolean allowAllServiceAgentAccess_ = false; + + /** + * + * + *
+     * Whether or not to allow all P4SA access to the bucket. When set to true,
+     * IP filter config validation will not apply.
+     * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return Whether the allowAllServiceAgentAccess field is set. + */ + @java.lang.Override + public boolean hasAllowAllServiceAgentAccess() { + return ((bitField0_ & 0x00000004) != 0); + } + + /** + * + * + *
+     * Whether or not to allow all P4SA access to the bucket. When set to true,
+     * IP filter config validation will not apply.
+     * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return The allowAllServiceAgentAccess. + */ + @java.lang.Override + public boolean getAllowAllServiceAgentAccess() { + return allowAllServiceAgentAccess_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -21510,6 +26491,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (allowCrossOrgVpcs_ != false) { output.writeBool(4, allowCrossOrgVpcs_); } + if (((bitField0_ & 0x00000004) != 0)) { + output.writeBool(5, allowAllServiceAgentAccess_); + } getUnknownFields().writeTo(output); } @@ -21533,6 +26517,10 @@ public int getSerializedSize() { if (allowCrossOrgVpcs_ != false) { size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, allowCrossOrgVpcs_); } + if (((bitField0_ & 0x00000004) != 0)) { + size += + com.google.protobuf.CodedOutputStream.computeBoolSize(5, allowAllServiceAgentAccess_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -21558,6 +26546,10 @@ public boolean equals(final java.lang.Object obj) { } if (!getVpcNetworkSourcesList().equals(other.getVpcNetworkSourcesList())) return false; if (getAllowCrossOrgVpcs() != other.getAllowCrossOrgVpcs()) return false; + if (hasAllowAllServiceAgentAccess() != other.hasAllowAllServiceAgentAccess()) return false; + if (hasAllowAllServiceAgentAccess()) { + if (getAllowAllServiceAgentAccess() != other.getAllowAllServiceAgentAccess()) return false; + } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -21583,6 +26575,11 @@ public int hashCode() { } hash = (37 * hash) + ALLOW_CROSS_ORG_VPCS_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAllowCrossOrgVpcs()); + if (hasAllowAllServiceAgentAccess()) { + hash = (37 * hash) + ALLOW_ALL_SERVICE_AGENT_ACCESS_FIELD_NUMBER; + hash = + (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAllowAllServiceAgentAccess()); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -21752,6 +26749,7 @@ public Builder clear() { } bitField0_ = (bitField0_ & ~0x00000004); allowCrossOrgVpcs_ = false; + allowAllServiceAgentAccess_ = false; return this; } @@ -21816,6 +26814,10 @@ private void buildPartial0(com.google.storage.v2.Bucket.IpFilter result) { if (((from_bitField0_ & 0x00000008) != 0)) { result.allowCrossOrgVpcs_ = allowCrossOrgVpcs_; } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.allowAllServiceAgentAccess_ = allowAllServiceAgentAccess_; + to_bitField0_ |= 0x00000004; + } result.bitField0_ |= to_bitField0_; } @@ -21904,6 +26906,9 @@ public Builder mergeFrom(com.google.storage.v2.Bucket.IpFilter other) { if (other.getAllowCrossOrgVpcs() != false) { setAllowCrossOrgVpcs(other.getAllowCrossOrgVpcs()); } + if (other.hasAllowAllServiceAgentAccess()) { + setAllowAllServiceAgentAccess(other.getAllowAllServiceAgentAccess()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -21963,6 +26968,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000008; break; } // case 32 + case 40: + { + allowAllServiceAgentAccess_ = input.readBool(); + bitField0_ |= 0x00000010; + break; + } // case 40 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -22860,6 +27871,82 @@ public Builder clearAllowCrossOrgVpcs() { return this; } + private boolean allowAllServiceAgentAccess_; + + /** + * + * + *
+       * Whether or not to allow all P4SA access to the bucket. When set to true,
+       * IP filter config validation will not apply.
+       * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return Whether the allowAllServiceAgentAccess field is set. + */ + @java.lang.Override + public boolean hasAllowAllServiceAgentAccess() { + return ((bitField0_ & 0x00000010) != 0); + } + + /** + * + * + *
+       * Whether or not to allow all P4SA access to the bucket. When set to true,
+       * IP filter config validation will not apply.
+       * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return The allowAllServiceAgentAccess. + */ + @java.lang.Override + public boolean getAllowAllServiceAgentAccess() { + return allowAllServiceAgentAccess_; + } + + /** + * + * + *
+       * Whether or not to allow all P4SA access to the bucket. When set to true,
+       * IP filter config validation will not apply.
+       * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @param value The allowAllServiceAgentAccess to set. + * @return This builder for chaining. + */ + public Builder setAllowAllServiceAgentAccess(boolean value) { + + allowAllServiceAgentAccess_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + /** + * + * + *
+       * Whether or not to allow all P4SA access to the bucket. When set to true,
+       * IP filter config validation will not apply.
+       * 
+ * + * optional bool allow_all_service_agent_access = 5; + * + * @return This builder for chaining. + */ + public Builder clearAllowAllServiceAgentAccess() { + bitField0_ = (bitField0_ & ~0x00000010); + allowAllServiceAgentAccess_ = false; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -25318,6 +30405,68 @@ public com.google.storage.v2.Bucket.SoftDeletePolicyOrBuilder getSoftDeletePolic : softDeletePolicy_; } + public static final int OBJECT_RETENTION_FIELD_NUMBER = 33; + private com.google.storage.v2.Bucket.ObjectRetention objectRetention_; + + /** + * + * + *
+   * Optional. The bucket's object retention configuration. Must be enabled
+   * before objects in the bucket may have retention configured.
+   * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the objectRetention field is set. + */ + @java.lang.Override + public boolean hasObjectRetention() { + return ((bitField0_ & 0x00008000) != 0); + } + + /** + * + * + *
+   * Optional. The bucket's object retention configuration. Must be enabled
+   * before objects in the bucket may have retention configured.
+   * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The objectRetention. + */ + @java.lang.Override + public com.google.storage.v2.Bucket.ObjectRetention getObjectRetention() { + return objectRetention_ == null + ? com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance() + : objectRetention_; + } + + /** + * + * + *
+   * Optional. The bucket's object retention configuration. Must be enabled
+   * before objects in the bucket may have retention configured.
+   * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.storage.v2.Bucket.ObjectRetentionOrBuilder getObjectRetentionOrBuilder() { + return objectRetention_ == null + ? com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance() + : objectRetention_; + } + public static final int IP_FILTER_FIELD_NUMBER = 38; private com.google.storage.v2.Bucket.IpFilter ipFilter_; @@ -25336,7 +30485,7 @@ public com.google.storage.v2.Bucket.SoftDeletePolicyOrBuilder getSoftDeletePolic */ @java.lang.Override public boolean hasIpFilter() { - return ((bitField0_ & 0x00008000) != 0); + return ((bitField0_ & 0x00010000) != 0); } /** @@ -25481,6 +30630,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io output.writeMessage(32, getHierarchicalNamespace()); } if (((bitField0_ & 0x00008000) != 0)) { + output.writeMessage(33, getObjectRetention()); + } + if (((bitField0_ & 0x00010000) != 0)) { output.writeMessage(38, getIpFilter()); } getUnknownFields().writeTo(output); @@ -25592,6 +30744,9 @@ public int getSerializedSize() { com.google.protobuf.CodedOutputStream.computeMessageSize(32, getHierarchicalNamespace()); } if (((bitField0_ & 0x00008000) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(33, getObjectRetention()); + } + if (((bitField0_ & 0x00010000) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(38, getIpFilter()); } size += getUnknownFields().getSerializedSize(); @@ -25684,6 +30839,10 @@ public boolean equals(final java.lang.Object obj) { if (hasSoftDeletePolicy()) { if (!getSoftDeletePolicy().equals(other.getSoftDeletePolicy())) return false; } + if (hasObjectRetention() != other.hasObjectRetention()) return false; + if (hasObjectRetention()) { + if (!getObjectRetention().equals(other.getObjectRetention())) return false; + } if (hasIpFilter() != other.hasIpFilter()) return false; if (hasIpFilter()) { if (!getIpFilter().equals(other.getIpFilter())) return false; @@ -25797,6 +30956,10 @@ public int hashCode() { hash = (37 * hash) + SOFT_DELETE_POLICY_FIELD_NUMBER; hash = (53 * hash) + getSoftDeletePolicy().hashCode(); } + if (hasObjectRetention()) { + hash = (37 * hash) + OBJECT_RETENTION_FIELD_NUMBER; + hash = (53 * hash) + getObjectRetention().hashCode(); + } if (hasIpFilter()) { hash = (37 * hash) + IP_FILTER_FIELD_NUMBER; hash = (53 * hash) + getIpFilter().hashCode(); @@ -25979,6 +31142,7 @@ private void maybeForceBuilderInitialization() { getAutoclassFieldBuilder(); getHierarchicalNamespaceFieldBuilder(); getSoftDeletePolicyFieldBuilder(); + getObjectRetentionFieldBuilder(); getIpFilterFieldBuilder(); } } @@ -26095,6 +31259,11 @@ public Builder clear() { softDeletePolicyBuilder_.dispose(); softDeletePolicyBuilder_ = null; } + objectRetention_ = null; + if (objectRetentionBuilder_ != null) { + objectRetentionBuilder_.dispose(); + objectRetentionBuilder_ = null; + } ipFilter_ = null; if (ipFilterBuilder_ != null) { ipFilterBuilder_.dispose(); @@ -26272,9 +31441,14 @@ private void buildPartial0(com.google.storage.v2.Bucket result) { to_bitField0_ |= 0x00004000; } if (((from_bitField0_ & 0x40000000) != 0)) { - result.ipFilter_ = ipFilterBuilder_ == null ? ipFilter_ : ipFilterBuilder_.build(); + result.objectRetention_ = + objectRetentionBuilder_ == null ? objectRetention_ : objectRetentionBuilder_.build(); to_bitField0_ |= 0x00008000; } + if (((from_bitField0_ & 0x80000000) != 0)) { + result.ipFilter_ = ipFilterBuilder_ == null ? ipFilter_ : ipFilterBuilder_.build(); + to_bitField0_ |= 0x00010000; + } result.bitField0_ |= to_bitField0_; } @@ -26500,6 +31674,9 @@ public Builder mergeFrom(com.google.storage.v2.Bucket other) { if (other.hasSoftDeletePolicy()) { mergeSoftDeletePolicy(other.getSoftDeletePolicy()); } + if (other.hasObjectRetention()) { + mergeObjectRetention(other.getObjectRetention()); + } if (other.hasIpFilter()) { mergeIpFilter(other.getIpFilter()); } @@ -26739,10 +31916,16 @@ public Builder mergeFrom( bitField0_ |= 0x10000000; break; } // case 258 + case 266: + { + input.readMessage(getObjectRetentionFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x40000000; + break; + } // case 266 case 306: { input.readMessage(getIpFilterFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x40000000; + bitField0_ |= 0x80000000; break; } // case 306 default: @@ -32846,6 +38029,229 @@ public com.google.storage.v2.Bucket.SoftDeletePolicyOrBuilder getSoftDeletePolic return softDeletePolicyBuilder_; } + private com.google.storage.v2.Bucket.ObjectRetention objectRetention_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.ObjectRetention, + com.google.storage.v2.Bucket.ObjectRetention.Builder, + com.google.storage.v2.Bucket.ObjectRetentionOrBuilder> + objectRetentionBuilder_; + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the objectRetention field is set. + */ + public boolean hasObjectRetention() { + return ((bitField0_ & 0x40000000) != 0); + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The objectRetention. + */ + public com.google.storage.v2.Bucket.ObjectRetention getObjectRetention() { + if (objectRetentionBuilder_ == null) { + return objectRetention_ == null + ? com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance() + : objectRetention_; + } else { + return objectRetentionBuilder_.getMessage(); + } + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setObjectRetention(com.google.storage.v2.Bucket.ObjectRetention value) { + if (objectRetentionBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + objectRetention_ = value; + } else { + objectRetentionBuilder_.setMessage(value); + } + bitField0_ |= 0x40000000; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setObjectRetention( + com.google.storage.v2.Bucket.ObjectRetention.Builder builderForValue) { + if (objectRetentionBuilder_ == null) { + objectRetention_ = builderForValue.build(); + } else { + objectRetentionBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x40000000; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeObjectRetention(com.google.storage.v2.Bucket.ObjectRetention value) { + if (objectRetentionBuilder_ == null) { + if (((bitField0_ & 0x40000000) != 0) + && objectRetention_ != null + && objectRetention_ + != com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance()) { + getObjectRetentionBuilder().mergeFrom(value); + } else { + objectRetention_ = value; + } + } else { + objectRetentionBuilder_.mergeFrom(value); + } + if (objectRetention_ != null) { + bitField0_ |= 0x40000000; + onChanged(); + } + return this; + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearObjectRetention() { + bitField0_ = (bitField0_ & ~0x40000000); + objectRetention_ = null; + if (objectRetentionBuilder_ != null) { + objectRetentionBuilder_.dispose(); + objectRetentionBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.ObjectRetention.Builder getObjectRetentionBuilder() { + bitField0_ |= 0x40000000; + onChanged(); + return getObjectRetentionFieldBuilder().getBuilder(); + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.storage.v2.Bucket.ObjectRetentionOrBuilder getObjectRetentionOrBuilder() { + if (objectRetentionBuilder_ != null) { + return objectRetentionBuilder_.getMessageOrBuilder(); + } else { + return objectRetention_ == null + ? com.google.storage.v2.Bucket.ObjectRetention.getDefaultInstance() + : objectRetention_; + } + } + + /** + * + * + *
+     * Optional. The bucket's object retention configuration. Must be enabled
+     * before objects in the bucket may have retention configured.
+     * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.ObjectRetention, + com.google.storage.v2.Bucket.ObjectRetention.Builder, + com.google.storage.v2.Bucket.ObjectRetentionOrBuilder> + getObjectRetentionFieldBuilder() { + if (objectRetentionBuilder_ == null) { + objectRetentionBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.storage.v2.Bucket.ObjectRetention, + com.google.storage.v2.Bucket.ObjectRetention.Builder, + com.google.storage.v2.Bucket.ObjectRetentionOrBuilder>( + getObjectRetention(), getParentForChildren(), isClean()); + objectRetention_ = null; + } + return objectRetentionBuilder_; + } + private com.google.storage.v2.Bucket.IpFilter ipFilter_; private com.google.protobuf.SingleFieldBuilderV3< com.google.storage.v2.Bucket.IpFilter, @@ -32867,7 +38273,7 @@ public com.google.storage.v2.Bucket.SoftDeletePolicyOrBuilder getSoftDeletePolic * @return Whether the ipFilter field is set. */ public boolean hasIpFilter() { - return ((bitField0_ & 0x40000000) != 0); + return ((bitField0_ & 0x80000000) != 0); } /** @@ -32913,7 +38319,7 @@ public Builder setIpFilter(com.google.storage.v2.Bucket.IpFilter value) { } else { ipFilterBuilder_.setMessage(value); } - bitField0_ |= 0x40000000; + bitField0_ |= 0x80000000; onChanged(); return this; } @@ -32935,7 +38341,7 @@ public Builder setIpFilter(com.google.storage.v2.Bucket.IpFilter.Builder builder } else { ipFilterBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x40000000; + bitField0_ |= 0x80000000; onChanged(); return this; } @@ -32953,7 +38359,7 @@ public Builder setIpFilter(com.google.storage.v2.Bucket.IpFilter.Builder builder */ public Builder mergeIpFilter(com.google.storage.v2.Bucket.IpFilter value) { if (ipFilterBuilder_ == null) { - if (((bitField0_ & 0x40000000) != 0) + if (((bitField0_ & 0x80000000) != 0) && ipFilter_ != null && ipFilter_ != com.google.storage.v2.Bucket.IpFilter.getDefaultInstance()) { getIpFilterBuilder().mergeFrom(value); @@ -32964,7 +38370,7 @@ public Builder mergeIpFilter(com.google.storage.v2.Bucket.IpFilter value) { ipFilterBuilder_.mergeFrom(value); } if (ipFilter_ != null) { - bitField0_ |= 0x40000000; + bitField0_ |= 0x80000000; onChanged(); } return this; @@ -32982,7 +38388,7 @@ public Builder mergeIpFilter(com.google.storage.v2.Bucket.IpFilter value) { *
*/ public Builder clearIpFilter() { - bitField0_ = (bitField0_ & ~0x40000000); + bitField0_ = (bitField0_ & ~0x80000000); ipFilter_ = null; if (ipFilterBuilder_ != null) { ipFilterBuilder_.dispose(); @@ -33004,7 +38410,7 @@ public Builder clearIpFilter() { *
*/ public com.google.storage.v2.Bucket.IpFilter.Builder getIpFilterBuilder() { - bitField0_ |= 0x40000000; + bitField0_ |= 0x80000000; onChanged(); return getIpFilterFieldBuilder().getBuilder(); } diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControl.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControl.java index ca503fb7ab..ad4d5e0414 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControl.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControl.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControlOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControlOrBuilder.java index c0df1af4c9..85135aacec 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControlOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketAccessControlOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BucketAccessControlOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java index 0a20b340e3..9f5b931207 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface BucketOrBuilder @@ -1313,6 +1313,52 @@ java.lang.String getLabelsOrDefault( */ com.google.storage.v2.Bucket.SoftDeletePolicyOrBuilder getSoftDeletePolicyOrBuilder(); + /** + * + * + *
+   * Optional. The bucket's object retention configuration. Must be enabled
+   * before objects in the bucket may have retention configured.
+   * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the objectRetention field is set. + */ + boolean hasObjectRetention(); + + /** + * + * + *
+   * Optional. The bucket's object retention configuration. Must be enabled
+   * before objects in the bucket may have retention configured.
+   * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The objectRetention. + */ + com.google.storage.v2.Bucket.ObjectRetention getObjectRetention(); + + /** + * + * + *
+   * Optional. The bucket's object retention configuration. Must be enabled
+   * before objects in the bucket may have retention configured.
+   * 
+ * + * + * .google.storage.v2.Bucket.ObjectRetention object_retention = 33 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.storage.v2.Bucket.ObjectRetentionOrBuilder getObjectRetentionOrBuilder(); + /** * * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java index f5792fde98..f04c659c3d 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java index fcc42593cc..b4e2512656 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface CancelResumableWriteRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java index 2bb68e98dd..152703df5f 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java index 1875e4b50f..9b45fdf0fb 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface CancelResumableWriteResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedData.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedData.java index 2b752fe726..117d9bb282 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedData.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedData.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedDataOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedDataOrBuilder.java index d486a3a093..8ed601a66c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedDataOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ChecksummedDataOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ChecksummedDataOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParams.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParams.java index b60850cf0b..80c644af5b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParams.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParams.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParamsOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParamsOrBuilder.java index b1a9d49779..f329aea4fc 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParamsOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CommonObjectRequestParamsOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface CommonObjectRequestParamsOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequest.java index e399ad3ad6..f242141cdc 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequestOrBuilder.java index 36bf72dcfd..4063d0640b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ComposeObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ComposeObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRange.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRange.java index 1dd59e72c7..654ca0e23f 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRange.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRange.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRangeOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRangeOrBuilder.java index e4746e9057..4861f53a5a 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRangeOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ContentRangeOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ContentRangeOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequest.java index f4b88b3d6d..68ab235b1b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** @@ -369,6 +369,25 @@ public com.google.protobuf.ByteString getPredefinedDefaultObjectAclBytes() { } } + public static final int ENABLE_OBJECT_RETENTION_FIELD_NUMBER = 9; + private boolean enableObjectRetention_ = false; + + /** + * + * + *
+   * Optional. If true, enable object retention on the bucket.
+   * 
+ * + * bool enable_object_retention = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableObjectRetention. + */ + @java.lang.Override + public boolean getEnableObjectRetention() { + return enableObjectRetention_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -398,6 +417,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predefinedDefaultObjectAcl_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, predefinedDefaultObjectAcl_); } + if (enableObjectRetention_ != false) { + output.writeBool(9, enableObjectRetention_); + } getUnknownFields().writeTo(output); } @@ -423,6 +445,9 @@ public int getSerializedSize() { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, predefinedDefaultObjectAcl_); } + if (enableObjectRetention_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(9, enableObjectRetention_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -448,6 +473,7 @@ public boolean equals(final java.lang.Object obj) { if (!getPredefinedAcl().equals(other.getPredefinedAcl())) return false; if (!getPredefinedDefaultObjectAcl().equals(other.getPredefinedDefaultObjectAcl())) return false; + if (getEnableObjectRetention() != other.getEnableObjectRetention()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -471,6 +497,8 @@ public int hashCode() { hash = (53 * hash) + getPredefinedAcl().hashCode(); hash = (37 * hash) + PREDEFINED_DEFAULT_OBJECT_ACL_FIELD_NUMBER; hash = (53 * hash) + getPredefinedDefaultObjectAcl().hashCode(); + hash = (37 * hash) + ENABLE_OBJECT_RETENTION_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getEnableObjectRetention()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -629,6 +657,7 @@ public Builder clear() { bucketId_ = ""; predefinedAcl_ = ""; predefinedDefaultObjectAcl_ = ""; + enableObjectRetention_ = false; return this; } @@ -682,6 +711,9 @@ private void buildPartial0(com.google.storage.v2.CreateBucketRequest result) { if (((from_bitField0_ & 0x00000010) != 0)) { result.predefinedDefaultObjectAcl_ = predefinedDefaultObjectAcl_; } + if (((from_bitField0_ & 0x00000020) != 0)) { + result.enableObjectRetention_ = enableObjectRetention_; + } result.bitField0_ |= to_bitField0_; } @@ -753,6 +785,9 @@ public Builder mergeFrom(com.google.storage.v2.CreateBucketRequest other) { bitField0_ |= 0x00000010; onChanged(); } + if (other.getEnableObjectRetention() != false) { + setEnableObjectRetention(other.getEnableObjectRetention()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -809,6 +844,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000010; break; } // case 58 + case 72: + { + enableObjectRetention_ = input.readBool(); + bitField0_ |= 0x00000020; + break; + } // case 72 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -1571,6 +1612,62 @@ public Builder setPredefinedDefaultObjectAclBytes(com.google.protobuf.ByteString return this; } + private boolean enableObjectRetention_; + + /** + * + * + *
+     * Optional. If true, enable object retention on the bucket.
+     * 
+ * + * bool enable_object_retention = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableObjectRetention. + */ + @java.lang.Override + public boolean getEnableObjectRetention() { + return enableObjectRetention_; + } + + /** + * + * + *
+     * Optional. If true, enable object retention on the bucket.
+     * 
+ * + * bool enable_object_retention = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The enableObjectRetention to set. + * @return This builder for chaining. + */ + public Builder setEnableObjectRetention(boolean value) { + + enableObjectRetention_ = value; + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. If true, enable object retention on the bucket.
+     * 
+ * + * bool enable_object_retention = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearEnableObjectRetention() { + bitField0_ = (bitField0_ & ~0x00000020); + enableObjectRetention_ = false; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequestOrBuilder.java index c68a2d7005..ec1f60218b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateBucketRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface CreateBucketRequestOrBuilder @@ -204,4 +204,17 @@ public interface CreateBucketRequestOrBuilder * @return The bytes for predefinedDefaultObjectAcl. */ com.google.protobuf.ByteString getPredefinedDefaultObjectAclBytes(); + + /** + * + * + *
+   * Optional. If true, enable object retention on the bucket.
+   * 
+ * + * bool enable_object_retention = 9 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The enableObjectRetention. + */ + boolean getEnableObjectRetention(); } diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryption.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryption.java index 9ebfba31e8..9fbbb6cb84 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryption.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryption.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryptionOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryptionOrBuilder.java index 1ccb9e9e3f..2bd6387646 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryptionOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CustomerEncryptionOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface CustomerEncryptionOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequest.java index 12ccf7a6ca..048d27d275 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequestOrBuilder.java index 6270f29306..73e36136e4 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteBucketRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface DeleteBucketRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java index 4c4325628c..4d3966842d 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java index 7cfc2d778b..5b7eb15d51 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface DeleteObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequest.java index 611eac5038..ca1a62ceb4 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequestOrBuilder.java index 3ee9d87cfe..d5c9974e5b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetBucketRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface GetBucketRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequest.java index ca1d343767..a184b3b8a0 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequestOrBuilder.java index 31c91b3012..884f2cefb4 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface GetObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequest.java index 4fa407a70f..167c7ca79c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequestOrBuilder.java index eb515d1163..85afd4ef43 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ListBucketsRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponse.java index e50f0e8193..a18c229eb8 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponseOrBuilder.java index a08e877790..5746479f08 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListBucketsResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ListBucketsResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequest.java index c1f7a66e54..e64ea53f13 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequestOrBuilder.java index 7e3a016516..dbf34af3c9 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ListObjectsRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponse.java index 681a6545d2..a23f7f8c04 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponseOrBuilder.java index d982757a4c..de27437135 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListObjectsResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ListObjectsResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequest.java index e5ab103a9d..b67203a8e5 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequestOrBuilder.java index 1ee02f1ba4..bd77bd7de9 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/LockBucketRetentionPolicyRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface LockBucketRetentionPolicyRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequest.java index c46647fc63..a9e86271f1 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequestOrBuilder.java index eb25dda0e7..53fd3ff8d3 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/MoveObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface MoveObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java index de3b7edd02..ea36d7947a 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControl.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControl.java index c70729830f..74dd22cd37 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControl.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControl.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControlOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControlOrBuilder.java index 84a36d44af..6092103830 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControlOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectAccessControlOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ObjectAccessControlOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksums.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksums.java index cb3b28d0aa..f64015ce14 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksums.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksums.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksumsOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksumsOrBuilder.java index e6c448428a..2553efad78 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksumsOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectChecksumsOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ObjectChecksumsOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java index 270c6429ec..e9a35b73c8 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ObjectOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeData.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeData.java index 16adefae00..bb752cab98 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeData.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeData.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeDataOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeDataOrBuilder.java index f4e7a88b62..4ca846b2bf 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeDataOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectRangeDataOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ObjectRangeDataOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Owner.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Owner.java index 236b7e1e4f..ecbf3f86c4 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Owner.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Owner.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/OwnerOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/OwnerOrBuilder.java index 842d0dfe68..d0fb9675de 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/OwnerOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/OwnerOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface OwnerOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeam.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeam.java index 75e555db82..2c68d00aaa 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeam.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeam.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeamOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeamOrBuilder.java index a974bc7e36..6627b82512 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeamOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ProjectTeamOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ProjectTeamOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequest.java index 3054ea5427..d205885761 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequestOrBuilder.java index 579c423d93..d90f5738e2 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface QueryWriteStatusRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponse.java index fb460085c1..a3648a25da 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponseOrBuilder.java index af311b682f..5f59fec54a 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/QueryWriteStatusResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface QueryWriteStatusResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequest.java index 248d9a89fa..2034dececc 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequestOrBuilder.java index d7ebc80a28..b9216e35b8 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ReadObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponse.java index 40b9d9c6c6..73e000292b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponseOrBuilder.java index ceb0120e7b..18f944baee 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadObjectResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ReadObjectResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRange.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRange.java index 0ca034d93d..dda55f6dd7 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRange.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRange.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeError.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeError.java index 470d640436..aade2aaf52 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeError.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeError.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeErrorOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeErrorOrBuilder.java index 0a73756f4f..6f5adb6cc9 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeErrorOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeErrorOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ReadRangeErrorOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeOrBuilder.java index 3b783ba9b9..40056c80bd 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ReadRangeOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ReadRangeOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequest.java index e56a27a916..f2f8ebca28 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequestOrBuilder.java index f344f0046b..db495cbe8c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RestoreObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface RestoreObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java index be7c53bbcc..c74fc7ecaa 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java index eac28c610c..1093a2fd3c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface RewriteObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponse.java index a072f41459..ed0ea5fb6f 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponseOrBuilder.java index cc3bb6b968..05314ceb9b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface RewriteResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstants.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstants.java index 818998199c..e13983e936 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstants.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstants.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstantsOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstantsOrBuilder.java index aeb6938a5d..b60d0caa05 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstantsOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ServiceConstantsOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface ServiceConstantsOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequest.java index 2857a1599d..78c222f6bc 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequestOrBuilder.java index c9d033358e..6d04895c4c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface StartResumableWriteRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponse.java index 12b96be4c5..90c469445f 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponseOrBuilder.java index 689eb04036..956c2d4a0c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StartResumableWriteResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface StartResumableWriteResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java index 68084e5c9a..3735e10b68 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public final class StorageProto { @@ -224,6 +224,18 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_storage_v2_Bucket_Encryption_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_storage_v2_Bucket_Encryption_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_storage_v2_Bucket_IamConfig_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -252,6 +264,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_storage_v2_Bucket_Logging_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_storage_v2_Bucket_Logging_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_storage_v2_Bucket_ObjectRetention_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_storage_v2_Bucket_ObjectRetention_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_storage_v2_Bucket_RetentionPolicy_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -379,17 +395,18 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\tread_mask\030\005 \001(\0132\032.google.protobuf.FieldMaskH\002\210\001\001B\032\n" + "\030_if_metageneration_matchB\036\n" + "\034_if_metageneration_not_matchB\014\n\n" - + "_read_mask\"\335\001\n" + + "_read_mask\"\203\002\n" + "\023CreateBucketRequest\0225\n" + "\006parent\030\001 \001(" + "\tB%\340A\002\372A\037\022\035storage.googleapis.com/Bucket\022.\n" + "\006bucket\030\002 \001(\0132\031.google.storage.v2.BucketB\003\340A\001\022\026\n" + "\tbucket_id\030\003 \001(\tB\003\340A\002\022\033\n" + "\016predefined_acl\030\006 \001(\tB\003\340A\001\022*\n" - + "\035predefined_default_object_acl\030\007 \001(\tB\003\340A\001\"\323\001\n" + + "\035predefined_default_object_acl\030\007 \001(\tB\003\340A\001\022$\n" + + "\027enable_object_retention\030\t \001(\010B\003\340A\001\"\323\001\n" + "\022ListBucketsRequest\0225\n" - + "\006parent\030\001 \001(\t" - + "B%\340A\002\372A\037\022\035storage.googleapis.com/Bucket\022\026\n" + + "\006parent\030\001 \001(" + + "\tB%\340A\002\372A\037\022\035storage.googleapis.com/Bucket\022\026\n" + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\n" + "page_token\030\003 \001(\tB\003\340A\001\022\023\n" + "\006prefix\030\004 \001(\tB\003\340A\001\0222\n" @@ -413,22 +430,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\034_if_metageneration_not_match\"\226\006\n" + "\024ComposeObjectRequest\0223\n" + "\013destination\030\001 \001(\0132\031.google.storage.v2.ObjectB\003\340A\002\022Q\n" - + "\016source_objects\030\002 \003(\01324." - + "google.storage.v2.ComposeObjectRequest.SourceObjectB\003\340A\001\022\'\n" + + "\016source_objects\030\002 \003(\01324.go" + + "ogle.storage.v2.ComposeObjectRequest.SourceObjectB\003\340A\001\022\'\n" + "\032destination_predefined_acl\030\t \001(\tB\003\340A\001\022 \n" + "\023if_generation_match\030\004 \001(\003H\000\210\001\001\022$\n" + "\027if_metageneration_match\030\005 \001(\003H\001\210\001\001\022:\n" + "\007kms_key\030\006 \001(\tB)\340A\001\372A#\n" + "!cloudkms.googleapis.com/CryptoKey\022W\n" - + "\034common_object_request_params\030\007 \001(\0132,.google.sto" - + "rage.v2.CommonObjectRequestParamsB\003\340A\001\022A\n" + + "\034common_object_request_params\030\007" + + " \001(\0132,.google.storage.v2.CommonObjectRequestParamsB\003\340A\001\022A\n" + "\020object_checksums\030\n" + " \001(\0132\".google.storage.v2.ObjectChecksumsB\003\340A\001\032\370\001\n" + "\014SourceObject\022\021\n" + "\004name\030\001 \001(\tB\003\340A\002\022\027\n\n" + "generation\030\002 \001(\003B\003\340A\001\022k\n" - + "\024object_preconditions\030\003 \001(\0132H.g" - + "oogle.storage.v2.ComposeObjectRequest.SourceObject.ObjectPreconditionsB\003\340A\001\032O\n" + + "\024object_preconditions\030\003 \001(\0132H.goo" + + "gle.storage.v2.ComposeObjectRequest.SourceObject.ObjectPreconditionsB\003\340A\001\032O\n" + "\023ObjectPreconditions\022 \n" + "\023if_generation_match\030\001 \001(\003H\000\210\001\001B\026\n" + "\024_if_generation_matchB\026\n" @@ -475,7 +492,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\035storage.googleapis.com/Bucket\022\023\n" + "\006object\030\002 \001(\tB\003\340A\002\022\027\n\n" + "generation\030\003 \001(\003B\003\340A\001\022\030\n" - + "\013read_offset\030\004 \001(\003B\003\340A\001\022\027\n\n" + + "\013read_offset\030\004 \001(\003B\003\340A\001\022\027\n" + + "\n" + "read_limit\030\005 \001(\003B\003\340A\001\022 \n" + "\023if_generation_match\030\006 \001(\003H\000\210\001\001\022$\n" + "\027if_generation_not_match\030\007 \001(\003H\001\210\001\001\022$\n" @@ -557,7 +575,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\0132\".google.storage.v2.BidiWriteHandleH\001\210\001\001\022\027\n\n" + "generation\030\003 \001(\003H\002\210\001\001B\020\n" + "\016_routing_tokenB\017\n\r" - + "_write_handleB\r\n" + + "_write_handleB\r" + + "\n" + "\013_generation\"S\n" + "\023BidiReadObjectError\022<\n" + "\021read_range_errors\030\001 \003(\0132!.google.storage.v2.ReadRangeError\"E\n" @@ -589,18 +608,17 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\030_if_generation_not_matchB\032\n" + "\030_if_metageneration_matchB\036\n" + "\034_if_metageneration_not_matchB\016\n" - + "\014_object_sizeB\r" - + "\n" + + "\014_object_sizeB\r\n" + "\013_appendable\"\225\003\n" + "\022WriteObjectRequest\022\023\n" + "\tupload_id\030\001 \001(\tH\000\022?\n" - + "\021write_object_spec\030\002" - + " \001(\0132\".google.storage.v2.WriteObjectSpecH\000\022\031\n" + + "\021write_object_spec\030\002 \001" + + "(\0132\".google.storage.v2.WriteObjectSpecH\000\022\031\n" + "\014write_offset\030\003 \001(\003B\003\340A\002\022>\n" + "\020checksummed_data\030\004" + " \001(\0132\".google.storage.v2.ChecksummedDataH\001\022A\n" - + "\020object_checksums\030\006 \001(\0132" - + "\".google.storage.v2.ObjectChecksumsB\003\340A\001\022\031\n" + + "\020object_checksums\030\006 \001(\0132\"." + + "google.storage.v2.ObjectChecksumsB\003\340A\001\022\031\n" + "\014finish_write\030\007 \001(\010B\003\340A\001\022W\n" + "\034common_object_request_params\030\010" + " \001(\0132,.google.storage.v2.CommonObjectRequestParamsB\003\340A\001B\017\n\r" @@ -669,8 +687,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "_read_mask\"\212\001\n" + "\027QueryWriteStatusRequest\022\026\n" + "\tupload_id\030\001 \001(\tB\003\340A\002\022W\n" - + "\034common_object_request_params\030\002 \001(\0132,.g" - + "oogle.storage.v2.CommonObjectRequestParamsB\003\340A\001\"s\n" + + "\034common_object_request_params\030\002 \001(\0132,.goo" + + "gle.storage.v2.CommonObjectRequestParamsB\003\340A\001\"s\n" + "\030QueryWriteStatusResponse\022\030\n" + "\016persisted_size\030\001 \001(\003H\000\022-\n" + "\010resource\030\002 \001(\0132\031.google.storage.v2.ObjectH\000B\016\n" @@ -749,12 +767,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\032StartResumableWriteRequest\022B\n" + "\021write_object_spec\030\001" + " \001(\0132\".google.storage.v2.WriteObjectSpecB\003\340A\002\022W\n" - + "\034common_object_request_params\030\003 \001(\0132,.goog" - + "le.storage.v2.CommonObjectRequestParamsB\003\340A\001\022A\n" + + "\034common_object_request_params\030\003 \001(\0132,.google" + + ".storage.v2.CommonObjectRequestParamsB\003\340A\001\022A\n" + "\020object_checksums\030\005" + " \001(\0132\".google.storage.v2.ObjectChecksumsB\003\340A\001\"0\n" + "\033StartResumableWriteResponse\022\021\n" - + "\tupload_id\030\001 \001(\t\"\371\003\n" + + "\tupload_id\030\001 \001(\t\"\243\004\n" + "\023UpdateObjectRequest\022.\n" + "\006object\030\001 \001(\0132\031.google.storage.v2.ObjectB\003\340A\002\022 \n" + "\023if_generation_match\030\002 \001(\003H\000\210\001\001\022$\n" @@ -765,7 +783,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " \001(\tB\003\340A\001\0224\n" + "\013update_mask\030\007 \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\022W\n" + "\034common_object_request_params\030\010" - + " \001(\0132,.google.storage.v2.CommonObjectRequestParamsB\003\340A\001B\026\n" + + " \001(\0132,.google.storage.v2.CommonObjectRequestParamsB\003\340A\001\022(\n" + + "\033override_unlocked_retention\030\013 \001(\010B\003\340A\001B\026\n" + "\024_if_generation_matchB\032\n" + "\030_if_generation_not_matchB\032\n" + "\030_if_metageneration_matchB\036\n" @@ -793,7 +812,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\033MAX_LABELS_KEY_VALUE_LENGTH\020?\022\037\n" + "\032MAX_LABELS_KEY_VALUE_BYTES\020\200\001\022.\n" + ")MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQUEST\020\350\007\022\036\n" - + "\032SPLIT_TOKEN_MAX_VALID_DAYS\020\016\032\002\020\001\"\225\"\n" + + "\032SPLIT_TOKEN_MAX_VALID_DAYS\020\016\032\002\020\001\"\226,\n" + "\006Bucket\022\021\n" + "\004name\030\001 \001(\tB\003\340A\010\022\026\n" + "\tbucket_id\030\002 \001(\tB\003\340A\003\022\014\n" @@ -838,19 +857,50 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\026hierarchical_namespace\030 " + " \001(\0132/.google.storage.v2.Bucket.HierarchicalNamespaceB\003\340A\001\022K\n" + "\022soft_delete_policy\030\037" - + " \001(\0132*.google.storage.v2.Bucket.SoftDeletePolicyB\003\340A\001\022?\n" - + "\tip_filter\030& \001(\0132" - + "\".google.storage.v2.Bucket.IpFilterB\003\340A\001H\000\210\001\001\032&\n" + + " \001(\0132*.google.storage.v2.Bucket.SoftDeletePolicyB\003\340A\001\022H\n" + + "\020object_retention\030!" + + " \001(\0132).google.storage.v2.Bucket.ObjectRetentionB\003\340A\001\022?\n" + + "\tip_filter\030& \001(\0132\".goog" + + "le.storage.v2.Bucket.IpFilterB\003\340A\001H\000\210\001\001\032&\n" + "\007Billing\022\033\n" + "\016requester_pays\030\001 \001(\010B\003\340A\001\032l\n" + "\004Cors\022\023\n" + "\006origin\030\001 \003(\tB\003\340A\001\022\023\n" + "\006method\030\002 \003(\tB\003\340A\001\022\034\n" + "\017response_header\030\003 \003(\tB\003\340A\001\022\034\n" - + "\017max_age_seconds\030\004 \001(\005B\003\340A\001\032P\n\n" + + "\017max_age_seconds\030\004 \001(\005B\003\340A\001\032\212\t\n\n" + "Encryption\022B\n" + "\017default_kms_key\030\001 \001(\tB)\340A\001\372A#\n" - + "!cloudkms.googleapis.com/CryptoKey\032\200\002\n" + + "!cloudkms.googleapis.com/CryptoKey\022\215\001\n" + + ",google_managed_encryption_enforcement_config\030\002" + + " \001(\0132M.google.storage.v2.Bucket.Encry" + + "ption.GoogleManagedEncryptionEnforcementConfigB\003\340A\001H\000\210\001\001\022\221\001\n" + + ".customer_managed_en", + "cryption_enforcement_config\030\003 \001(\0132O.google.storage.v2.Bucket.Encryption.Customer" + + "ManagedEncryptionEnforcementConfigB\003\340A\001H\001\210\001\001\022\223\001\n" + + "/customer_supplied_encryption_enforcement_config\030\004 \001(\0132P.google.storage." + + "v2.Bucket.Encryption.CustomerSuppliedEncryptionEnforcementConfigB\003\340A\001H\002\210\001\001\032\236\001\n" + + "(GoogleManagedEncryptionEnforcementConfig\022\027\n\n" + + "restricted\030\001 \001(\010H\000\210\001\001\0227\n" + + "\016effective_time\030\002" + + " \001(\0132\032.google.protobuf.TimestampH\001\210\001\001B\r\n" + + "\013_restrictedB\021\n" + + "\017_effective_time\032\240\001\n" + + "*CustomerManagedEncryptionEnforcementConfig\022\027\n\n" + + "restricted\030\001 \001(\010H\000\210\001\001\0227\n" + + "\016effective_time\030\002" + + " \001(\0132\032.google.protobuf.TimestampH\001\210\001\001B\r\n" + + "\013_restrictedB\021\n" + + "\017_effective_time\032\241\001\n" + + "+CustomerSuppliedEncryptionEnforcementConfig\022\027\n\n" + + "restricted\030\001 \001(\010H\000\210\001\001\0227\n" + + "\016effective_time\030\002" + + " \001(\0132\032.google.protobuf.TimestampH\001\210\001\001B\r\n" + + "\013_restrictedB\021\n" + + "\017_effective_timeB/\n" + + "-_google_managed_encryption_enforcement_configB1\n" + + "/_customer_managed_encryption_enforcement_configB2\n" + + "0_customer_supplied_encryption_enforcement_config\032\200\002\n" + "\tIamConfig\022f\n" + "\033uniform_bucket_level_access\030\001" + " \001(\0132<.google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccessB\003\340A\001\022%\n" @@ -860,13 +910,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\tlock_time\030\002" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\001\032\252\006\n" + "\tLifecycle\022;\n" - + "\004rule\030\001 \003(\0132(.google.storage.v2.Bucket.Lifecycl", - "e.RuleB\003\340A\001\032\337\005\n" + + "\004rule\030\001 \003(" + + "\0132(.google.storage.v2.Bucket.Lifecycle.RuleB\003\340A\001\032\337\005\n" + "\004Rule\022D\n" - + "\006action\030\001 \001(\0132/.g" - + "oogle.storage.v2.Bucket.Lifecycle.Rule.ActionB\003\340A\001\022J\n" - + "\tcondition\030\002 \001(\01322.google.s" - + "torage.v2.Bucket.Lifecycle.Rule.ConditionB\003\340A\001\0327\n" + + "\006action\030\001 \001(\0132/.goog" + + "le.storage.v2.Bucket.Lifecycle.Rule.ActionB\003\340A\001\022J\n" + + "\tcondition\030\002 \001(\01322.google.stor" + + "age.v2.Bucket.Lifecycle.Rule.ConditionB\003\340A\001\0327\n" + "\006Action\022\021\n" + "\004type\030\001 \001(\tB\003\340A\001\022\032\n\r" + "storage_class\030\002 \001(\tB\003\340A\001\032\213\004\n" @@ -888,9 +938,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\023_num_newer_versionsB\031\n" + "\027_days_since_custom_timeB\035\n" + "\033_days_since_noncurrent_time\032B\n" - + "\007Logging\022\027\n\n" + + "\007Logging\022\027\n" + + "\n" + "log_bucket\030\001 \001(\tB\003\340A\001\022\036\n" - + "\021log_object_prefix\030\002 \001(\tB\003\340A\001\032\236\001\n" + + "\021log_object_prefix\030\002 \001(\tB\003\340A\001\032*\n" + + "\017ObjectRetention\022\027\n" + + "\007enabled\030\001 \001(\010B\006\340A\001\340A\003\032\236\001\n" + "\017RetentionPolicy\0227\n" + "\016effective_time\030\001" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\001\022\026\n" @@ -918,14 +971,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\"terminal_storage_class_update_time\030\004" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003H\001\210\001\001B\031\n" + "\027_terminal_storage_classB%\n" - + "#_terminal_storage_class_update_time\032\255\003\n" + + "#_terminal_storage_class_update_time\032\375\003\n" + "\010IpFilter\022\021\n" + "\004mode\030\001 \001(\tH\000\210\001\001\022Z\n" - + "\025public_network_source\030\002 \001(\01326.google.storage.v2.Bu" - + "cket.IpFilter.PublicNetworkSourceH\001\210\001\001\022U\n" - + "\023vpc_network_sources\030\003 \003(\01323.google.sto" - + "rage.v2.Bucket.IpFilter.VpcNetworkSourceB\003\340A\001\022!\n" - + "\024allow_cross_org_vpcs\030\004 \001(\010B\003\340A\001\032:\n" + + "\025public_network_source\030\002 \001(\01326.google.storage.v2.B" + + "ucket.IpFilter.PublicNetworkSourceH\001\210\001\001\022U\n" + + "\023vpc_network_sources\030\003 \003(\01323.google.st" + + "orage.v2.Bucket.IpFilter.VpcNetworkSourceB\003\340A\001\022!\n" + + "\024allow_cross_org_vpcs\030\004 \001(\010B\003\340A\001\022+\n" + + "\036allow_all_service_agent_access\030\005 \001(\010H\002\210\001\001\032:\n" + "\023PublicNetworkSource\022#\n" + "\026allowed_ip_cidr_ranges\030\001 \003(\tB\003\340A\001\032Y\n" + "\020VpcNetworkSource\022\024\n" @@ -933,14 +987,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\026allowed_ip_cidr_ranges\030\002 \003(\tB\003\340A\001B\n\n" + "\010_networkB\007\n" + "\005_modeB\030\n" - + "\026_public_network_source\032-\n" + + "\026_public_network_sourceB!\n" + + "\037_allow_all_service_agent_access\032-\n" + "\025HierarchicalNamespace\022\024\n" + "\007enabled\030\001 \001(\010B\003\340A\001\032-\n" + "\013LabelsEntry\022\013\n" + "\003key\030\001 \001(\t\022\r\n" + "\005value\030\002 \001(\t:\0028\001:X\352AU\n" - + "\035storage.googleapis.com/Bucket\022#pr" - + "ojects/{project}/buckets/{bucket}*\007buckets2\006bucketB\014\n\n" + + "\035storage.googleapis.com/Bucket\022#p" + + "rojects/{project}/buckets/{bucket}*\007buckets2\006bucketB\014\n\n" + "_ip_filter\"\366\001\n" + "\023BucketAccessControl\022\021\n" + "\004role\030\001 \001(\tB\003\340A\001\022\017\n" @@ -1053,96 +1108,97 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\003end\030\002 \001(\003\022\027\n" + "\017complete_length\030\003 \001(\0032\237\037\n" + "\007Storage\022r\n" - + "\014DeleteBucket\022&." - + "google.storage.v2.DeleteBucketRequest\032\026.google.protobuf.Empty\"\"\332A\004name\212\323\344\223\002\025\022\023\n" + + "\014DeleteBucket\022&" + + ".google.storage.v2.DeleteBucketRequest\032\026.google.protobuf.Empty\"\"\332A\004name\212\323\344\223\002\025\022\023\n" + "\004name\022\013{bucket=**}\022o\n" - + "\tGetBucket\022#.google." - + "storage.v2.GetBucketRequest\032\031.google.storage.v2.Bucket\"\"\332A\004name\212\323\344\223\002\025\022\023\n" + + "\tGetBucket\022#.google" + + ".storage.v2.GetBucketRequest\032\031.google.storage.v2.Bucket\"\"\332A\004name\212\323\344\223\002\025\022\023\n" + "\004name\022\013{bucket=**}\022\253\001\n" - + "\014CreateBucket\022&.google.storage.v2.CreateBucketRequest\032\031.google.sto" - + "rage.v2.Bucket\"X\332A\027parent,bucket,bucket_id\212\323\344\223\0028\022\026\n" + + "\014CreateBucket\022&.google.storage.v2.CreateBucketRequest\032\031.google.st" + + "orage.v2.Bucket\"X\332A\027parent,bucket,bucket_id\212\323\344\223\0028\022\026\n" + "\006parent\022\014{project=**}\022\036\n" + "\016bucket.project\022\014{project=**}\022\205\001\n" - + "\013ListBuckets\022%.google.storage.v2.ListBucketsRequest\032" - + "&.google.storage.v2.ListBucketsResponse\"\'\332A\006parent\212\323\344\223\002\030\022\026\n" + + "\013ListBuckets\022%.google.storage.v2.ListBucketsRequest" + + "\032&.google.storage.v2.ListBucketsResponse\"\'\332A\006parent\212\323\344\223\002\030\022\026\n" + "\006parent\022\014{project=**}\022\223\001\n" - + "\031LockBucketRetentionPolicy\0223.google.storage.v2.LockBucketRetentionPolicyRequ" - + "est\032\031.google.storage.v2.Bucket\"&\332A\006bucket\212\323\344\223\002\027\022\025\n" + + "\031LockBucketRetentionPolicy\0223.google.storage.v2.LockBucketRetentionPolicyReq" + + "uest\032\031.google.storage.v2.Bucket\"&\332A\006bucket\212\323\344\223\002\027\022\025\n" + "\006bucket\022\013{bucket=**}\022\243\001\n" - + "\014GetIamPolicy\022\".google.iam.v1.GetIamPolicyRequ" - + "est\032\025.google.iam.v1.Policy\"X\332A\010resource\212\323\344\223\002G\022\027\n" + + "\014GetIamPolicy\022\".google.iam.v1.GetIamPolicyReq" + + "uest\032\025.google.iam.v1.Policy\"X\332A\010resource\212\323\344\223\002G\022\027\n" + "\010resource\022\013{bucket=**}\022,\n" + "\010resource\022 {bucket=projects/*/buckets/*}/**\022\252\001\n" - + "\014SetIamPolicy\022\".google.iam.v1.SetIamPoli" - + "cyRequest\032\025.google.iam.v1.Policy\"_\332A\017resource,policy\212\323\344\223\002G\022\027\n" + + "\014SetIamPolicy\022\".google.iam.v1.SetIamPol" + + "icyRequest\032\025.google.iam.v1.Policy\"_\332A\017resource,policy\212\323\344\223\002G\022\027\n" + "\010resource\022\013{bucket=**}\022,\n" + "\010resource\022 {bucket=projects/*/buckets/*}/**\022\226\002\n" - + "\022TestIamPermissions\022(.google.iam.v1.TestIamPermissionsRequest\032).goo" - + "gle.iam.v1.TestIamPermissionsResponse\"\252\001\332A\024resource,permissions\212\323\344\223\002\214\001\022\027\n" + + "\022TestIamPermissions\022(.google.iam.v1.TestIamPermissionsRequest\032).go" + + "ogle.iam.v1.TestIamPermissionsResponse\"\252\001\332A\024resource,permissions\212\323\344\223\002\214\001\022\027\n" + "\010resource\022\013{bucket=**}\0224\n" + "\010resource\022({bucket=projects/*/buckets/*}/objects/**\022;\n" + "\010resource\022/{bucket=projects/*/buckets/*}/managedFolders/**\022\212\001\n" - + "\014UpdateBucket\022&.google.storage.v2.UpdateBucketRequest\032\031.google.sto" - + "rage.v2.Bucket\"7\332A\022bucket,update_mask\212\323\344\223\002\034\022\032\n" + + "\014UpdateBucket\022&.google.storage.v2.UpdateBucketRequest\032\031.google.st" + + "orage.v2.Bucket\"7\332A\022bucket,update_mask\212\323\344\223\002\034\022\032\n" + "\013bucket.name\022\013{bucket=**}\022~\n\r" - + "ComposeObject\022\'.google.storage.v2.ComposeObje" - + "ctRequest\032\031.google.storage.v2.Object\")\212\323\344\223\002#\022!\n" + + "ComposeObject\022\'.google.storage.v2.ComposeObj" + + "ectRequest\032\031.google.storage.v2.Object\")\212\323\344\223\002#\022!\n" + "\022destination.bucket\022\013{bucket=**}\022\230\001\n" - + "\014DeleteObject\022&.google.storage.v2.Del" - + "eteObjectRequest\032\026.google.protobuf.Empty\"H\332A\r" + + "\014DeleteObject\022&.google.storage.v2.De" + + "leteObjectRequest\032\026.google.protobuf.Empty\"H\332A\r" + "bucket,object\332A\030bucket,object,generation\212\323\344\223\002\027\022\025\n" + "\006bucket\022\013{bucket=**}\022\215\001\n\r" - + "RestoreObject\022\'.google.storage.v2.Restore" - + "ObjectRequest\032\031.google.storage.v2.Object\"8\332A\030bucket,object,generation\212\323\344\223\002\027\022\025\n" + + "RestoreObject\022\'.google.storage.v2.Restor" + + "eObjectRequest\032\031.google.storage.v2.Object\"8\332A\030bucket,object,generation\212\323\344\223\002\027\022\025\n" + "\006bucket\022\013{bucket=**}\022\272\001\n" - + "\024CancelResumableWrite\022..google.storage.v2.CancelResumableW" - + "riteRequest\032/.google.storage.v2.CancelResumableWriteResponse\"A\332A" + + "\024CancelResumableWrite\022..google.storage.v2.CancelResumable" + + "WriteRequest\032/.google.storage.v2.CancelResumableWriteResponse\"A\332A" + "\tupload_id\212\323\344\223\002/\022-\n" + "\tupload_id\022 {bucket=projects/*/buckets/*}/**\022\225\001\n" - + "\tGetObject\022#.google.storage.v" - + "2.GetObjectRequest\032\031.google.storage.v2.Object\"H\332A\r" + + "\tGetObject\022#.google.storage." + + "v2.GetObjectRequest\032\031.google.storage.v2.Object\"H\332A\r" + "bucket,object\332A\030bucket,object,generation\212\323\344\223\002\027\022\025\n" + "\006bucket\022\013{bucket=**}\022\245\001\n\n" - + "ReadObject\022$.google.storage.v2.ReadO" - + "bjectRequest\032%.google.storage.v2.ReadObjectResponse\"H\332A\r" + + "ReadObject\022$.google.storage.v2.Read" + + "ObjectRequest\032%.google.storage.v2.ReadObjectResponse\"H\332A\r" + "bucket,object\332A\030bucket,object,generation\212\323\344\223\002\027\022\025\n" + "\006bucket\022\013{bucket=**}0\001\022\231\001\n" - + "\016BidiReadObject\022(.google.storage.v2.BidiReadObjectRequest\032).google.st" - + "orage.v2.BidiReadObjectResponse\".\212\323\344\223\002(\022&\n" + + "\016BidiReadObject\022(.google.storage.v2.BidiReadObjectRequest\032).google.s" + + "torage.v2.BidiReadObjectResponse\".\212\323\344\223\002(\022&\n" + "\027read_object_spec.bucket\022\013{bucket=**}(\0010\001\022\214\001\n" - + "\014UpdateObject\022&.google.storage.v2" - + ".UpdateObjectRequest\032\031.google.storage.v2.Object\"9\332A\022object,update_mask\212\323\344\223\002\036\022\034\n\r" + + "\014UpdateObject\022&.google.storage.v" + + "2.UpdateObjectRequest\032\031.google.storage.v2.Object\"9\332A\022object,update_mask\212\323\344\223\002\036\022\034\n" + + "\r" + "object.bucket\022\013{bucket=**}\022`\n" - + "\013WriteObject\022%.google.storage.v2.WriteObjectRequest" - + "\032&.google.storage.v2.WriteObjectResponse\"\000(\001\022n\n" - + "\017BidiWriteObject\022).google.storage" - + ".v2.BidiWriteObjectRequest\032*.google.storage.v2.BidiWriteObjectResponse\"\000(\0010\001\022\204\001\n" - + "\013ListObjects\022%.google.storage.v2.ListObj" - + "ectsRequest\032&.google.storage.v2.ListObjectsResponse\"&\332A\006parent\212\323\344\223\002\027\022\025\n" + + "\013WriteObject\022%.google.storage.v2.WriteObjectReques" + + "t\032&.google.storage.v2.WriteObjectResponse\"\000(\001\022n\n" + + "\017BidiWriteObject\022).google.storage.v2.BidiWriteObjectRequest\032*.google.sto" + + "rage.v2.BidiWriteObjectResponse\"\000(\0010\001\022\204\001\n" + + "\013ListObjects\022%.google.storage.v2.ListOb" + + "jectsRequest\032&.google.storage.v2.ListObjectsResponse\"&\332A\006parent\212\323\344\223\002\027\022\025\n" + "\006parent\022\013{bucket=**}\022\230\001\n\r" - + "RewriteObject\022\'.google.s" - + "torage.v2.RewriteObjectRequest\032\".google.storage.v2.RewriteResponse\":\212\323\344\223\0024\022\017\n\r" + + "RewriteObject\022\'.google." + + "storage.v2.RewriteObjectRequest\032\".google.storage.v2.RewriteResponse\":\212\323\344\223\0024\022\017\n\r" + "source_bucket\022!\n" + "\022destination_bucket\022\013{bucket=**}\022\256\001\n" - + "\023StartResumableWrite\022-.google.storage.v2.StartResumableWriteRequest\032.." - + "google.storage.v2.StartResumableWriteResponse\"8\212\323\344\223\0022\0220\n" + + "\023StartResumableWrite\022-.google.storage.v2.StartResumableWriteRequest\032." + + ".google.storage.v2.StartResumableWriteResponse\"8\212\323\344\223\0022\0220\n" + "!write_object_spec.resource.bucket\022\013{bucket=**}\022\256\001\n" - + "\020QueryWriteStatus\022*.google.storage.v2.QueryWriteStatu" - + "sRequest\032+.google.storage.v2.QueryWriteStatusResponse\"A\332A" + + "\020QueryWriteStatus\022*.google.storage.v2.QueryWriteStat" + + "usRequest\032+.google.storage.v2.QueryWriteStatusResponse\"A\332A" + "\tupload_id\212\323\344\223\002/\022-\n" + "\tupload_id\022 {bucket=projects/*/buckets/*}/**\022\226\001\n\n" - + "MoveObject\022$.google.storage.v2.MoveObjectRequest\032\031.google.storage.v2.Object" - + "\"G\332A\'bucket,source_object,destination_object\212\323\344\223\002\027\022\025\n" - + "\006bucket\022\013{bucket=**}\032\247\002\312A\026s" - + "torage.googleapis.com\322A\212\002https://www.goo" - + "gleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.r" - + "ead-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.goo" - + "gleapis.com/auth/devstorage.read_only,ht" - + "tps://www.googleapis.com/auth/devstorage.read_writeB\342\001\n" - + "\025com.google.storage.v2B\014StorageProtoP\001Z>cloud.google.com/go/stora" - + "ge/internal/apiv2/storagepb;storagepb\352Ax\n" - + "!cloudkms.googleapis.com/CryptoKey\022Sprojects/{project}/locations/{location}/key" - + "Rings/{key_ring}/cryptoKeys/{crypto_key}b\006proto3" + + "MoveObject\022$.google.storage.v2.MoveObjectRequest\032\031.google.storage.v2.Objec" + + "t\"G\332A\'bucket,source_object,destination_object\212\323\344\223\002\027\022\025\n" + + "\006bucket\022\013{bucket=**}\032\247\002\312A\026" + + "storage.googleapis.com\322A\212\002https://www.go" + + "ogleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform." + + "read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.go" + + "ogleapis.com/auth/devstorage.read_only,h" + + "ttps://www.googleapis.com/auth/devstorage.read_writeB\342\001\n" + + "\025com.google.storage.v2B\014StorageProtoP\001Z>cloud.google.com/go/stor" + + "age/internal/apiv2/storagepb;storagepb\352Ax\n" + + "!cloudkms.googleapis.com/CryptoKey\022Sprojects/{project}/locations/{location}/ke" + + "yRings/{key_ring}/cryptoKeys/{crypto_key}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -1183,7 +1239,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_CreateBucketRequest_descriptor, new java.lang.String[] { - "Parent", "Bucket", "BucketId", "PredefinedAcl", "PredefinedDefaultObjectAcl", + "Parent", + "Bucket", + "BucketId", + "PredefinedAcl", + "PredefinedDefaultObjectAcl", + "EnableObjectRetention", }); internal_static_google_storage_v2_ListBucketsRequest_descriptor = getDescriptor().getMessageTypes().get(3); @@ -1645,6 +1706,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "PredefinedAcl", "UpdateMask", "CommonObjectRequestParams", + "OverrideUnlockedRetention", }); internal_static_google_storage_v2_CommonObjectRequestParams_descriptor = getDescriptor().getMessageTypes().get(41); @@ -1695,6 +1757,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Autoclass", "HierarchicalNamespace", "SoftDeletePolicy", + "ObjectRetention", "IpFilter", }); internal_static_google_storage_v2_Bucket_Billing_descriptor = @@ -1720,6 +1783,33 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { internal_static_google_storage_v2_Bucket_Encryption_descriptor, new java.lang.String[] { "DefaultKmsKey", + "GoogleManagedEncryptionEnforcementConfig", + "CustomerManagedEncryptionEnforcementConfig", + "CustomerSuppliedEncryptionEnforcementConfig", + }); + internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_descriptor = + internal_static_google_storage_v2_Bucket_Encryption_descriptor.getNestedTypes().get(0); + internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_storage_v2_Bucket_Encryption_GoogleManagedEncryptionEnforcementConfig_descriptor, + new java.lang.String[] { + "Restricted", "EffectiveTime", + }); + internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_descriptor = + internal_static_google_storage_v2_Bucket_Encryption_descriptor.getNestedTypes().get(1); + internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_storage_v2_Bucket_Encryption_CustomerManagedEncryptionEnforcementConfig_descriptor, + new java.lang.String[] { + "Restricted", "EffectiveTime", + }); + internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_descriptor = + internal_static_google_storage_v2_Bucket_Encryption_descriptor.getNestedTypes().get(2); + internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_storage_v2_Bucket_Encryption_CustomerSuppliedEncryptionEnforcementConfig_descriptor, + new java.lang.String[] { + "Restricted", "EffectiveTime", }); internal_static_google_storage_v2_Bucket_IamConfig_descriptor = internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(3); @@ -1787,8 +1877,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "LogBucket", "LogObjectPrefix", }); - internal_static_google_storage_v2_Bucket_RetentionPolicy_descriptor = + internal_static_google_storage_v2_Bucket_ObjectRetention_descriptor = internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(6); + internal_static_google_storage_v2_Bucket_ObjectRetention_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_storage_v2_Bucket_ObjectRetention_descriptor, + new java.lang.String[] { + "Enabled", + }); + internal_static_google_storage_v2_Bucket_RetentionPolicy_descriptor = + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(7); internal_static_google_storage_v2_Bucket_RetentionPolicy_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_RetentionPolicy_descriptor, @@ -1796,7 +1894,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "EffectiveTime", "IsLocked", "RetentionDuration", }); internal_static_google_storage_v2_Bucket_SoftDeletePolicy_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(7); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(8); internal_static_google_storage_v2_Bucket_SoftDeletePolicy_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_SoftDeletePolicy_descriptor, @@ -1804,7 +1902,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "RetentionDuration", "EffectiveTime", }); internal_static_google_storage_v2_Bucket_Versioning_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(8); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(9); internal_static_google_storage_v2_Bucket_Versioning_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_Versioning_descriptor, @@ -1812,7 +1910,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Enabled", }); internal_static_google_storage_v2_Bucket_Website_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(9); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(10); internal_static_google_storage_v2_Bucket_Website_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_Website_descriptor, @@ -1820,7 +1918,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "MainPageSuffix", "NotFoundPage", }); internal_static_google_storage_v2_Bucket_CustomPlacementConfig_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(10); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(11); internal_static_google_storage_v2_Bucket_CustomPlacementConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_CustomPlacementConfig_descriptor, @@ -1828,7 +1926,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "DataLocations", }); internal_static_google_storage_v2_Bucket_Autoclass_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(11); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(12); internal_static_google_storage_v2_Bucket_Autoclass_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_Autoclass_descriptor, @@ -1836,12 +1934,16 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Enabled", "ToggleTime", "TerminalStorageClass", "TerminalStorageClassUpdateTime", }); internal_static_google_storage_v2_Bucket_IpFilter_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(12); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(13); internal_static_google_storage_v2_Bucket_IpFilter_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_IpFilter_descriptor, new java.lang.String[] { - "Mode", "PublicNetworkSource", "VpcNetworkSources", "AllowCrossOrgVpcs", + "Mode", + "PublicNetworkSource", + "VpcNetworkSources", + "AllowCrossOrgVpcs", + "AllowAllServiceAgentAccess", }); internal_static_google_storage_v2_Bucket_IpFilter_PublicNetworkSource_descriptor = internal_static_google_storage_v2_Bucket_IpFilter_descriptor.getNestedTypes().get(0); @@ -1860,7 +1962,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Network", "AllowedIpCidrRanges", }); internal_static_google_storage_v2_Bucket_HierarchicalNamespace_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(13); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(14); internal_static_google_storage_v2_Bucket_HierarchicalNamespace_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_HierarchicalNamespace_descriptor, @@ -1868,7 +1970,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Enabled", }); internal_static_google_storage_v2_Bucket_LabelsEntry_descriptor = - internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(14); + internal_static_google_storage_v2_Bucket_descriptor.getNestedTypes().get(15); internal_static_google_storage_v2_Bucket_LabelsEntry_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_LabelsEntry_descriptor, diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequest.java index f1d547e6b5..fa91ddf16a 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequestOrBuilder.java index 1ea505781a..602130478b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateBucketRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface UpdateBucketRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequest.java index 3e84ce4552..1f53e8690c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** @@ -473,6 +473,25 @@ public com.google.storage.v2.CommonObjectRequestParams getCommonObjectRequestPar : commonObjectRequestParams_; } + public static final int OVERRIDE_UNLOCKED_RETENTION_FIELD_NUMBER = 11; + private boolean overrideUnlockedRetention_ = false; + + /** + * + * + *
+   * Optional. Overrides the unlocked retention config on the object.
+   * 
+ * + * bool override_unlocked_retention = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The overrideUnlockedRetention. + */ + @java.lang.Override + public boolean getOverrideUnlockedRetention() { + return overrideUnlockedRetention_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -511,6 +530,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predefinedAcl_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 10, predefinedAcl_); } + if (overrideUnlockedRetention_ != false) { + output.writeBool(11, overrideUnlockedRetention_); + } getUnknownFields().writeTo(output); } @@ -546,6 +568,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predefinedAcl_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, predefinedAcl_); } + if (overrideUnlockedRetention_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(11, overrideUnlockedRetention_); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -592,6 +617,7 @@ public boolean equals(final java.lang.Object obj) { if (!getCommonObjectRequestParams().equals(other.getCommonObjectRequestParams())) return false; } + if (getOverrideUnlockedRetention() != other.getOverrideUnlockedRetention()) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -633,6 +659,8 @@ public int hashCode() { hash = (37 * hash) + COMMON_OBJECT_REQUEST_PARAMS_FIELD_NUMBER; hash = (53 * hash) + getCommonObjectRequestParams().hashCode(); } + hash = (37 * hash) + OVERRIDE_UNLOCKED_RETENTION_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getOverrideUnlockedRetention()); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -804,6 +832,7 @@ public Builder clear() { commonObjectRequestParamsBuilder_.dispose(); commonObjectRequestParamsBuilder_ = null; } + overrideUnlockedRetention_ = false; return this; } @@ -875,6 +904,9 @@ private void buildPartial0(com.google.storage.v2.UpdateObjectRequest result) { : commonObjectRequestParamsBuilder_.build(); to_bitField0_ |= 0x00000040; } + if (((from_bitField0_ & 0x00000100) != 0)) { + result.overrideUnlockedRetention_ = overrideUnlockedRetention_; + } result.bitField0_ |= to_bitField0_; } @@ -949,6 +981,9 @@ public Builder mergeFrom(com.google.storage.v2.UpdateObjectRequest other) { if (other.hasCommonObjectRequestParams()) { mergeCommonObjectRequestParams(other.getCommonObjectRequestParams()); } + if (other.getOverrideUnlockedRetention() != false) { + setOverrideUnlockedRetention(other.getOverrideUnlockedRetention()); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -1024,6 +1059,12 @@ public Builder mergeFrom( bitField0_ |= 0x00000020; break; } // case 82 + case 88: + { + overrideUnlockedRetention_ = input.readBool(); + bitField0_ |= 0x00000100; + break; + } // case 88 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2199,6 +2240,62 @@ public Builder clearCommonObjectRequestParams() { return commonObjectRequestParamsBuilder_; } + private boolean overrideUnlockedRetention_; + + /** + * + * + *
+     * Optional. Overrides the unlocked retention config on the object.
+     * 
+ * + * bool override_unlocked_retention = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The overrideUnlockedRetention. + */ + @java.lang.Override + public boolean getOverrideUnlockedRetention() { + return overrideUnlockedRetention_; + } + + /** + * + * + *
+     * Optional. Overrides the unlocked retention config on the object.
+     * 
+ * + * bool override_unlocked_retention = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The overrideUnlockedRetention to set. + * @return This builder for chaining. + */ + public Builder setOverrideUnlockedRetention(boolean value) { + + overrideUnlockedRetention_ = value; + bitField0_ |= 0x00000100; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. Overrides the unlocked retention config on the object.
+     * 
+ * + * bool override_unlocked_retention = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearOverrideUnlockedRetention() { + bitField0_ = (bitField0_ & ~0x00000100); + overrideUnlockedRetention_ = false; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequestOrBuilder.java index fd7c505ac9..9a78998a09 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface UpdateObjectRequestOrBuilder @@ -327,4 +327,17 @@ public interface UpdateObjectRequestOrBuilder * */ com.google.storage.v2.CommonObjectRequestParamsOrBuilder getCommonObjectRequestParamsOrBuilder(); + + /** + * + * + *
+   * Optional. Overrides the unlocked retention config on the object.
+   * 
+ * + * bool override_unlocked_retention = 11 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The overrideUnlockedRetention. + */ + boolean getOverrideUnlockedRetention(); } diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequest.java index 0abe243af7..8e6c29b413 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequest.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequestOrBuilder.java index 1850e2c0ea..08203ad7eb 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectRequestOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface WriteObjectRequestOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponse.java index 358d473d34..416e19649c 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponse.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponse.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponseOrBuilder.java index f4cef7cc9a..de65c68f81 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponseOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectResponseOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface WriteObjectResponseOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java index e53d319c84..eec27356f2 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; /** diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java index e7de8f4c8a..edc6a42180 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java @@ -16,7 +16,7 @@ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: google/storage/v2/storage.proto -// Protobuf Java Version: 3.25.5 +// Protobuf Java Version: 3.25.8 package com.google.storage.v2; public interface WriteObjectSpecOrBuilder diff --git a/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto b/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto index f17ad6ad95..7641de2f7a 100644 --- a/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto +++ b/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto @@ -560,6 +560,9 @@ message CreateBucketRequest { // "bucketOwnerRead", "private", "projectPrivate", or "publicRead". string predefined_default_object_acl = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, enable object retention on the bucket. + bool enable_object_retention = 9 [(google.api.field_behavior) = OPTIONAL]; } // Request message for ListBuckets. @@ -1845,6 +1848,10 @@ message UpdateObjectRequest { // object. CommonObjectRequestParams common_object_request_params = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Overrides the unlocked retention config on the object. + bool override_unlocked_retention = 11 + [(google.api.field_behavior) = OPTIONAL]; } // Parameters that can be passed to any object request. @@ -1991,6 +1998,45 @@ message Bucket { // Encryption properties of a bucket. message Encryption { + // Google Managed Encryption (GMEK) enforcement config of a bucket. + message GoogleManagedEncryptionEnforcementConfig { + // Whether Google Managed Encryption (GMEK) is restricted for new + // objects within the bucket. + // If true, new objects can't be created using GMEK encryption. + // If false or unset, creation of new objects with GMEK encryption is + // allowed. + optional bool restricted = 1; + + // Time from which the config was effective. This is service-provided. + optional google.protobuf.Timestamp effective_time = 2; + } + + // Customer Managed Encryption (CMEK) enforcement config of a bucket. + message CustomerManagedEncryptionEnforcementConfig { + // Whether Customer Managed Encryption (CMEK) is restricted for new + // objects within the bucket. + // If true, new objects can't be created using CMEK encryption. + // If false or unset, creation of new objects with CMEK encryption is + // allowed. + optional bool restricted = 1; + + // Time from which the config was effective. This is service-provided. + optional google.protobuf.Timestamp effective_time = 2; + } + + // Customer Supplied Encryption (CSEK) enforcement config of a bucket. + message CustomerSuppliedEncryptionEnforcementConfig { + // Whether Customer Supplied Encryption (CSEK) is restricted for new + // objects within the bucket. + // If true, new objects can't be created using CSEK encryption. + // If false or unset, creation of new objects with CSEK encryption is + // allowed. + optional bool restricted = 1; + + // Time from which the config was effective. This is service-provided. + optional google.protobuf.Timestamp effective_time = 2; + } + // Optional. The name of the Cloud KMS key that will be used to encrypt // objects inserted into this bucket, if no encryption method is specified. string default_kms_key = 1 [ @@ -1999,6 +2045,30 @@ message Bucket { type: "cloudkms.googleapis.com/CryptoKey" } ]; + + // Optional. If omitted, then new objects with GMEK encryption-type is + // allowed. If set, then new objects created in this bucket must comply with + // enforcement config. Changing this has no effect on existing objects; it + // applies to new objects only. + optional GoogleManagedEncryptionEnforcementConfig + google_managed_encryption_enforcement_config = 2 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If omitted, then new objects with CMEK encryption-type is + // allowed. If set, then new objects created in this bucket must comply with + // enforcement config. Changing this has no effect on existing objects; it + // applies to new objects only. + optional CustomerManagedEncryptionEnforcementConfig + customer_managed_encryption_enforcement_config = 3 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If omitted, then new objects with CSEK encryption-type is + // allowed. If set, then new objects created in this bucket must comply with + // enforcement config. Changing this has no effect on existing objects; it + // applies to new objects only. + optional CustomerSuppliedEncryptionEnforcementConfig + customer_supplied_encryption_enforcement_config = 4 + [(google.api.field_behavior) = OPTIONAL]; } // Bucket restriction options. @@ -2132,6 +2202,16 @@ message Bucket { string log_object_prefix = 2 [(google.api.field_behavior) = OPTIONAL]; } + // Object Retention related properties of a bucket. + message ObjectRetention { + // Optional. Output only. If true, object retention is enabled for the + // bucket. + bool enabled = 1 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + } + // Retention policy properties of a bucket. message RetentionPolicy { // Optional. Server-determined value that indicates the time from which @@ -2190,7 +2270,7 @@ message Bucket { // Configuration for Custom Dual Regions. It should specify precisely two // eligible regions within the same Multiregion. More information on regions - // may be found [https://cloud.google.com/storage/docs/locations][here]. + // may be found [here](https://cloud.google.com/storage/docs/locations). message CustomPlacementConfig { // Optional. List of locations to use for data placement. repeated string data_locations = 1 [(google.api.field_behavior) = OPTIONAL]; @@ -2271,6 +2351,10 @@ message Bucket { // VPC network source will be checked to belong to the same org as the // bucket as well as validated for existence. bool allow_cross_org_vpcs = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Whether or not to allow all P4SA access to the bucket. When set to true, + // IP filter config validation will not apply. + optional bool allow_all_service_agent_access = 5; } // Configuration for a bucket's hierarchical namespace feature. @@ -2445,6 +2529,11 @@ message Bucket { SoftDeletePolicy soft_delete_policy = 31 [(google.api.field_behavior) = OPTIONAL]; + // Optional. The bucket's object retention configuration. Must be enabled + // before objects in the bucket may have retention configured. + ObjectRetention object_retention = 33 + [(google.api.field_behavior) = OPTIONAL]; + // Optional. The bucket's IP filter configuration. optional IpFilter ip_filter = 38 [(google.api.field_behavior) = OPTIONAL]; } diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 5c845a05fc..60fb4ba291 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -30,12 +30,12 @@ com.google.cloud google-cloud-storage - 2.52.3 + 2.53.0 com.google.cloud google-cloud-storage-control - 2.52.3 + 2.53.0 @@ -66,19 +66,19 @@ com.google.cloud google-cloud-pubsub - 1.139.4 + 1.140.1 test com.google.cloud google-cloud-kms - 2.66.0 + 2.67.0 test com.google.cloud google-cloud-storage - 2.52.3 + 2.53.0 tests test @@ -113,7 +113,7 @@ org.codehaus.mojo build-helper-maven-plugin - 3.6.0 + 3.6.1 add-snippets-source diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index b3728af81f..ae7c61a6c3 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,12 +28,12 @@ com.google.cloud google-cloud-storage - 2.53.0 + 2.53.1 com.google.cloud google-cloud-storage-control - 2.53.0 + 2.53.1 compile @@ -58,19 +58,19 @@ com.google.cloud google-cloud-pubsub - 1.139.4 + 1.140.1 test com.google.cloud google-cloud-kms - 2.66.0 + 2.67.0 test com.google.cloud google-cloud-storage - 2.53.0 + 2.53.1 tests test @@ -105,7 +105,7 @@ org.codehaus.mojo build-helper-maven-plugin - 3.6.0 + 3.6.1 add-snippets-source diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 36cb3d3e10..46409d12fc 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -31,7 +31,7 @@ com.google.cloud libraries-bom - 26.61.0 + 26.62.0 pom import @@ -76,13 +76,13 @@ com.google.cloud google-cloud-pubsub - 1.139.4 + 1.140.1 test com.google.cloud google-cloud-kms - 2.66.0 + 2.67.0 test @@ -99,7 +99,7 @@ com.google.cloud google-cloud-storage - 2.52.3 + 2.53.0 tests test diff --git a/storage-shared-benchmarking/pom.xml b/storage-shared-benchmarking/pom.xml index 74cabe170a..59caffd054 100644 --- a/storage-shared-benchmarking/pom.xml +++ b/storage-shared-benchmarking/pom.xml @@ -10,7 +10,7 @@ com.google.cloud google-cloud-storage-parent - 2.53.0 + 2.53.1 @@ -31,7 +31,7 @@ com.google.cloud google-cloud-storage - 2.53.0 + 2.53.1 tests diff --git a/versions.txt b/versions.txt index eadde9978d..71478f9e9f 100644 --- a/versions.txt +++ b/versions.txt @@ -1,10 +1,10 @@ # Format: # module:released-version:current-version -google-cloud-storage:2.53.0:2.53.0 -gapic-google-cloud-storage-v2:2.53.0:2.53.0 -grpc-google-cloud-storage-v2:2.53.0:2.53.0 -proto-google-cloud-storage-v2:2.53.0:2.53.0 -google-cloud-storage-control:2.53.0:2.53.0 -proto-google-cloud-storage-control-v2:2.53.0:2.53.0 -grpc-google-cloud-storage-control-v2:2.53.0:2.53.0 +google-cloud-storage:2.53.1:2.53.1 +gapic-google-cloud-storage-v2:2.53.1:2.53.1 +grpc-google-cloud-storage-v2:2.53.1:2.53.1 +proto-google-cloud-storage-v2:2.53.1:2.53.1 +google-cloud-storage-control:2.53.1:2.53.1 +proto-google-cloud-storage-control-v2:2.53.1:2.53.1 +grpc-google-cloud-storage-control-v2:2.53.1:2.53.1