diff --git a/google/cloud/datastream/v1/datastream.proto b/google/cloud/datastream/v1/datastream.proto index cd9770794..bf0b13f5e 100644 --- a/google/cloud/datastream/v1/datastream.proto +++ b/google/cloud/datastream/v1/datastream.proto @@ -1,4 +1,4 @@ -// Copyright 2022 Google LLC +// Copyright 2023 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/datastream/v1/datastream_resources.proto"; import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; @@ -36,11 +37,13 @@ option ruby_package = "Google::Cloud::Datastream::V1"; // Datastream service service Datastream { option (google.api.default_host) = "datastream.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Use this method to list connection profiles created in a project and // location. - rpc ListConnectionProfiles(ListConnectionProfilesRequest) returns (ListConnectionProfilesResponse) { + rpc ListConnectionProfiles(ListConnectionProfilesRequest) + returns (ListConnectionProfilesResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/connectionProfiles" }; @@ -48,7 +51,8 @@ service Datastream { } // Use this method to get details about a connection profile. - rpc GetConnectionProfile(GetConnectionProfileRequest) returns (ConnectionProfile) { + rpc GetConnectionProfile(GetConnectionProfileRequest) + returns (ConnectionProfile) { option (google.api.http) = { get: "/v1/{name=projects/*/locations/*/connectionProfiles/*}" }; @@ -56,12 +60,14 @@ service Datastream { } // Use this method to create a connection profile in a project and location. - rpc CreateConnectionProfile(CreateConnectionProfileRequest) returns (google.longrunning.Operation) { + rpc CreateConnectionProfile(CreateConnectionProfileRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/connectionProfiles" body: "connection_profile" }; - option (google.api.method_signature) = "parent,connection_profile,connection_profile_id"; + option (google.api.method_signature) = + "parent,connection_profile,connection_profile_id"; option (google.longrunning.operation_info) = { response_type: "ConnectionProfile" metadata_type: "OperationMetadata" @@ -69,7 +75,8 @@ service Datastream { } // Use this method to update the parameters of a connection profile. - rpc UpdateConnectionProfile(UpdateConnectionProfileRequest) returns (google.longrunning.Operation) { + rpc UpdateConnectionProfile(UpdateConnectionProfileRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { patch: "/v1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}" body: "connection_profile" @@ -82,7 +89,8 @@ service Datastream { } // Use this method to delete a connection profile. - rpc DeleteConnectionProfile(DeleteConnectionProfileRequest) returns (google.longrunning.Operation) { + rpc DeleteConnectionProfile(DeleteConnectionProfileRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/connectionProfiles/*}" }; @@ -97,7 +105,8 @@ service Datastream { // The discover API call exposes the data objects and metadata belonging to // the profile. Typically, a request returns children data objects of a // parent data object that's optionally supplied in the request. - rpc DiscoverConnectionProfile(DiscoverConnectionProfileRequest) returns (DiscoverConnectionProfileResponse) { + rpc DiscoverConnectionProfile(DiscoverConnectionProfileRequest) + returns (DiscoverConnectionProfileResponse) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/connectionProfiles:discover" body: "*" @@ -175,7 +184,8 @@ service Datastream { } // Use this method to list the objects of a specific stream. - rpc ListStreamObjects(ListStreamObjectsRequest) returns (ListStreamObjectsResponse) { + rpc ListStreamObjects(ListStreamObjectsRequest) + returns (ListStreamObjectsResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*/streams/*}/objects" }; @@ -183,7 +193,8 @@ service Datastream { } // Use this method to start a backfill job for the specified stream object. - rpc StartBackfillJob(StartBackfillJobRequest) returns (StartBackfillJobResponse) { + rpc StartBackfillJob(StartBackfillJobRequest) + returns (StartBackfillJobResponse) { option (google.api.http) = { post: "/v1/{object=projects/*/locations/*/streams/*/objects/*}:startBackfillJob" body: "*" @@ -192,7 +203,8 @@ service Datastream { } // Use this method to stop a backfill job for the specified stream object. - rpc StopBackfillJob(StopBackfillJobRequest) returns (StopBackfillJobResponse) { + rpc StopBackfillJob(StopBackfillJobRequest) + returns (StopBackfillJobResponse) { option (google.api.http) = { post: "/v1/{object=projects/*/locations/*/streams/*/objects/*}:stopBackfillJob" body: "*" @@ -210,12 +222,14 @@ service Datastream { } // Use this method to create a private connectivity configuration. - rpc CreatePrivateConnection(CreatePrivateConnectionRequest) returns (google.longrunning.Operation) { + rpc CreatePrivateConnection(CreatePrivateConnectionRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/privateConnections" body: "private_connection" }; - option (google.api.method_signature) = "parent,private_connection,private_connection_id"; + option (google.api.method_signature) = + "parent,private_connection,private_connection_id"; option (google.longrunning.operation_info) = { response_type: "PrivateConnection" metadata_type: "OperationMetadata" @@ -223,7 +237,8 @@ service Datastream { } // Use this method to get details about a private connectivity configuration. - rpc GetPrivateConnection(GetPrivateConnectionRequest) returns (PrivateConnection) { + rpc GetPrivateConnection(GetPrivateConnectionRequest) + returns (PrivateConnection) { option (google.api.http) = { get: "/v1/{name=projects/*/locations/*/privateConnections/*}" }; @@ -232,7 +247,8 @@ service Datastream { // Use this method to list private connectivity configurations in a project // and location. - rpc ListPrivateConnections(ListPrivateConnectionsRequest) returns (ListPrivateConnectionsResponse) { + rpc ListPrivateConnections(ListPrivateConnectionsRequest) + returns (ListPrivateConnectionsResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/privateConnections" }; @@ -240,7 +256,8 @@ service Datastream { } // Use this method to delete a private connectivity configuration. - rpc DeletePrivateConnection(DeletePrivateConnectionRequest) returns (google.longrunning.Operation) { + rpc DeletePrivateConnection(DeletePrivateConnectionRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/privateConnections/*}" }; @@ -297,8 +314,8 @@ service Datastream { // Request message for 'discover' ConnectionProfile request. message DiscoverConnectionProfileRequest { - // Required. The parent resource of the connection profile type. Must be in the - // format `projects/*/locations/*`. + // Required. The parent resource of the connection profile type. Must be in + // the format `projects/*/locations/*`. string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -355,8 +372,8 @@ message DiscoverConnectionProfileResponse { // Request message for 'FetchStaticIps' request. message FetchStaticIpsRequest { - // Required. The resource name for the location for which static IPs should be returned. - // Must be in the format `projects/*/locations/*`. + // Required. The resource name for the location for which static IPs should be + // returned. Must be in the format `projects/*/locations/*`. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -449,7 +466,8 @@ message CreateConnectionProfileRequest { string connection_profile_id = 2 [(google.api.field_behavior) = REQUIRED]; // Required. The connection profile resource to create. - ConnectionProfile connection_profile = 3 [(google.api.field_behavior) = REQUIRED]; + ConnectionProfile connection_profile = 3 + [(google.api.field_behavior) = REQUIRED]; // Optional. A request ID to identify requests. Specify a unique request ID // so that if you must retry your request, the server will know to ignore @@ -466,8 +484,8 @@ message CreateConnectionProfileRequest { // not supported (00000000-0000-0000-0000-000000000000). string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Only validate the connection profile, but don't create any resources. - // The default is false. + // Optional. Only validate the connection profile, but don't create any + // resources. The default is false. bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; // Optional. Create the connection profile without validating it. @@ -481,10 +499,12 @@ message UpdateConnectionProfileRequest { // The fields specified in the update_mask are relative to the resource, not // the full request. A field will be overwritten if it is in the mask. If the // user does not provide a mask then all fields will be overwritten. - google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = OPTIONAL]; + google.protobuf.FieldMask update_mask = 1 + [(google.api.field_behavior) = OPTIONAL]; // Required. The connection profile to update. - ConnectionProfile connection_profile = 2 [(google.api.field_behavior) = REQUIRED]; + ConnectionProfile connection_profile = 2 + [(google.api.field_behavior) = REQUIRED]; // Optional. A request ID to identify requests. Specify a unique request ID // so that if you must retry your request, the server will know to ignore @@ -501,8 +521,8 @@ message UpdateConnectionProfileRequest { // not supported (00000000-0000-0000-0000-000000000000). string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Only validate the connection profile, but don't update any resources. - // The default is false. + // Optional. Only validate the connection profile, but don't update any + // resources. The default is false. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; // Optional. Update the connection profile without validating it. @@ -634,7 +654,8 @@ message UpdateStreamRequest { // The fields specified in the update_mask are relative to the resource, not // the full request. A field will be overwritten if it is in the mask. If the // user does not provide a mask then all fields will be overwritten. - google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = OPTIONAL]; + google.protobuf.FieldMask update_mask = 1 + [(google.api.field_behavior) = OPTIONAL]; // Required. The stream resource to update. Stream stream = 2 [(google.api.field_behavior) = REQUIRED]; @@ -654,8 +675,8 @@ message UpdateStreamRequest { // not supported (00000000-0000-0000-0000-000000000000). string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Only validate the stream with the changes, without actually updating it. - // The default is false. + // Optional. Only validate the stream with the changes, without actually + // updating it. The default is false. bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; // Optional. Update the stream without validating it. @@ -711,12 +732,14 @@ message LookupStreamObjectRequest { ]; // Required. The source object identifier which maps to the stream object. - SourceObjectIdentifier source_object_identifier = 2 [(google.api.field_behavior) = REQUIRED]; + SourceObjectIdentifier source_object_identifier = 2 + [(google.api.field_behavior) = REQUIRED]; } // Request for manually initiating a backfill job for a specific stream object. message StartBackfillJobRequest { - // Required. The name of the stream object resource to start a backfill job for. + // Required. The name of the stream object resource to start a backfill job + // for. string object = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -734,7 +757,8 @@ message StartBackfillJobResponse { // Request for manually stopping a running backfill job for a specific stream // object. message StopBackfillJobRequest { - // Required. The name of the stream object resource to stop the backfill job for. + // Required. The name of the stream object resource to stop the backfill job + // for. string object = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -784,10 +808,12 @@ message ListStreamObjectsResponse { // Represents the metadata of the long-running operation. message OperationMetadata { // Output only. The time the operation was created. - google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The time the operation finished running. - google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp end_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Server-defined resource path for the target of the operation. string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -800,15 +826,17 @@ message OperationMetadata { // Output only. Identifies whether the user has requested cancellation // of the operation. Operations that have successfully been cancelled - // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, - // corresponding to `Code.CANCELLED`. + // have [Operation.error][] value with a + // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to + // `Code.CANCELLED`. bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. API version used to start the operation. string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Results of executed validations if there are any. - ValidationResult validation_result = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + ValidationResult validation_result = 8 + [(google.api.field_behavior) = OUTPUT_ONLY]; } // Request for creating a private connection. @@ -825,7 +853,8 @@ message CreatePrivateConnectionRequest { string private_connection_id = 2 [(google.api.field_behavior) = REQUIRED]; // Required. The Private Connectivity resource to create. - PrivateConnection private_connection = 3 [(google.api.field_behavior) = REQUIRED]; + PrivateConnection private_connection = 3 + [(google.api.field_behavior) = REQUIRED]; // Optional. A request ID to identify requests. Specify a unique request ID // so that if you must retry your request, the server will know to ignore @@ -841,11 +870,15 @@ message CreatePrivateConnectionRequest { // The request ID must be a valid UUID with the exception that zero UUID is // not supported (00000000-0000-0000-0000-000000000000). string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, will skip validations. + bool force = 6 [(google.api.field_behavior) = OPTIONAL]; } // Request for listing private connections. message ListPrivateConnectionsRequest { - // Required. The parent that owns the collection of private connectivity configurations. + // Required. The parent that owns the collection of private connectivity + // configurations. string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -912,8 +945,8 @@ message DeletePrivateConnectionRequest { // not supported (00000000-0000-0000-0000-000000000000). string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. If set to true, any child routes that belong to this PrivateConnection will - // also be deleted. + // Optional. If set to true, any child routes that belong to this + // PrivateConnection will also be deleted. bool force = 3 [(google.api.field_behavior) = OPTIONAL]; } diff --git a/google/cloud/datastream/v1/datastream_resources.proto b/google/cloud/datastream/v1/datastream_resources.proto index 80a8deeae..1007939dc 100644 --- a/google/cloud/datastream/v1/datastream_resources.proto +++ b/google/cloud/datastream/v1/datastream_resources.proto @@ -1,4 +1,4 @@ -// Copyright 2022 Google LLC +// Copyright 2023 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -103,14 +103,12 @@ message GcsProfile { } // BigQuery warehouse profile. -message BigQueryProfile { +message BigQueryProfile {} -} - -// Static IP address connectivity. -message StaticServiceIpConnectivity { - -} +// Static IP address connectivity. Used when the source database is configured +// to allow incoming connections from the Datastream public IP addresses +// for the region specified in the connection profile. +message StaticServiceIpConnectivity {} // Forward SSH Tunnel connectivity. message ForwardSshTunnelConnectivity { @@ -181,10 +179,12 @@ message PrivateConnection { string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The create time of the resource. - google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The update time of the resource. - google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Labels. map labels = 4; @@ -195,7 +195,8 @@ message PrivateConnection { // Output only. The state of the Private Connection. State state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. In case of error, the details of the error in a user-friendly format. + // Output only. In case of error, the details of the error in a user-friendly + // format. Error error = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; // VPC Peering Config. @@ -226,10 +227,12 @@ message Route { string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The create time of the resource. - google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The update time of the resource. - google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Labels. map labels = 4; @@ -262,8 +265,8 @@ message MysqlSslConfig { // Output only. Indicates whether the client_certificate field is set. bool client_certificate_set = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Input only. PEM-encoded certificate of the CA that signed the source database - // server's certificate. + // Input only. PEM-encoded certificate of the CA that signed the source + // database server's certificate. string ca_certificate = 5 [(google.api.field_behavior) = INPUT_ONLY]; // Output only. Indicates whether the ca_certificate field is set. @@ -282,10 +285,12 @@ message ConnectionProfile { string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The create time of the resource. - google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The update time of the resource. - google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Labels. map labels = 4; @@ -383,14 +388,10 @@ message OracleRdbms { // Oracle data source configuration message OracleSourceConfig { // Configuration to drop large object values. - message DropLargeObjects { - - } + message DropLargeObjects {} // Configuration to stream large object values. - message StreamLargeObjects { - - } + message StreamLargeObjects {} // Oracle objects to include in the stream. OracleRdbms include_objects = 1; @@ -398,16 +399,20 @@ message OracleSourceConfig { // Oracle objects to exclude from the stream. OracleRdbms exclude_objects = 2; - // Maximum number of concurrent CDC tasks. The number should be non negative. - // If not set (or set to 0), the system's default value will be used. + // Maximum number of concurrent CDC tasks. The number should be non-negative. + // If not set (or set to 0), the system's default value is used. int32 max_concurrent_cdc_tasks = 3; + // Maximum number of concurrent backfill tasks. The number should be + // non-negative. If not set (or set to 0), the system's default value is used. + int32 max_concurrent_backfill_tasks = 4; + // The configuration for handle Oracle large objects. oneof large_objects_handling { // Drop large object values. DropLargeObjects drop_large_objects = 100; - // Stream large object values. + // Stream large object values. NOTE: This feature is currently experimental. StreamLargeObjects stream_large_objects = 102; } } @@ -473,13 +478,21 @@ message PostgresqlSourceConfig { // PostgreSQL objects to exclude from the stream. PostgresqlRdbms exclude_objects = 2; - // Required. The name of the logical replication slot that's configured with the - // pgoutput plugin. - string replication_slot = 3 [(google.api.field_behavior) = REQUIRED]; + // Required. Immutable. The name of the logical replication slot that's + // configured with the pgoutput plugin. + string replication_slot = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; - // Required. The name of the publication that includes the set of all tables that are - // defined in the stream's include_objects. + // Required. The name of the publication that includes the set of all tables + // that are defined in the stream's include_objects. string publication = 4 [(google.api.field_behavior) = REQUIRED]; + + // Maximum number of concurrent backfill tasks. The number should be non + // negative. If not set (or set to 0), the system's default value will be + // used. + int32 max_concurrent_backfill_tasks = 5; } // MySQL Column. @@ -544,6 +557,11 @@ message MysqlSourceConfig { // Maximum number of concurrent CDC tasks. The number should be non negative. // If not set (or set to 0), the system's default value will be used. int32 max_concurrent_cdc_tasks = 3; + + // Maximum number of concurrent backfill tasks. The number should be non + // negative. If not set (or set to 0), the system's default value will be + // used. + int32 max_concurrent_backfill_tasks = 4; } // The configuration of the stream source. @@ -571,9 +589,7 @@ message SourceConfig { } // AVRO file format configuration. -message AvroFileFormat { - -} +message AvroFileFormat {} // JSON file format configuration. message JsonFileFormat { @@ -617,7 +633,8 @@ message GcsDestinationConfig { int32 file_rotation_mb = 2; // The maximum duration for which new events are added before a file is - // closed and a new file is created. + // closed and a new file is created. Values within the range of 15-60 seconds + // are allowed. google.protobuf.Duration file_rotation_interval = 3; // File Format that the data should be written in. @@ -630,9 +647,11 @@ message GcsDestinationConfig { } } +// BigQuery destination configuration message BigQueryDestinationConfig { // A single target dataset to which all data will be streamed. message SingleTargetDataset { + // The dataset ID of the target dataset. string dataset_id = 1; } @@ -661,6 +680,7 @@ message BigQueryDestinationConfig { string kms_key_name = 3; } + // The dataset template to use for dynamic dataset creation. DatasetTemplate dataset_template = 2; } @@ -759,18 +779,18 @@ message Stream { } // Backfill strategy to disable automatic backfill for the Stream's objects. - message BackfillNoneStrategy { - - } + message BackfillNoneStrategy {} // Output only. The stream's name. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The creation time of the stream. - google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The last update time of the stream. - google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Labels. map labels = 4; @@ -782,7 +802,8 @@ message Stream { SourceConfig source_config = 6 [(google.api.field_behavior) = REQUIRED]; // Required. Destination connection profile configuration. - DestinationConfig destination_config = 7 [(google.api.field_behavior) = REQUIRED]; + DestinationConfig destination_config = 7 + [(google.api.field_behavior) = REQUIRED]; // The state of the stream. State state = 8; @@ -804,7 +825,8 @@ message Stream { // If provided, it will be used to encrypt the data. // If left blank, data will be encrypted using an internal Stream-specific // encryption key provisioned through KMS. - optional string customer_managed_encryption_key = 10 [(google.api.field_behavior) = IMMUTABLE]; + optional string customer_managed_encryption_key = 10 + [(google.api.field_behavior) = IMMUTABLE]; } // A specific stream object (e.g a specific DB table). @@ -818,10 +840,12 @@ message StreamObject { string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The creation time of the object. - google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The last update time of the object. - google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Required. Display name. string display_name = 5 [(google.api.field_behavior) = REQUIRED]; @@ -930,10 +954,12 @@ message BackfillJob { Trigger trigger = 2; // Output only. Backfill job's start time. - google.protobuf.Timestamp last_start_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp last_start_time = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Backfill job's end time. - google.protobuf.Timestamp last_end_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp last_end_time = 4 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Errors which caused the backfill job to fail. repeated Error errors = 5 [(google.api.field_behavior) = OUTPUT_ONLY];