diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index cb086cb986..b75ed7afad 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -37,7 +37,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} - - uses: googleapis/sdk-platform-java/.github/scripts@v2.67.0 + - uses: googleapis/sdk-platform-java/.github/scripts@v2.68.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} diff --git a/README.md b/README.md index 4d718dab1d..821583f400 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ If you are using Maven without the BOM, add this to your dependencies: If you are using Gradle 5.x or later, add this to your dependencies: ```Groovy -implementation platform('com.google.cloud:libraries-bom:26.77.0') +implementation platform('com.google.cloud:libraries-bom:26.78.0') implementation 'com.google.cloud:google-cloud-bigtable' ``` diff --git a/generation_config.yaml b/generation_config.yaml index 4f0e0f883e..f11a31c029 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,6 +1,6 @@ -gapic_generator_version: 2.67.0 -googleapis_commitish: 6f8a554039638f4a9ca78d5f0c964281a16f4166 -libraries_bom_version: 26.77.0 +gapic_generator_version: 2.68.0 +googleapis_commitish: 0b3dec847f1045e47991c1539d4c69d8b025cfe8 +libraries_bom_version: 26.78.0 template_excludes: - .gitignore - .kokoro/presubmit/integration.cfg diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStubSettings.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStubSettings.java index 04cf6391bd..86fa2b0ba9 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStubSettings.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableInstanceAdminStubSettings.java @@ -37,6 +37,7 @@ import com.google.api.gax.rpc.ApiCallContext; import com.google.api.gax.rpc.ApiClientHeaderProvider; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; import com.google.api.gax.rpc.OperationCallSettings; import com.google.api.gax.rpc.PageContext; import com.google.api.gax.rpc.PagedCallSettings; @@ -189,6 +190,7 @@ * } */ @Generated("by gapic-generator-java") +@SuppressWarnings("CanonicalDuration") public class BigtableInstanceAdminStubSettings extends StubSettings { /** The default scopes of the service. */ @@ -867,6 +869,14 @@ protected BigtableInstanceAdminStubSettings(Builder settingsBuilder) throws IOEx deleteMaterializedViewSettings = settingsBuilder.deleteMaterializedViewSettings().build(); } + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-bigtable") + .setRepository("googleapis/java-bigtable") + .build(); + } + /** Builder for BigtableInstanceAdminStubSettings. */ public static class Builder extends StubSettings.Builder { diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStubSettings.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStubSettings.java index 78583ca895..e4baf9f806 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStubSettings.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/stub/BigtableTableAdminStubSettings.java @@ -38,6 +38,7 @@ import com.google.api.gax.rpc.ApiCallContext; import com.google.api.gax.rpc.ApiClientHeaderProvider; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; import com.google.api.gax.rpc.OperationCallSettings; import com.google.api.gax.rpc.PageContext; import com.google.api.gax.rpc.PagedCallSettings; @@ -197,6 +198,7 @@ * } */ @Generated("by gapic-generator-java") +@SuppressWarnings("CanonicalDuration") public class BigtableTableAdminStubSettings extends StubSettings { /** The default scopes of the service. */ private static final ImmutableList DEFAULT_SERVICE_SCOPES = @@ -947,6 +949,14 @@ protected BigtableTableAdminStubSettings(Builder settingsBuilder) throws IOExcep deleteSchemaBundleSettings = settingsBuilder.deleteSchemaBundleSettings().build(); } + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-bigtable") + .setRepository("googleapis/java-bigtable") + .build(); + } + /** Builder for BigtableTableAdminStubSettings. */ public static class Builder extends StubSettings.Builder { diff --git a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java index 77f258767d..a411621176 100644 --- a/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java +++ b/google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/stub/BigtableStubSettings.java @@ -28,6 +28,7 @@ import com.google.api.gax.retrying.RetrySettings; import com.google.api.gax.rpc.ApiClientHeaderProvider; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; import com.google.api.gax.rpc.ServerStreamingCallSettings; import com.google.api.gax.rpc.StatusCode; import com.google.api.gax.rpc.StubSettings; @@ -260,6 +261,14 @@ protected BigtableStubSettings(Builder settingsBuilder) throws IOException { executeQuerySettings = settingsBuilder.executeQuerySettings().build(); } + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-bigtable") + .setRepository("googleapis/java-bigtable") + .build(); + } + /** Builder for BigtableStubSettings. */ public static class Builder extends StubSettings.Builder { private final ImmutableList> unaryMethodSettingsBuilders; diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java index caed2b904e..aeb1008982 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/Table.java @@ -2099,8 +2099,8 @@ public interface AutomatedBackupPolicyOrBuilder * * *
-     * Required. How long the automated backups should be retained. The only
-     * supported value at this time is 3 days.
+     * Required. How long the automated backups should be retained. Values must
+     * be at least 3 days and at most 90 days.
      * 
* * @@ -2115,8 +2115,8 @@ public interface AutomatedBackupPolicyOrBuilder * * *
-     * Required. How long the automated backups should be retained. The only
-     * supported value at this time is 3 days.
+     * Required. How long the automated backups should be retained. Values must
+     * be at least 3 days and at most 90 days.
      * 
* * @@ -2131,8 +2131,8 @@ public interface AutomatedBackupPolicyOrBuilder * * *
-     * Required. How long the automated backups should be retained. The only
-     * supported value at this time is 3 days.
+     * Required. How long the automated backups should be retained. Values must
+     * be at least 3 days and at most 90 days.
      * 
* * @@ -2145,12 +2145,11 @@ public interface AutomatedBackupPolicyOrBuilder * * *
-     * Required. How frequently automated backups should occur. The only
-     * supported value at this time is 24 hours.
+     * How frequently automated backups should occur. The only supported value
+     * at this time is 24 hours. An undefined frequency is treated as 24 hours.
      * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; * * @return Whether the frequency field is set. */ @@ -2160,12 +2159,11 @@ public interface AutomatedBackupPolicyOrBuilder * * *
-     * Required. How frequently automated backups should occur. The only
-     * supported value at this time is 24 hours.
+     * How frequently automated backups should occur. The only supported value
+     * at this time is 24 hours. An undefined frequency is treated as 24 hours.
      * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; * * @return The frequency. */ @@ -2175,14 +2173,91 @@ public interface AutomatedBackupPolicyOrBuilder * * *
-     * Required. How frequently automated backups should occur. The only
-     * supported value at this time is 24 hours.
+     * How frequently automated backups should occur. The only supported value
+     * at this time is 24 hours. An undefined frequency is treated as 24 hours.
      * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ com.google.protobuf.DurationOrBuilder getFrequencyOrBuilder(); + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return A list containing the locations. + */ + java.util.List getLocationsList(); + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The count of locations. + */ + int getLocationsCount(); + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the element to return. + * @return The locations at the given index. + */ + java.lang.String getLocations(int index); + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the value to return. + * @return The bytes of the locations at the given index. + */ + com.google.protobuf.ByteString getLocationsBytes(int index); } /** @@ -2215,7 +2290,9 @@ private AutomatedBackupPolicy(com.google.protobuf.GeneratedMessage.Builder bu super(builder); } - private AutomatedBackupPolicy() {} + private AutomatedBackupPolicy() { + locations_ = com.google.protobuf.LazyStringArrayList.emptyList(); + } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.google.bigtable.admin.v2.TableProto @@ -2240,8 +2317,8 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-     * Required. How long the automated backups should be retained. The only
-     * supported value at this time is 3 days.
+     * Required. How long the automated backups should be retained. Values must
+     * be at least 3 days and at most 90 days.
      * 
* * @@ -2259,8 +2336,8 @@ public boolean hasRetentionPeriod() { * * *
-     * Required. How long the automated backups should be retained. The only
-     * supported value at this time is 3 days.
+     * Required. How long the automated backups should be retained. Values must
+     * be at least 3 days and at most 90 days.
      * 
* * @@ -2280,8 +2357,8 @@ public com.google.protobuf.Duration getRetentionPeriod() { * * *
-     * Required. How long the automated backups should be retained. The only
-     * supported value at this time is 3 days.
+     * Required. How long the automated backups should be retained. Values must
+     * be at least 3 days and at most 90 days.
      * 
* * @@ -2302,12 +2379,11 @@ public com.google.protobuf.DurationOrBuilder getRetentionPeriodOrBuilder() { * * *
-     * Required. How frequently automated backups should occur. The only
-     * supported value at this time is 24 hours.
+     * How frequently automated backups should occur. The only supported value
+     * at this time is 24 hours. An undefined frequency is treated as 24 hours.
      * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; * * @return Whether the frequency field is set. */ @@ -2320,12 +2396,11 @@ public boolean hasFrequency() { * * *
-     * Required. How frequently automated backups should occur. The only
-     * supported value at this time is 24 hours.
+     * How frequently automated backups should occur. The only supported value
+     * at this time is 24 hours. An undefined frequency is treated as 24 hours.
      * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; * * @return The frequency. */ @@ -2338,18 +2413,109 @@ public com.google.protobuf.Duration getFrequency() { * * *
-     * Required. How frequently automated backups should occur. The only
-     * supported value at this time is 24 hours.
+     * How frequently automated backups should occur. The only supported value
+     * at this time is 24 hours. An undefined frequency is treated as 24 hours.
      * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ @java.lang.Override public com.google.protobuf.DurationOrBuilder getFrequencyOrBuilder() { return frequency_ == null ? com.google.protobuf.Duration.getDefaultInstance() : frequency_; } + public static final int LOCATIONS_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private com.google.protobuf.LazyStringArrayList locations_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return A list containing the locations. + */ + public com.google.protobuf.ProtocolStringList getLocationsList() { + return locations_; + } + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The count of locations. + */ + public int getLocationsCount() { + return locations_.size(); + } + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the element to return. + * @return The locations at the given index. + */ + public java.lang.String getLocations(int index) { + return locations_.get(index); + } + + /** + * + * + *
+     * Optional. A list of Cloud Bigtable zones where automated backups are
+     * allowed to be created. If empty, automated backups will be created in all
+     * zones of the instance. Locations are in the format
+     * `projects/{project}/locations/{zone}`.
+     * This field can only set for tables in Enterprise Plus instances.
+     * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the value to return. + * @return The bytes of the locations at the given index. + */ + public com.google.protobuf.ByteString getLocationsBytes(int index) { + return locations_.getByteString(index); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -2370,6 +2536,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (((bitField0_ & 0x00000002) != 0)) { output.writeMessage(2, getFrequency()); } + for (int i = 0; i < locations_.size(); i++) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, locations_.getRaw(i)); + } getUnknownFields().writeTo(output); } @@ -2385,6 +2554,14 @@ public int getSerializedSize() { if (((bitField0_ & 0x00000002) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getFrequency()); } + { + int dataSize = 0; + for (int i = 0; i < locations_.size(); i++) { + dataSize += computeStringSizeNoTag(locations_.getRaw(i)); + } + size += dataSize; + size += 1 * getLocationsList().size(); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -2409,6 +2586,7 @@ public boolean equals(final java.lang.Object obj) { if (hasFrequency()) { if (!getFrequency().equals(other.getFrequency())) return false; } + if (!getLocationsList().equals(other.getLocationsList())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @@ -2428,6 +2606,10 @@ public int hashCode() { hash = (37 * hash) + FREQUENCY_FIELD_NUMBER; hash = (53 * hash) + getFrequency().hashCode(); } + if (getLocationsCount() > 0) { + hash = (37 * hash) + LOCATIONS_FIELD_NUMBER; + hash = (53 * hash) + getLocationsList().hashCode(); + } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; @@ -2589,6 +2771,7 @@ public Builder clear() { frequencyBuilder_.dispose(); frequencyBuilder_ = null; } + locations_ = com.google.protobuf.LazyStringArrayList.emptyList(); return this; } @@ -2635,6 +2818,10 @@ private void buildPartial0(com.google.bigtable.admin.v2.Table.AutomatedBackupPol result.frequency_ = frequencyBuilder_ == null ? frequency_ : frequencyBuilder_.build(); to_bitField0_ |= 0x00000002; } + if (((from_bitField0_ & 0x00000004) != 0)) { + locations_.makeImmutable(); + result.locations_ = locations_; + } result.bitField0_ |= to_bitField0_; } @@ -2657,6 +2844,16 @@ public Builder mergeFrom(com.google.bigtable.admin.v2.Table.AutomatedBackupPolic if (other.hasFrequency()) { mergeFrequency(other.getFrequency()); } + if (!other.locations_.isEmpty()) { + if (locations_.isEmpty()) { + locations_ = other.locations_; + bitField0_ |= 0x00000004; + } else { + ensureLocationsIsMutable(); + locations_.addAll(other.locations_); + } + onChanged(); + } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -2697,6 +2894,13 @@ public Builder mergeFrom( bitField0_ |= 0x00000002; break; } // case 18 + case 26: + { + java.lang.String s = input.readStringRequireUtf8(); + ensureLocationsIsMutable(); + locations_.add(s); + break; + } // case 26 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -2727,8 +2931,8 @@ public Builder mergeFrom( * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2745,8 +2949,8 @@ public boolean hasRetentionPeriod() { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2769,8 +2973,8 @@ public com.google.protobuf.Duration getRetentionPeriod() { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2795,8 +2999,8 @@ public Builder setRetentionPeriod(com.google.protobuf.Duration value) { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2818,8 +3022,8 @@ public Builder setRetentionPeriod(com.google.protobuf.Duration.Builder builderFo * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2849,8 +3053,8 @@ public Builder mergeRetentionPeriod(com.google.protobuf.Duration value) { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2872,8 +3076,8 @@ public Builder clearRetentionPeriod() { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2890,8 +3094,8 @@ public com.google.protobuf.Duration.Builder getRetentionPeriodBuilder() { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2912,8 +3116,8 @@ public com.google.protobuf.DurationOrBuilder getRetentionPeriodOrBuilder() { * * *
-       * Required. How long the automated backups should be retained. The only
-       * supported value at this time is 3 days.
+       * Required. How long the automated backups should be retained. Values must
+       * be at least 3 days and at most 90 days.
        * 
* * @@ -2948,12 +3152,11 @@ public com.google.protobuf.DurationOrBuilder getRetentionPeriodOrBuilder() { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; * * @return Whether the frequency field is set. */ @@ -2965,12 +3168,11 @@ public boolean hasFrequency() { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; * * @return The frequency. */ @@ -2988,12 +3190,11 @@ public com.google.protobuf.Duration getFrequency() { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ public Builder setFrequency(com.google.protobuf.Duration value) { if (frequencyBuilder_ == null) { @@ -3013,12 +3214,11 @@ public Builder setFrequency(com.google.protobuf.Duration value) { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ public Builder setFrequency(com.google.protobuf.Duration.Builder builderForValue) { if (frequencyBuilder_ == null) { @@ -3035,12 +3235,11 @@ public Builder setFrequency(com.google.protobuf.Duration.Builder builderForValue * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ public Builder mergeFrequency(com.google.protobuf.Duration value) { if (frequencyBuilder_ == null) { @@ -3065,12 +3264,11 @@ public Builder mergeFrequency(com.google.protobuf.Duration value) { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ public Builder clearFrequency() { bitField0_ = (bitField0_ & ~0x00000002); @@ -3087,12 +3285,11 @@ public Builder clearFrequency() { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ public com.google.protobuf.Duration.Builder getFrequencyBuilder() { bitField0_ |= 0x00000002; @@ -3104,12 +3301,11 @@ public com.google.protobuf.Duration.Builder getFrequencyBuilder() { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ public com.google.protobuf.DurationOrBuilder getFrequencyOrBuilder() { if (frequencyBuilder_ != null) { @@ -3125,12 +3321,11 @@ public com.google.protobuf.DurationOrBuilder getFrequencyOrBuilder() { * * *
-       * Required. How frequently automated backups should occur. The only
-       * supported value at this time is 24 hours.
+       * How frequently automated backups should occur. The only supported value
+       * at this time is 24 hours. An undefined frequency is treated as 24 hours.
        * 
* - * .google.protobuf.Duration frequency = 2 [(.google.api.field_behavior) = REQUIRED]; - * + * .google.protobuf.Duration frequency = 2; */ private com.google.protobuf.SingleFieldBuilder< com.google.protobuf.Duration, @@ -3149,6 +3344,243 @@ public com.google.protobuf.DurationOrBuilder getFrequencyOrBuilder() { return frequencyBuilder_; } + private com.google.protobuf.LazyStringArrayList locations_ = + com.google.protobuf.LazyStringArrayList.emptyList(); + + private void ensureLocationsIsMutable() { + if (!locations_.isModifiable()) { + locations_ = new com.google.protobuf.LazyStringArrayList(locations_); + } + bitField0_ |= 0x00000004; + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return A list containing the locations. + */ + public com.google.protobuf.ProtocolStringList getLocationsList() { + locations_.makeImmutable(); + return locations_; + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return The count of locations. + */ + public int getLocationsCount() { + return locations_.size(); + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the element to return. + * @return The locations at the given index. + */ + public java.lang.String getLocations(int index) { + return locations_.get(index); + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index of the value to return. + * @return The bytes of the locations at the given index. + */ + public com.google.protobuf.ByteString getLocationsBytes(int index) { + return locations_.getByteString(index); + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param index The index to set the value at. + * @param value The locations to set. + * @return This builder for chaining. + */ + public Builder setLocations(int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocationsIsMutable(); + locations_.set(index, value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The locations to add. + * @return This builder for chaining. + */ + public Builder addLocations(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureLocationsIsMutable(); + locations_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param values The locations to add. + * @return This builder for chaining. + */ + public Builder addAllLocations(java.lang.Iterable values) { + ensureLocationsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll(values, locations_); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @return This builder for chaining. + */ + public Builder clearLocations() { + locations_ = com.google.protobuf.LazyStringArrayList.emptyList(); + bitField0_ = (bitField0_ & ~0x00000004); + ; + onChanged(); + return this; + } + + /** + * + * + *
+       * Optional. A list of Cloud Bigtable zones where automated backups are
+       * allowed to be created. If empty, automated backups will be created in all
+       * zones of the instance. Locations are in the format
+       * `projects/{project}/locations/{zone}`.
+       * This field can only set for tables in Enterprise Plus instances.
+       * 
+ * + * + * repeated string locations = 3 [(.google.api.field_behavior) = OPTIONAL, (.google.api.resource_reference) = { ... } + * + * + * @param value The bytes of the locations to add. + * @return This builder for chaining. + */ + public Builder addLocationsBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureLocationsIsMutable(); + locations_.add(value); + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + // @@protoc_insertion_point(builder_scope:google.bigtable.admin.v2.Table.AutomatedBackupPolicy) } diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java index c013ea2ed5..d25349332e 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java +++ b/proto-google-cloud-bigtable-admin-v2/src/main/java/com/google/bigtable/admin/v2/TableProto.java @@ -153,7 +153,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\013backup_info\030\002 \001(\0132$.google.bigtable.admin.v2.BackupInfoH\000B\r\n" + "\013source_info\"I\n" + "\022ChangeStreamConfig\0223\n" - + "\020retention_period\030\001 \001(\0132\031.google.protobuf.Duration\"\343\014\n" + + "\020retention_period\030\001 \001(\0132\031.google.protobuf.Duration\"\234\r\n" + "\005Table\022\014\n" + "\004name\030\001 \001(\t\022O\n" + "\016cluster_states\030\002" @@ -184,15 +184,17 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\023PLANNED_MAINTENANCE\020\002\022\031\n" + "\025UNPLANNED_MAINTENANCE\020\003\022\t\n" + "\005READY\020\004\022\024\n" - + "\020READY_OPTIMIZING\020\005\032\204\001\n" + + "\020READY_OPTIMIZING\020\005\032\275\001\n" + "\025AutomatedBackupPolicy\0228\n" + "\020retention_period\030\001" - + " \001(\0132\031.google.protobuf.DurationB\003\340A\002\0221\n" - + "\tfrequency\030\002 \001(\0132\031.google.protobuf.DurationB\003\340A\002\032b\n" + + " \001(\0132\031.google.protobuf.DurationB\003\340A\002\022,\n" + + "\tfrequency\030\002 \001(\0132\031.google.protobuf.Duration\022<\n" + + "\tlocations\030\003 \003(\tB)\340A\001\372A#\n" + + "!locations.googleapis.com/Location\032b\n" + "\022ClusterStatesEntry\022\013\n" + "\003key\030\001 \001(\t\022;\n" - + "\005value\030\002" - + " \001(\0132,.google.bigtable.admin.v2.Table.ClusterState:\0028\001\032]\n" + + "\005value\030\002 \001(" + + "\0132,.google.bigtable.admin.v2.Table.ClusterState:\0028\001\032]\n" + "\023ColumnFamiliesEntry\022\013\n" + "\003key\030\001 \001(\t\0225\n" + "\005value\030\002 \001(\0132&.google.bigtable.admin.v2.ColumnFamily:\0028\001\"I\n" @@ -206,13 +208,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\020REPLICATION_VIEW\020\003\022\023\n" + "\017ENCRYPTION_VIEW\020\005\022\010\n" + "\004FULL\020\004:_\352A\\\n" - + "\"bigtableadmin.googleapis.com/Table" - + "\0226projects/{project}/instances/{instance}/tables/{table}B\031\n" + + "\"bigtableadmin.goo" + + "gleapis.com/Table\0226projects/{project}/instances/{instance}/tables/{table}B\031\n" + "\027automated_backup_config\"\343\005\n" + "\016AuthorizedView\022\021\n" + "\004name\030\001 \001(\tB\003\340A\010\022J\n" - + "\013subset_view\030\002" - + " \001(\01323.google.bigtable.admin.v2.AuthorizedView.SubsetViewH\000\022\014\n" + + "\013subset_view\030\002 \001(\0132" + + "3.google.bigtable.admin.v2.AuthorizedView.SubsetViewH\000\022\014\n" + "\004etag\030\003 \001(\t\022\033\n" + "\023deletion_protection\030\004 \001(\010\032?\n\r" + "FamilySubsets\022\022\n\n" @@ -220,20 +222,20 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\022qualifier_prefixes\030\002 \003(\014\032\360\001\n\n" + "SubsetView\022\024\n" + "\014row_prefixes\030\001 \003(\014\022^\n" - + "\016family_subsets\030\002 \003(\0132F.google.bigtable.admin.v2.Author" - + "izedView.SubsetView.FamilySubsetsEntry\032l\n" + + "\016family_subsets\030\002 \003(\0132F.google.bigtabl" + + "e.admin.v2.AuthorizedView.SubsetView.FamilySubsetsEntry\032l\n" + "\022FamilySubsetsEntry\022\013\n" + "\003key\030\001 \001(\t\022E\n" - + "\005value\030\002" - + " \001(\01326.google.bigtable.admin.v2.AuthorizedView.FamilySubsets:\0028\001\"Q\n" + + "\005value\030\002 \001(\01326.google.bigta" + + "ble.admin.v2.AuthorizedView.FamilySubsets:\0028\001\"Q\n" + "\014ResponseView\022\035\n" + "\031RESPONSE_VIEW_UNSPECIFIED\020\000\022\r\n" + "\tNAME_ONLY\020\001\022\t\n" + "\005BASIC\020\002\022\010\n" + "\004FULL\020\003:\254\001\352A\250\001\n" - + "+bigtableadmin.googleapis.com/AuthorizedView\022Xprojects/{project}/instances/{insta" - + "nce}/tables/{table}/authorizedViews/{aut" - + "horized_view}*\017authorizedViews2\016authorizedViewB\021\n" + + "+bigtableadmin.googleapis.com/AuthorizedView\022Xprojects/{project}" + + "/instances/{instance}/tables/{table}/aut" + + "horizedViews/{authorized_view}*\017authorizedViews2\016authorizedViewB\021\n" + "\017authorized_view\"u\n" + "\014ColumnFamily\0221\n" + "\007gc_rule\030\001 \001(\0132 .google.bigtable.admin.v2.GcRule\0222\n\n" @@ -250,8 +252,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\005rules\030\001 \003(\0132 .google.bigtable.admin.v2.GcRuleB\006\n" + "\004rule\"\331\002\n" + "\016EncryptionInfo\022U\n" - + "\017encryption_type\030\003" - + " \001(\01627.google.bigtable.admin.v2.EncryptionInfo.EncryptionTypeB\003\340A\003\0222\n" + + "\017encryption_type\030\003 \001(\01627.google.b" + + "igtable.admin.v2.EncryptionInfo.EncryptionTypeB\003\340A\003\0222\n" + "\021encryption_status\030\004 \001(\0132\022.google.rpc.StatusB\003\340A\003\022I\n" + "\017kms_key_version\030\002 \001(\tB0\340A\003\372A*\n" + "(cloudkms.googleapis.com/CryptoKeyVersion\"q\n" @@ -266,15 +268,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\017data_size_bytes\030\003 \001(\003B\003\340A\003\0224\n" + "\013create_time\030\004 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022/\n" + "\013delete_time\030\005 \001(\0132\032.google.protobuf.Timestamp\022<\n" - + "\005state\030\006 \001(\0162(.google" - + ".bigtable.admin.v2.Snapshot.StateB\003\340A\003\022\023\n" + + "\005state\030\006" + + " \001(\0162(.google.bigtable.admin.v2.Snapshot.StateB\003\340A\003\022\023\n" + "\013description\030\007 \001(\t\"5\n" + "\005State\022\023\n" + "\017STATE_NOT_KNOWN\020\000\022\t\n" + "\005READY\020\001\022\014\n" + "\010CREATING\020\002:{\352Ax\n" - + "%bigtableadmin.googleapis.com/Snapshot\022Oprojects/{project}/instances/{instance}/" - + "clusters/{cluster}/snapshots/{snapshot}\"\371\005\n" + + "%bigtableadmin.googleapis.com/Snapshot\022Oprojects/{project}/inst" + + "ances/{instance}/clusters/{cluster}/snapshots/{snapshot}\"\371\005\n" + "\006Backup\022\014\n" + "\004name\030\001 \001(\t\022\034\n" + "\014source_table\030\002 \001(\tB\006\340A\005\340A\002\022\032\n\r" @@ -286,8 +288,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\010end_time\030\005" + " \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022\027\n\n" + "size_bytes\030\006 \001(\003B\003\340A\003\022:\n" - + "\005state\030\007 \001(\016" - + "2&.google.bigtable.admin.v2.Backup.StateB\003\340A\003\022F\n" + + "\005state\030\007" + + " \001(\0162&.google.bigtable.admin.v2.Backup.StateB\003\340A\003\022F\n" + "\017encryption_info\030\t" + " \001(\0132(.google.bigtable.admin.v2.EncryptionInfoB\003\340A\003\022@\n" + "\013backup_type\030\013 \001(\0162+.google.bigtable.admin.v2.Backup.BackupType\0228\n" @@ -300,8 +302,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\027BACKUP_TYPE_UNSPECIFIED\020\000\022\014\n" + "\010STANDARD\020\001\022\007\n" + "\003HOT\020\002:u\352Ar\n" - + "#bigtableadmin.googleapis.com/Backup\022Kprojects/{project}/instances/{in" - + "stance}/clusters/{cluster}/backups/{backup}\"\300\001\n\n" + + "#bigtableadmin.googleapis.com/Backup\022Kprojects/{proje" + + "ct}/instances/{instance}/clusters/{cluster}/backups/{backup}\"\300\001\n\n" + "BackupInfo\022\023\n" + "\006backup\030\001 \001(\tB\003\340A\003\0223\n\n" + "start_time\030\002 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0221\n" @@ -322,21 +324,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\014proto_schema\030\002" + " \001(\0132%.google.bigtable.admin.v2.ProtoSchemaH\000\022\021\n" + "\004etag\030\003 \001(\tB\003\340A\001:\242\001\352A\236\001\n" - + ")bigtableadmin.googleapis.com/SchemaBundle\022Tp" - + "rojects/{project}/instances/{instance}/tables/{table}/schemaBundles/{schema_bundle}*\r" + + ")bigtableadmin.googleapis.com/SchemaBundle\022Tprojects/{project}/insta" + + "nces/{instance}/tables/{table}/schemaBundles/{schema_bundle}*\r" + "schemaBundles2\014schemaBundleB\006\n" + "\004type*D\n" + "\021RestoreSourceType\022#\n" + "\037RESTORE_SOURCE_TYPE_UNSPECIFIED\020\000\022\n\n" + "\006BACKUP\020\001B\367\002\n" + "\034com.google.bigtable.admin.v2B\n" - + "TableProtoP\001Z8cloud.google.com/go/bigtable/admin/apiv2/" - + "adminpb;adminpb\252\002\036Google.Cloud.Bigtable." - + "Admin.V2\312\002\036Google\\Cloud\\Bigtable\\Admin\\V" - + "2\352\002\"Google::Cloud::Bigtable::Admin::V2\352A\246\001\n" - + "(cloudkms.googleapis.com/CryptoKeyVersion\022zprojects/{project}/locations/{loca" - + "tion}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_" - + "version}b\006proto3" + + "TableProtoP\001Z8cloud.google.com/go/bigt" + + "able/admin/apiv2/adminpb;adminpb\252\002\036Googl" + + "e.Cloud.Bigtable.Admin.V2\312\002\036Google\\Cloud" + + "\\Bigtable\\Admin\\V2\352\002\"Google::Cloud::Bigtable::Admin::V2\352A\246\001\n" + + "(cloudkms.googleapis.com/CryptoKeyVersion\022zprojects/{project" + + "}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVers" + + "ions/{crypto_key_version}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -396,7 +398,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_bigtable_admin_v2_Table_AutomatedBackupPolicy_descriptor, new java.lang.String[] { - "RetentionPeriod", "Frequency", + "RetentionPeriod", "Frequency", "Locations", }); internal_static_google_bigtable_admin_v2_Table_ClusterStatesEntry_descriptor = internal_static_google_bigtable_admin_v2_Table_descriptor.getNestedType(2); diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/common.proto b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/common.proto index 0d8c184ec0..0503e3f3c4 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/common.proto +++ b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/common.proto @@ -1,4 +1,4 @@ -// Copyright 2025 Google LLC +// Copyright 2026 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto index 4ce692f860..6da7f8b487 100644 --- a/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto +++ b/proto-google-cloud-bigtable-admin-v2/src/main/proto/google/bigtable/admin/v2/table.proto @@ -145,15 +145,26 @@ message Table { // Defines an automated backup policy for a table message AutomatedBackupPolicy { - // Required. How long the automated backups should be retained. The only - // supported value at this time is 3 days. + // Required. How long the automated backups should be retained. Values must + // be at least 3 days and at most 90 days. google.protobuf.Duration retention_period = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. How frequently automated backups should occur. The only - // supported value at this time is 24 hours. - google.protobuf.Duration frequency = 2 - [(google.api.field_behavior) = REQUIRED]; + // How frequently automated backups should occur. The only supported value + // at this time is 24 hours. An undefined frequency is treated as 24 hours. + google.protobuf.Duration frequency = 2; + + // Optional. A list of Cloud Bigtable zones where automated backups are + // allowed to be created. If empty, automated backups will be created in all + // zones of the instance. Locations are in the format + // `projects/{project}/locations/{zone}`. + // This field can only set for tables in Enterprise Plus instances. + repeated string locations = 3 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; } // The unique name of the table. Values are of the form