google-cloud-datastream-v1 1.2.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6fbe161fa8b4c221fb9ff6e9ef248fe5af3f4f57bb78dbf21f28628b66bc01e7
4
- data.tar.gz: 67637fa48517a2a5b48768c9e102db3a376cb7f588080628668969c21d126e56
3
+ metadata.gz: d84a23004bcddda376921bd74aa1cb446132625714ecdcd7f3210168b1a2a1db
4
+ data.tar.gz: 60d1ff1b9b0a20704943b234cdbb077bd1e9d19a5ec3e8163a16cd8c219bd64b
5
5
  SHA512:
6
- metadata.gz: 3f3641fdd3618fb0614c25d36a0bcfc951f58965a471004257bbad92f9c95dbd13deb9d3a25a69ecb7ef815ec91d8cdcf599e7a1474940456468309a4ce8fffd
7
- data.tar.gz: fe2fb01a4a591f3681596e8fc1d8a4f9fbfbda72fb20ccc56989121cfb9c830c802b713909fdeff9832b624f97f64c78a32b52305e732b33640a18e413bdf3c1
6
+ metadata.gz: 52b97f95a516d79b7f83bf604f112aaf794a43e22ddc1f3a018b2b803d1f90b5a0c3eaf79b47e684e7a9343be28baa2ffc4d969942f47df9ff1eb80387def8f8
7
+ data.tar.gz: 2ba3b7bdf2e59ee058b3964e0bdd8d15a9d1857bf5197e39403468a928ba2774a308b730f873c15d70c288e7fe18f77385ddcc63318acda14ac993f0087e2a09
@@ -805,7 +805,7 @@ module Google
805
805
  # @param options [::Gapic::CallOptions, ::Hash]
806
806
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
807
807
  #
808
- # @overload discover_connection_profile(parent: nil, connection_profile: nil, connection_profile_name: nil, full_hierarchy: nil, hierarchy_depth: nil, oracle_rdbms: nil, mysql_rdbms: nil, postgresql_rdbms: nil, sql_server_rdbms: nil)
808
+ # @overload discover_connection_profile(parent: nil, connection_profile: nil, connection_profile_name: nil, full_hierarchy: nil, hierarchy_depth: nil, oracle_rdbms: nil, mysql_rdbms: nil, postgresql_rdbms: nil, sql_server_rdbms: nil, salesforce_org: nil, mongodb_cluster: nil)
809
809
  # Pass arguments to `discover_connection_profile` via keyword arguments. Note that at
810
810
  # least one keyword argument is required. To specify no parameters, or to keep all
811
811
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -833,19 +833,27 @@ module Google
833
833
  # @param oracle_rdbms [::Google::Cloud::Datastream::V1::OracleRdbms, ::Hash]
834
834
  # Oracle RDBMS to enrich with child data objects and metadata.
835
835
  #
836
- # Note: The following parameters are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
836
+ # Note: The following parameters are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
837
837
  # @param mysql_rdbms [::Google::Cloud::Datastream::V1::MysqlRdbms, ::Hash]
838
838
  # MySQL RDBMS to enrich with child data objects and metadata.
839
839
  #
840
- # Note: The following parameters are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
840
+ # Note: The following parameters are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
841
841
  # @param postgresql_rdbms [::Google::Cloud::Datastream::V1::PostgresqlRdbms, ::Hash]
842
842
  # PostgreSQL RDBMS to enrich with child data objects and metadata.
843
843
  #
844
- # Note: The following parameters are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
844
+ # Note: The following parameters are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
845
845
  # @param sql_server_rdbms [::Google::Cloud::Datastream::V1::SqlServerRdbms, ::Hash]
846
846
  # SQLServer RDBMS to enrich with child data objects and metadata.
847
847
  #
848
- # Note: The following parameters are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
848
+ # Note: The following parameters are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
849
+ # @param salesforce_org [::Google::Cloud::Datastream::V1::SalesforceOrg, ::Hash]
850
+ # Salesforce organization to enrich with child data objects and metadata.
851
+ #
852
+ # Note: The following parameters are mutually exclusive: `salesforce_org`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
853
+ # @param mongodb_cluster [::Google::Cloud::Datastream::V1::MongodbCluster, ::Hash]
854
+ # MongoDB cluster to enrich with child data objects and metadata.
855
+ #
856
+ # Note: The following parameters are mutually exclusive: `mongodb_cluster`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
849
857
  #
850
858
  # @yield [response, operation] Access the result along with the RPC operation
851
859
  # @yieldparam response [::Google::Cloud::Datastream::V1::DiscoverConnectionProfileResponse]
@@ -2096,7 +2104,7 @@ module Google
2096
2104
  # @param options [::Gapic::CallOptions, ::Hash]
2097
2105
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2098
2106
  #
2099
- # @overload create_private_connection(parent: nil, private_connection_id: nil, private_connection: nil, request_id: nil, force: nil)
2107
+ # @overload create_private_connection(parent: nil, private_connection_id: nil, private_connection: nil, request_id: nil, force: nil, validate_only: nil)
2100
2108
  # Pass arguments to `create_private_connection` via keyword arguments. Note that at
2101
2109
  # least one keyword argument is required. To specify no parameters, or to keep all
2102
2110
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -2123,6 +2131,10 @@ module Google
2123
2131
  # not supported (00000000-0000-0000-0000-000000000000).
2124
2132
  # @param force [::Boolean]
2125
2133
  # Optional. If set to true, will skip validations.
2134
+ # @param validate_only [::Boolean]
2135
+ # Optional. When supplied with PSC Interface config, will get/create the
2136
+ # tenant project required for the customer to allow list and won't actually
2137
+ # create the private connection.
2126
2138
  #
2127
2139
  # @yield [response, operation] Access the result along with the RPC operation
2128
2140
  # @yieldparam response [::Gapic::Operation]
@@ -60,6 +60,25 @@ module Google
60
60
  "projects/#{project}/locations/#{location}"
61
61
  end
62
62
 
63
+ ##
64
+ # Create a fully-qualified NetworkAttachment resource string.
65
+ #
66
+ # The resource will be in the following format:
67
+ #
68
+ # `projects/{project}/regions/{region}/networkAttachments/{network_attachment}`
69
+ #
70
+ # @param project [String]
71
+ # @param region [String]
72
+ # @param network_attachment [String]
73
+ #
74
+ # @return [::String]
75
+ def network_attachment_path project:, region:, network_attachment:
76
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
77
+ raise ::ArgumentError, "region cannot contain /" if region.to_s.include? "/"
78
+
79
+ "projects/#{project}/regions/#{region}/networkAttachments/#{network_attachment}"
80
+ end
81
+
63
82
  ##
64
83
  # Create a fully-qualified Networks resource string.
65
84
  #
@@ -764,7 +764,7 @@ module Google
764
764
  # @param options [::Gapic::CallOptions, ::Hash]
765
765
  # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
766
766
  #
767
- # @overload discover_connection_profile(parent: nil, connection_profile: nil, connection_profile_name: nil, full_hierarchy: nil, hierarchy_depth: nil, oracle_rdbms: nil, mysql_rdbms: nil, postgresql_rdbms: nil, sql_server_rdbms: nil)
767
+ # @overload discover_connection_profile(parent: nil, connection_profile: nil, connection_profile_name: nil, full_hierarchy: nil, hierarchy_depth: nil, oracle_rdbms: nil, mysql_rdbms: nil, postgresql_rdbms: nil, sql_server_rdbms: nil, salesforce_org: nil, mongodb_cluster: nil)
768
768
  # Pass arguments to `discover_connection_profile` via keyword arguments. Note that at
769
769
  # least one keyword argument is required. To specify no parameters, or to keep all
770
770
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -792,19 +792,27 @@ module Google
792
792
  # @param oracle_rdbms [::Google::Cloud::Datastream::V1::OracleRdbms, ::Hash]
793
793
  # Oracle RDBMS to enrich with child data objects and metadata.
794
794
  #
795
- # Note: The following parameters are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
795
+ # Note: The following parameters are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
796
796
  # @param mysql_rdbms [::Google::Cloud::Datastream::V1::MysqlRdbms, ::Hash]
797
797
  # MySQL RDBMS to enrich with child data objects and metadata.
798
798
  #
799
- # Note: The following parameters are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
799
+ # Note: The following parameters are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
800
800
  # @param postgresql_rdbms [::Google::Cloud::Datastream::V1::PostgresqlRdbms, ::Hash]
801
801
  # PostgreSQL RDBMS to enrich with child data objects and metadata.
802
802
  #
803
- # Note: The following parameters are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
803
+ # Note: The following parameters are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
804
804
  # @param sql_server_rdbms [::Google::Cloud::Datastream::V1::SqlServerRdbms, ::Hash]
805
805
  # SQLServer RDBMS to enrich with child data objects and metadata.
806
806
  #
807
- # Note: The following parameters are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
807
+ # Note: The following parameters are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `salesforce_org`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
808
+ # @param salesforce_org [::Google::Cloud::Datastream::V1::SalesforceOrg, ::Hash]
809
+ # Salesforce organization to enrich with child data objects and metadata.
810
+ #
811
+ # Note: The following parameters are mutually exclusive: `salesforce_org`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `mongodb_cluster`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
812
+ # @param mongodb_cluster [::Google::Cloud::Datastream::V1::MongodbCluster, ::Hash]
813
+ # MongoDB cluster to enrich with child data objects and metadata.
814
+ #
815
+ # Note: The following parameters are mutually exclusive: `mongodb_cluster`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
808
816
  # @yield [result, operation] Access the result along with the TransportOperation object
809
817
  # @yieldparam result [::Google::Cloud::Datastream::V1::DiscoverConnectionProfileResponse]
810
818
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -1964,7 +1972,7 @@ module Google
1964
1972
  # @param options [::Gapic::CallOptions, ::Hash]
1965
1973
  # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
1966
1974
  #
1967
- # @overload create_private_connection(parent: nil, private_connection_id: nil, private_connection: nil, request_id: nil, force: nil)
1975
+ # @overload create_private_connection(parent: nil, private_connection_id: nil, private_connection: nil, request_id: nil, force: nil, validate_only: nil)
1968
1976
  # Pass arguments to `create_private_connection` via keyword arguments. Note that at
1969
1977
  # least one keyword argument is required. To specify no parameters, or to keep all
1970
1978
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -1991,6 +1999,10 @@ module Google
1991
1999
  # not supported (00000000-0000-0000-0000-000000000000).
1992
2000
  # @param force [::Boolean]
1993
2001
  # Optional. If set to true, will skip validations.
2002
+ # @param validate_only [::Boolean]
2003
+ # Optional. When supplied with PSC Interface config, will get/create the
2004
+ # tenant project required for the customer to allow list and won't actually
2005
+ # create the private connection.
1994
2006
  # @yield [result, operation] Access the result along with the TransportOperation object
1995
2007
  # @yieldparam result [::Gapic::Operation]
1996
2008
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -15,7 +15,7 @@ require 'google/protobuf/field_mask_pb'
15
15
  require 'google/protobuf/timestamp_pb'
16
16
 
17
17
 
18
- descriptor_data = "\n+google/cloud/datastream/v1/datastream.proto\x12\x1agoogle.cloud.datastream.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x35google/cloud/datastream/v1/datastream_resources.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xc5\x04\n DiscoverConnectionProfileRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/ConnectionProfile\x12L\n\x12\x63onnection_profile\x18\xc8\x01 \x01(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfileH\x00\x12\"\n\x17\x63onnection_profile_name\x18\xc9\x01 \x01(\tH\x00\x12\x18\n\x0e\x66ull_hierarchy\x18\x03 \x01(\x08H\x01\x12\x19\n\x0fhierarchy_depth\x18\x04 \x01(\x05H\x01\x12?\n\x0coracle_rdbms\x18\x64 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbmsH\x02\x12=\n\x0bmysql_rdbms\x18\x65 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbmsH\x02\x12G\n\x10postgresql_rdbms\x18\x66 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbmsH\x02\x12\x46\n\x10sql_server_rdbms\x18g \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbmsH\x02\x42\x08\n\x06targetB\x0b\n\thierarchyB\r\n\x0b\x64\x61ta_object\"\xc3\x02\n!DiscoverConnectionProfileResponse\x12?\n\x0coracle_rdbms\x18\x64 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbmsH\x00\x12=\n\x0bmysql_rdbms\x18\x65 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbmsH\x00\x12G\n\x10postgresql_rdbms\x18\x66 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbmsH\x00\x12\x46\n\x10sql_server_rdbms\x18g \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbmsH\x00\x42\r\n\x0b\x64\x61ta_object\"w\n\x15\x46\x65tchStaticIpsRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"E\n\x16\x46\x65tchStaticIpsResponse\x12\x12\n\nstatic_ips\x18\x01 \x03(\t\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xad\x01\n\x1dListConnectionProfilesRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/ConnectionProfile\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"\x9a\x01\n\x1eListConnectionProfilesResponse\x12J\n\x13\x63onnection_profiles\x18\x01 \x03(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfile\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"`\n\x1bGetConnectionProfileRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\"\xa2\x02\n\x1e\x43reateConnectionProfileRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/ConnectionProfile\x12\"\n\x15\x63onnection_profile_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12N\n\x12\x63onnection_profile\x18\x03 \x01(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfileB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xef\x01\n\x1eUpdateConnectionProfileRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12N\n\x12\x63onnection_profile\x18\x02 \x01(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfileB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"|\n\x1e\x44\x65leteConnectionProfileRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\x97\x01\n\x12ListStreamsRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\x12 datastream.googleapis.com/Stream\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"x\n\x13ListStreamsResponse\x12\x33\n\x07streams\x18\x01 \x03(\x0b\x32\".google.cloud.datastream.v1.Stream\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"J\n\x10GetStreamRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\"\xe9\x01\n\x13\x43reateStreamRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\x12 datastream.googleapis.com/Stream\x12\x16\n\tstream_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x37\n\x06stream\x18\x03 \x01(\x0b\x32\".google.cloud.datastream.v1.StreamB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xcd\x01\n\x13UpdateStreamRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x37\n\x06stream\x18\x02 \x01(\x0b\x32\".google.cloud.datastream.v1.StreamB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"f\n\x13\x44\x65leteStreamRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\xa2\x01\n\x10RunStreamRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\x12\x42\n\x0c\x63\x64\x63_strategy\x18\x02 \x01(\x0b\x32\'.google.cloud.datastream.v1.CdcStrategyB\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"V\n\x16GetStreamObjectRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datastream.googleapis.com/StreamObject\"\xb0\x01\n\x19LookupStreamObjectRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\x12Y\n\x18source_object_identifier\x18\x02 \x01(\x0b\x32\x32.google.cloud.datastream.v1.SourceObjectIdentifierB\x03\xe0\x41\x02\"Y\n\x17StartBackfillJobRequest\x12>\n\x06object\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datastream.googleapis.com/StreamObject\"T\n\x18StartBackfillJobResponse\x12\x38\n\x06object\x18\x01 \x01(\x0b\x32(.google.cloud.datastream.v1.StreamObject\"X\n\x16StopBackfillJobRequest\x12>\n\x06object\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datastream.googleapis.com/StreamObject\"S\n\x17StopBackfillJobResponse\x12\x38\n\x06object\x18\x01 \x01(\x0b\x32(.google.cloud.datastream.v1.StreamObject\"\x81\x01\n\x18ListStreamObjectsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\x12&datastream.googleapis.com/StreamObject\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"v\n\x19ListStreamObjectsResponse\x12@\n\x0estream_objects\x18\x01 \x03(\x0b\x32(.google.cloud.datastream.v1.StreamObject\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xce\x02\n\x11OperationMetadata\x12\x34\n\x0b\x63reate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x06target\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04verb\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x1b\n\x0estatus_message\x18\x05 \x01(\tB\x03\xe0\x41\x03\x12#\n\x16requested_cancellation\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\x12\x18\n\x0b\x61pi_version\x18\x07 \x01(\tB\x03\xe0\x41\x03\x12L\n\x11validation_result\x18\x08 \x01(\x0b\x32,.google.cloud.datastream.v1.ValidationResultB\x03\xe0\x41\x03\"\x86\x02\n\x1e\x43reatePrivateConnectionRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/PrivateConnection\x12\"\n\x15private_connection_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12N\n\x12private_connection\x18\x03 \x01(\x0b\x32-.google.cloud.datastream.v1.PrivateConnectionB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xad\x01\n\x1dListPrivateConnectionsRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/PrivateConnection\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"\x9a\x01\n\x1eListPrivateConnectionsResponse\x12J\n\x13private_connections\x18\x01 \x03(\x0b\x32-.google.cloud.datastream.v1.PrivateConnection\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\x90\x01\n\x1e\x44\x65letePrivateConnectionRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"`\n\x1bGetPrivateConnectionRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\"\xb4\x01\n\x12\x43reateRouteRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1f\x64\x61tastream.googleapis.com/Route\x12\x15\n\x08route_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x35\n\x05route\x18\x03 \x01(\x0b\x32!.google.cloud.datastream.v1.RouteB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\"\x95\x01\n\x11ListRoutesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1f\x64\x61tastream.googleapis.com/Route\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"u\n\x12ListRoutesResponse\x12\x31\n\x06routes\x18\x01 \x03(\x0b\x32!.google.cloud.datastream.v1.Route\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"d\n\x12\x44\x65leteRouteRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x64\x61tastream.googleapis.com/Route\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"H\n\x0fGetRouteRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x64\x61tastream.googleapis.com/Route2\xb2,\n\nDatastream\x12\xd8\x01\n\x16ListConnectionProfiles\x12\x39.google.cloud.datastream.v1.ListConnectionProfilesRequest\x1a:.google.cloud.datastream.v1.ListConnectionProfilesResponse\"G\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{parent=projects/*/locations/*}/connectionProfiles\x12\xc5\x01\n\x14GetConnectionProfile\x12\x37.google.cloud.datastream.v1.GetConnectionProfileRequest\x1a-.google.cloud.datastream.v1.ConnectionProfile\"E\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{name=projects/*/locations/*/connectionProfiles/*}\x12\xa4\x02\n\x17\x43reateConnectionProfile\x12:.google.cloud.datastream.v1.CreateConnectionProfileRequest\x1a\x1d.google.longrunning.Operation\"\xad\x01\xca\x41&\n\x11\x43onnectionProfile\x12\x11OperationMetadata\xda\x41/parent,connection_profile,connection_profile_id\x82\xd3\xe4\x93\x02L\"6/v1/{parent=projects/*/locations/*}/connectionProfiles:\x12\x63onnection_profile\x12\xa6\x02\n\x17UpdateConnectionProfile\x12:.google.cloud.datastream.v1.UpdateConnectionProfileRequest\x1a\x1d.google.longrunning.Operation\"\xaf\x01\xca\x41&\n\x11\x43onnectionProfile\x12\x11OperationMetadata\xda\x41\x1e\x63onnection_profile,update_mask\x82\xd3\xe4\x93\x02_2I/v1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}:\x12\x63onnection_profile\x12\xe8\x01\n\x17\x44\x65leteConnectionProfile\x12:.google.cloud.datastream.v1.DeleteConnectionProfileRequest\x1a\x1d.google.longrunning.Operation\"r\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38*6/v1/{name=projects/*/locations/*/connectionProfiles/*}\x12\xe4\x01\n\x19\x44iscoverConnectionProfile\x12<.google.cloud.datastream.v1.DiscoverConnectionProfileRequest\x1a=.google.cloud.datastream.v1.DiscoverConnectionProfileResponse\"J\x82\xd3\xe4\x93\x02\x44\"?/v1/{parent=projects/*/locations/*}/connectionProfiles:discover:\x01*\x12\xac\x01\n\x0bListStreams\x12..google.cloud.datastream.v1.ListStreamsRequest\x1a/.google.cloud.datastream.v1.ListStreamsResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/streams\x12\x99\x01\n\tGetStream\x12,.google.cloud.datastream.v1.GetStreamRequest\x1a\".google.cloud.datastream.v1.Stream\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/streams/*}\x12\xd3\x01\n\x0c\x43reateStream\x12/.google.cloud.datastream.v1.CreateStreamRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41\x1b\n\x06Stream\x12\x11OperationMetadata\xda\x41\x17parent,stream,stream_id\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/locations/*}/streams:\x06stream\x12\xd5\x01\n\x0cUpdateStream\x12/.google.cloud.datastream.v1.UpdateStreamRequest\x1a\x1d.google.longrunning.Operation\"u\xca\x41\x1b\n\x06Stream\x12\x11OperationMetadata\xda\x41\x12stream,update_mask\x82\xd3\xe4\x93\x02<22/v1/{stream.name=projects/*/locations/*/streams/*}:\x06stream\x12\xc7\x01\n\x0c\x44\x65leteStream\x12/.google.cloud.datastream.v1.DeleteStreamRequest\x1a\x1d.google.longrunning.Operation\"g\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/streams/*}\x12\xb2\x01\n\tRunStream\x12,.google.cloud.datastream.v1.RunStreamRequest\x1a\x1d.google.longrunning.Operation\"X\xca\x41\x1b\n\x06Stream\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x34\"//v1/{name=projects/*/locations/*/streams/*}:run:\x01*\x12\xb5\x01\n\x0fGetStreamObject\x12\x32.google.cloud.datastream.v1.GetStreamObjectRequest\x1a(.google.cloud.datastream.v1.StreamObject\"D\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{name=projects/*/locations/*/streams/*/objects/*}\x12\xbe\x01\n\x12LookupStreamObject\x12\x35.google.cloud.datastream.v1.LookupStreamObjectRequest\x1a(.google.cloud.datastream.v1.StreamObject\"G\x82\xd3\xe4\x93\x02\x41\"</v1/{parent=projects/*/locations/*/streams/*}/objects:lookup:\x01*\x12\xc8\x01\n\x11ListStreamObjects\x12\x34.google.cloud.datastream.v1.ListStreamObjectsRequest\x1a\x35.google.cloud.datastream.v1.ListStreamObjectsResponse\"F\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{parent=projects/*/locations/*/streams/*}/objects\x12\xdb\x01\n\x10StartBackfillJob\x12\x33.google.cloud.datastream.v1.StartBackfillJobRequest\x1a\x34.google.cloud.datastream.v1.StartBackfillJobResponse\"\\\xda\x41\x06object\x82\xd3\xe4\x93\x02M\"H/v1/{object=projects/*/locations/*/streams/*/objects/*}:startBackfillJob:\x01*\x12\xd7\x01\n\x0fStopBackfillJob\x12\x32.google.cloud.datastream.v1.StopBackfillJobRequest\x1a\x33.google.cloud.datastream.v1.StopBackfillJobResponse\"[\xda\x41\x06object\x82\xd3\xe4\x93\x02L\"G/v1/{object=projects/*/locations/*/streams/*/objects/*}:stopBackfillJob:\x01*\x12\xb8\x01\n\x0e\x46\x65tchStaticIps\x12\x31.google.cloud.datastream.v1.FetchStaticIpsRequest\x1a\x32.google.cloud.datastream.v1.FetchStaticIpsResponse\"?\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/locations/*}:fetchStaticIps\x12\xa4\x02\n\x17\x43reatePrivateConnection\x12:.google.cloud.datastream.v1.CreatePrivateConnectionRequest\x1a\x1d.google.longrunning.Operation\"\xad\x01\xca\x41&\n\x11PrivateConnection\x12\x11OperationMetadata\xda\x41/parent,private_connection,private_connection_id\x82\xd3\xe4\x93\x02L\"6/v1/{parent=projects/*/locations/*}/privateConnections:\x12private_connection\x12\xc5\x01\n\x14GetPrivateConnection\x12\x37.google.cloud.datastream.v1.GetPrivateConnectionRequest\x1a-.google.cloud.datastream.v1.PrivateConnection\"E\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{name=projects/*/locations/*/privateConnections/*}\x12\xd8\x01\n\x16ListPrivateConnections\x12\x39.google.cloud.datastream.v1.ListPrivateConnectionsRequest\x1a:.google.cloud.datastream.v1.ListPrivateConnectionsResponse\"G\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{parent=projects/*/locations/*}/privateConnections\x12\xe8\x01\n\x17\x44\x65letePrivateConnection\x12:.google.cloud.datastream.v1.DeletePrivateConnectionRequest\x1a\x1d.google.longrunning.Operation\"r\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38*6/v1/{name=projects/*/locations/*/privateConnections/*}\x12\xe2\x01\n\x0b\x43reateRoute\x12..google.cloud.datastream.v1.CreateRouteRequest\x1a\x1d.google.longrunning.Operation\"\x83\x01\xca\x41\x1a\n\x05Route\x12\x11OperationMetadata\xda\x41\x15parent,route,route_id\x82\xd3\xe4\x93\x02H\"?/v1/{parent=projects/*/locations/*/privateConnections/*}/routes:\x05route\x12\xaa\x01\n\x08GetRoute\x12+.google.cloud.datastream.v1.GetRouteRequest\x1a!.google.cloud.datastream.v1.Route\"N\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41\x12?/v1/{name=projects/*/locations/*/privateConnections/*/routes/*}\x12\xbd\x01\n\nListRoutes\x12-.google.cloud.datastream.v1.ListRoutesRequest\x1a..google.cloud.datastream.v1.ListRoutesResponse\"P\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x41\x12?/v1/{parent=projects/*/locations/*/privateConnections/*}/routes\x12\xd9\x01\n\x0b\x44\x65leteRoute\x12..google.cloud.datastream.v1.DeleteRouteRequest\x1a\x1d.google.longrunning.Operation\"{\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41*?/v1/{name=projects/*/locations/*/privateConnections/*/routes/*}\x1aM\xca\x41\x19\x64\x61tastream.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xcd\x01\n\x1e\x63om.google.cloud.datastream.v1B\x0f\x44\x61tastreamProtoP\x01Z>cloud.google.com/go/datastream/apiv1/datastreampb;datastreampb\xaa\x02\x1aGoogle.Cloud.Datastream.V1\xca\x02\x1aGoogle\\Cloud\\Datastream\\V1\xea\x02\x1dGoogle::Cloud::Datastream::V1b\x06proto3"
18
+ descriptor_data = "\n+google/cloud/datastream/v1/datastream.proto\x12\x1agoogle.cloud.datastream.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x35google/cloud/datastream/v1/datastream_resources.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xd1\x05\n DiscoverConnectionProfileRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/ConnectionProfile\x12L\n\x12\x63onnection_profile\x18\xc8\x01 \x01(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfileH\x00\x12\"\n\x17\x63onnection_profile_name\x18\xc9\x01 \x01(\tH\x00\x12\x18\n\x0e\x66ull_hierarchy\x18\x03 \x01(\x08H\x01\x12\x19\n\x0fhierarchy_depth\x18\x04 \x01(\x05H\x01\x12?\n\x0coracle_rdbms\x18\x64 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbmsH\x02\x12=\n\x0bmysql_rdbms\x18\x65 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbmsH\x02\x12G\n\x10postgresql_rdbms\x18\x66 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbmsH\x02\x12\x46\n\x10sql_server_rdbms\x18g \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbmsH\x02\x12\x43\n\x0esalesforce_org\x18h \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrgH\x02\x12\x45\n\x0fmongodb_cluster\x18i \x01(\x0b\x32*.google.cloud.datastream.v1.MongodbClusterH\x02\x42\x08\n\x06targetB\x0b\n\thierarchyB\r\n\x0b\x64\x61ta_object\"\xcf\x03\n!DiscoverConnectionProfileResponse\x12?\n\x0coracle_rdbms\x18\x64 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbmsH\x00\x12=\n\x0bmysql_rdbms\x18\x65 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbmsH\x00\x12G\n\x10postgresql_rdbms\x18\x66 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbmsH\x00\x12\x46\n\x10sql_server_rdbms\x18g \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbmsH\x00\x12\x43\n\x0esalesforce_org\x18h \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrgH\x00\x12\x45\n\x0fmongodb_cluster\x18i \x01(\x0b\x32*.google.cloud.datastream.v1.MongodbClusterH\x00\x42\r\n\x0b\x64\x61ta_object\"w\n\x15\x46\x65tchStaticIpsRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"E\n\x16\x46\x65tchStaticIpsResponse\x12\x12\n\nstatic_ips\x18\x01 \x03(\t\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xad\x01\n\x1dListConnectionProfilesRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/ConnectionProfile\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"\x9a\x01\n\x1eListConnectionProfilesResponse\x12J\n\x13\x63onnection_profiles\x18\x01 \x03(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfile\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"`\n\x1bGetConnectionProfileRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\"\xa2\x02\n\x1e\x43reateConnectionProfileRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/ConnectionProfile\x12\"\n\x15\x63onnection_profile_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12N\n\x12\x63onnection_profile\x18\x03 \x01(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfileB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xef\x01\n\x1eUpdateConnectionProfileRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12N\n\x12\x63onnection_profile\x18\x02 \x01(\x0b\x32-.google.cloud.datastream.v1.ConnectionProfileB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"|\n\x1e\x44\x65leteConnectionProfileRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\x97\x01\n\x12ListStreamsRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\x12 datastream.googleapis.com/Stream\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"x\n\x13ListStreamsResponse\x12\x33\n\x07streams\x18\x01 \x03(\x0b\x32\".google.cloud.datastream.v1.Stream\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"J\n\x10GetStreamRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\"\xe9\x01\n\x13\x43reateStreamRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\x12 datastream.googleapis.com/Stream\x12\x16\n\tstream_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x37\n\x06stream\x18\x03 \x01(\x0b\x32\".google.cloud.datastream.v1.StreamB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xcd\x01\n\x13UpdateStreamRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x37\n\x06stream\x18\x02 \x01(\x0b\x32\".google.cloud.datastream.v1.StreamB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"f\n\x13\x44\x65leteStreamRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\xa2\x01\n\x10RunStreamRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\x12\x42\n\x0c\x63\x64\x63_strategy\x18\x02 \x01(\x0b\x32\'.google.cloud.datastream.v1.CdcStrategyB\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"V\n\x16GetStreamObjectRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datastream.googleapis.com/StreamObject\"\xb0\x01\n\x19LookupStreamObjectRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n datastream.googleapis.com/Stream\x12Y\n\x18source_object_identifier\x18\x02 \x01(\x0b\x32\x32.google.cloud.datastream.v1.SourceObjectIdentifierB\x03\xe0\x41\x02\"Y\n\x17StartBackfillJobRequest\x12>\n\x06object\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datastream.googleapis.com/StreamObject\"T\n\x18StartBackfillJobResponse\x12\x38\n\x06object\x18\x01 \x01(\x0b\x32(.google.cloud.datastream.v1.StreamObject\"X\n\x16StopBackfillJobRequest\x12>\n\x06object\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datastream.googleapis.com/StreamObject\"S\n\x17StopBackfillJobResponse\x12\x38\n\x06object\x18\x01 \x01(\x0b\x32(.google.cloud.datastream.v1.StreamObject\"\x81\x01\n\x18ListStreamObjectsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\x12&datastream.googleapis.com/StreamObject\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"v\n\x19ListStreamObjectsResponse\x12@\n\x0estream_objects\x18\x01 \x03(\x0b\x32(.google.cloud.datastream.v1.StreamObject\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xce\x02\n\x11OperationMetadata\x12\x34\n\x0b\x63reate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x06target\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04verb\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x1b\n\x0estatus_message\x18\x05 \x01(\tB\x03\xe0\x41\x03\x12#\n\x16requested_cancellation\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\x12\x18\n\x0b\x61pi_version\x18\x07 \x01(\tB\x03\xe0\x41\x03\x12L\n\x11validation_result\x18\x08 \x01(\x0b\x32,.google.cloud.datastream.v1.ValidationResultB\x03\xe0\x41\x03\"\xa2\x02\n\x1e\x43reatePrivateConnectionRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/PrivateConnection\x12\"\n\x15private_connection_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12N\n\x12private_connection\x18\x03 \x01(\x0b\x32-.google.cloud.datastream.v1.PrivateConnectionB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x08 \x01(\x08\x42\x03\xe0\x41\x01\"\xad\x01\n\x1dListPrivateConnectionsRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\x12+datastream.googleapis.com/PrivateConnection\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"\x9a\x01\n\x1eListPrivateConnectionsResponse\x12J\n\x13private_connections\x18\x01 \x03(\x0b\x32-.google.cloud.datastream.v1.PrivateConnection\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\x90\x01\n\x1e\x44\x65letePrivateConnectionRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05\x66orce\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"`\n\x1bGetPrivateConnectionRequest\x12\x41\n\x04name\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\"\xb4\x01\n\x12\x43reateRouteRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1f\x64\x61tastream.googleapis.com/Route\x12\x15\n\x08route_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x35\n\x05route\x18\x03 \x01(\x0b\x32!.google.cloud.datastream.v1.RouteB\x03\xe0\x41\x02\x12\x17\n\nrequest_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\"\x95\x01\n\x11ListRoutesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1f\x64\x61tastream.googleapis.com/Route\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"u\n\x12ListRoutesResponse\x12\x31\n\x06routes\x18\x01 \x03(\x0b\x32!.google.cloud.datastream.v1.Route\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"d\n\x12\x44\x65leteRouteRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x64\x61tastream.googleapis.com/Route\x12\x17\n\nrequest_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\"H\n\x0fGetRouteRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x64\x61tastream.googleapis.com/Route2\xb2,\n\nDatastream\x12\xd8\x01\n\x16ListConnectionProfiles\x12\x39.google.cloud.datastream.v1.ListConnectionProfilesRequest\x1a:.google.cloud.datastream.v1.ListConnectionProfilesResponse\"G\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{parent=projects/*/locations/*}/connectionProfiles\x12\xc5\x01\n\x14GetConnectionProfile\x12\x37.google.cloud.datastream.v1.GetConnectionProfileRequest\x1a-.google.cloud.datastream.v1.ConnectionProfile\"E\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{name=projects/*/locations/*/connectionProfiles/*}\x12\xa4\x02\n\x17\x43reateConnectionProfile\x12:.google.cloud.datastream.v1.CreateConnectionProfileRequest\x1a\x1d.google.longrunning.Operation\"\xad\x01\xca\x41&\n\x11\x43onnectionProfile\x12\x11OperationMetadata\xda\x41/parent,connection_profile,connection_profile_id\x82\xd3\xe4\x93\x02L\"6/v1/{parent=projects/*/locations/*}/connectionProfiles:\x12\x63onnection_profile\x12\xa6\x02\n\x17UpdateConnectionProfile\x12:.google.cloud.datastream.v1.UpdateConnectionProfileRequest\x1a\x1d.google.longrunning.Operation\"\xaf\x01\xca\x41&\n\x11\x43onnectionProfile\x12\x11OperationMetadata\xda\x41\x1e\x63onnection_profile,update_mask\x82\xd3\xe4\x93\x02_2I/v1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}:\x12\x63onnection_profile\x12\xe8\x01\n\x17\x44\x65leteConnectionProfile\x12:.google.cloud.datastream.v1.DeleteConnectionProfileRequest\x1a\x1d.google.longrunning.Operation\"r\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38*6/v1/{name=projects/*/locations/*/connectionProfiles/*}\x12\xe4\x01\n\x19\x44iscoverConnectionProfile\x12<.google.cloud.datastream.v1.DiscoverConnectionProfileRequest\x1a=.google.cloud.datastream.v1.DiscoverConnectionProfileResponse\"J\x82\xd3\xe4\x93\x02\x44\"?/v1/{parent=projects/*/locations/*}/connectionProfiles:discover:\x01*\x12\xac\x01\n\x0bListStreams\x12..google.cloud.datastream.v1.ListStreamsRequest\x1a/.google.cloud.datastream.v1.ListStreamsResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/streams\x12\x99\x01\n\tGetStream\x12,.google.cloud.datastream.v1.GetStreamRequest\x1a\".google.cloud.datastream.v1.Stream\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/streams/*}\x12\xd3\x01\n\x0c\x43reateStream\x12/.google.cloud.datastream.v1.CreateStreamRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41\x1b\n\x06Stream\x12\x11OperationMetadata\xda\x41\x17parent,stream,stream_id\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/locations/*}/streams:\x06stream\x12\xd5\x01\n\x0cUpdateStream\x12/.google.cloud.datastream.v1.UpdateStreamRequest\x1a\x1d.google.longrunning.Operation\"u\xca\x41\x1b\n\x06Stream\x12\x11OperationMetadata\xda\x41\x12stream,update_mask\x82\xd3\xe4\x93\x02<22/v1/{stream.name=projects/*/locations/*/streams/*}:\x06stream\x12\xc7\x01\n\x0c\x44\x65leteStream\x12/.google.cloud.datastream.v1.DeleteStreamRequest\x1a\x1d.google.longrunning.Operation\"g\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/streams/*}\x12\xb2\x01\n\tRunStream\x12,.google.cloud.datastream.v1.RunStreamRequest\x1a\x1d.google.longrunning.Operation\"X\xca\x41\x1b\n\x06Stream\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x34\"//v1/{name=projects/*/locations/*/streams/*}:run:\x01*\x12\xb5\x01\n\x0fGetStreamObject\x12\x32.google.cloud.datastream.v1.GetStreamObjectRequest\x1a(.google.cloud.datastream.v1.StreamObject\"D\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{name=projects/*/locations/*/streams/*/objects/*}\x12\xbe\x01\n\x12LookupStreamObject\x12\x35.google.cloud.datastream.v1.LookupStreamObjectRequest\x1a(.google.cloud.datastream.v1.StreamObject\"G\x82\xd3\xe4\x93\x02\x41\"</v1/{parent=projects/*/locations/*/streams/*}/objects:lookup:\x01*\x12\xc8\x01\n\x11ListStreamObjects\x12\x34.google.cloud.datastream.v1.ListStreamObjectsRequest\x1a\x35.google.cloud.datastream.v1.ListStreamObjectsResponse\"F\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{parent=projects/*/locations/*/streams/*}/objects\x12\xdb\x01\n\x10StartBackfillJob\x12\x33.google.cloud.datastream.v1.StartBackfillJobRequest\x1a\x34.google.cloud.datastream.v1.StartBackfillJobResponse\"\\\xda\x41\x06object\x82\xd3\xe4\x93\x02M\"H/v1/{object=projects/*/locations/*/streams/*/objects/*}:startBackfillJob:\x01*\x12\xd7\x01\n\x0fStopBackfillJob\x12\x32.google.cloud.datastream.v1.StopBackfillJobRequest\x1a\x33.google.cloud.datastream.v1.StopBackfillJobResponse\"[\xda\x41\x06object\x82\xd3\xe4\x93\x02L\"G/v1/{object=projects/*/locations/*/streams/*/objects/*}:stopBackfillJob:\x01*\x12\xb8\x01\n\x0e\x46\x65tchStaticIps\x12\x31.google.cloud.datastream.v1.FetchStaticIpsRequest\x1a\x32.google.cloud.datastream.v1.FetchStaticIpsResponse\"?\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/locations/*}:fetchStaticIps\x12\xa4\x02\n\x17\x43reatePrivateConnection\x12:.google.cloud.datastream.v1.CreatePrivateConnectionRequest\x1a\x1d.google.longrunning.Operation\"\xad\x01\xca\x41&\n\x11PrivateConnection\x12\x11OperationMetadata\xda\x41/parent,private_connection,private_connection_id\x82\xd3\xe4\x93\x02L\"6/v1/{parent=projects/*/locations/*}/privateConnections:\x12private_connection\x12\xc5\x01\n\x14GetPrivateConnection\x12\x37.google.cloud.datastream.v1.GetPrivateConnectionRequest\x1a-.google.cloud.datastream.v1.PrivateConnection\"E\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{name=projects/*/locations/*/privateConnections/*}\x12\xd8\x01\n\x16ListPrivateConnections\x12\x39.google.cloud.datastream.v1.ListPrivateConnectionsRequest\x1a:.google.cloud.datastream.v1.ListPrivateConnectionsResponse\"G\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/{parent=projects/*/locations/*}/privateConnections\x12\xe8\x01\n\x17\x44\x65letePrivateConnection\x12:.google.cloud.datastream.v1.DeletePrivateConnectionRequest\x1a\x1d.google.longrunning.Operation\"r\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x38*6/v1/{name=projects/*/locations/*/privateConnections/*}\x12\xe2\x01\n\x0b\x43reateRoute\x12..google.cloud.datastream.v1.CreateRouteRequest\x1a\x1d.google.longrunning.Operation\"\x83\x01\xca\x41\x1a\n\x05Route\x12\x11OperationMetadata\xda\x41\x15parent,route,route_id\x82\xd3\xe4\x93\x02H\"?/v1/{parent=projects/*/locations/*/privateConnections/*}/routes:\x05route\x12\xaa\x01\n\x08GetRoute\x12+.google.cloud.datastream.v1.GetRouteRequest\x1a!.google.cloud.datastream.v1.Route\"N\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41\x12?/v1/{name=projects/*/locations/*/privateConnections/*/routes/*}\x12\xbd\x01\n\nListRoutes\x12-.google.cloud.datastream.v1.ListRoutesRequest\x1a..google.cloud.datastream.v1.ListRoutesResponse\"P\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x41\x12?/v1/{parent=projects/*/locations/*/privateConnections/*}/routes\x12\xd9\x01\n\x0b\x44\x65leteRoute\x12..google.cloud.datastream.v1.DeleteRouteRequest\x1a\x1d.google.longrunning.Operation\"{\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x41*?/v1/{name=projects/*/locations/*/privateConnections/*/routes/*}\x1aM\xca\x41\x19\x64\x61tastream.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xcd\x01\n\x1e\x63om.google.cloud.datastream.v1B\x0f\x44\x61tastreamProtoP\x01Z>cloud.google.com/go/datastream/apiv1/datastreampb;datastreampb\xaa\x02\x1aGoogle.Cloud.Datastream.V1\xca\x02\x1aGoogle\\Cloud\\Datastream\\V1\xea\x02\x1dGoogle::Cloud::Datastream::V1b\x06proto3"
19
19
 
20
20
  pool = Google::Protobuf::DescriptorPool.generated_pool
21
21
 
@@ -10,7 +10,7 @@ require 'google/protobuf/duration_pb'
10
10
  require 'google/protobuf/timestamp_pb'
11
11
 
12
12
 
13
- descriptor_data = "\n5google/cloud/datastream/v1/datastream_resources.proto\x12\x1agoogle.cloud.datastream.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe9\x03\n\rOracleProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1d\n\x10\x64\x61tabase_service\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x62\n\x15\x63onnection_attributes\x18\x06 \x03(\x0b\x32\x43.google.cloud.datastream.v1.OracleProfile.ConnectionAttributesEntry\x12K\n\x11oracle_ssl_config\x18\x07 \x01(\x0b\x32+.google.cloud.datastream.v1.OracleSslConfigB\x03\xe0\x41\x01\x12K\n\x11oracle_asm_config\x18\x08 \x01(\x0b\x32+.google.cloud.datastream.v1.OracleAsmConfigB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\t \x01(\tB\x03\xe0\x41\x01\x1a;\n\x19\x43onnectionAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa5\x03\n\x0fOracleAsmConfig\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\x04port\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x61sm_service\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12i\n\x15\x63onnection_attributes\x18\x06 \x03(\x0b\x32\x45.google.cloud.datastream.v1.OracleAsmConfig.ConnectionAttributesEntryB\x03\xe0\x41\x01\x12K\n\x11oracle_ssl_config\x18\x07 \x01(\x0b\x32+.google.cloud.datastream.v1.OracleSslConfigB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\x08 \x01(\tB\x03\xe0\x41\x01\x1a;\n\x19\x43onnectionAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd1\x01\n\x0cMysqlProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08password\x18\x04 \x01(\tB\x06\xe0\x41\x01\xe0\x41\x04\x12>\n\nssl_config\x18\x05 \x01(\x0b\x32*.google.cloud.datastream.v1.MysqlSslConfig\x12+\n\x1esecret_manager_stored_password\x18\x06 \x01(\tB\x03\xe0\x41\x01\"\xf4\x01\n\x11PostgresqlProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08\x64\x61tabase\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12+\n\x1esecret_manager_stored_password\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12H\n\nssl_config\x18\x07 \x01(\x0b\x32/.google.cloud.datastream.v1.PostgresqlSslConfigB\x03\xe0\x41\x01\"\xa9\x01\n\x10SqlServerProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08\x64\x61tabase\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12+\n\x1esecret_manager_stored_password\x18\x07 \x01(\tB\x03\xe0\x41\x01\"\xbe\x04\n\x11SalesforceProfile\x12\x13\n\x06\x64omain\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12Y\n\x10user_credentials\x18\x02 \x01(\x0b\x32=.google.cloud.datastream.v1.SalesforceProfile.UserCredentialsH\x00\x12j\n\x19oauth2_client_credentials\x18\x03 \x01(\x0b\x32\x45.google.cloud.datastream.v1.SalesforceProfile.Oauth2ClientCredentialsH\x00\x1a\xbc\x01\n\x0fUserCredentials\x12\x15\n\x08username\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0esecurity_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x31\n$secret_manager_stored_security_token\x18\x05 \x01(\tB\x03\xe0\x41\x01\x1a\x7f\n\x17Oauth2ClientCredentials\x12\x16\n\tclient_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rclient_secret\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x30\n#secret_manager_stored_client_secret\x18\x03 \x01(\tB\x03\xe0\x41\x01\x42\r\n\x0b\x63redentials\"4\n\nGcsProfile\x12\x13\n\x06\x62ucket\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\troot_path\x18\x02 \x01(\t\"\x11\n\x0f\x42igQueryProfile\"\x1d\n\x1bStaticServiceIpConnectivity\"\xa8\x01\n\x1c\x46orwardSshTunnelConnectivity\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08username\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x17\n\x08password\x18\x64 \x01(\tB\x03\xe0\x41\x04H\x00\x12\x1a\n\x0bprivate_key\x18\x65 \x01(\tB\x03\xe0\x41\x04H\x00\x42\x17\n\x15\x61uthentication_method\"]\n\x10VpcPeeringConfig\x12\x34\n\x03vpc\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x63ompute.googleapis.com/Networks\x12\x13\n\x06subnet\x18\x02 \x01(\tB\x03\xe0\x41\x02\"\xc9\x06\n\x11PrivateConnection\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12I\n\x06labels\x18\x04 \x03(\x0b\x32\x39.google.cloud.datastream.v1.PrivateConnection.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12G\n\x05state\x18\x06 \x01(\x0e\x32\x33.google.cloud.datastream.v1.PrivateConnection.StateB\x03\xe0\x41\x03\x12\x35\n\x05\x65rror\x18\x07 \x01(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\x12\x1f\n\rsatisfies_pzs\x18\x08 \x01(\x08\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\t \x01(\x08\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x12H\n\x12vpc_peering_config\x18\x64 \x01(\x0b\x32,.google.cloud.datastream.v1.VpcPeeringConfig\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"i\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07\x43REATED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\x12\x0c\n\x08\x44\x45LETING\x10\x04\x12\x14\n\x10\x46\x41ILED_TO_DELETE\x10\x05:\x81\x01\xea\x41~\n+datastream.googleapis.com/PrivateConnection\x12Oprojects/{project}/locations/{location}/privateConnections/{private_connection}B\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"f\n\x13PrivateConnectivity\x12O\n\x12private_connection\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\"\xd6\x03\n\x05Route\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12=\n\x06labels\x18\x04 \x03(\x0b\x32-.google.cloud.datastream.v1.Route.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12 \n\x13\x64\x65stination_address\x18\x06 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x10\x64\x65stination_port\x18\x07 \x01(\x05\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\x85\x01\xea\x41\x81\x01\n\x1f\x64\x61tastream.googleapis.com/Route\x12^projects/{project}/locations/{location}/privateConnections/{private_connection}/routes/{route}\"\xd0\x01\n\x0eMysqlSslConfig\x12\x1a\n\nclient_key\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12\x1b\n\x0e\x63lient_key_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\"\n\x12\x63lient_certificate\x18\x03 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12#\n\x16\x63lient_certificate_set\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1b\n\x0e\x63\x61_certificate\x18\x05 \x01(\tB\x03\xe0\x41\x04\x12\x1f\n\x12\x63\x61_certificate_set\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\"O\n\x0fOracleSslConfig\x12\x1b\n\x0e\x63\x61_certificate\x18\x01 \x01(\tB\x03\xe0\x41\x04\x12\x1f\n\x12\x63\x61_certificate_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\"\xba\x03\n\x13PostgresqlSslConfig\x12\x61\n\x13server_verification\x18\x01 \x01(\x0b\x32\x42.google.cloud.datastream.v1.PostgresqlSslConfig.ServerVerificationH\x00\x12u\n\x1eserver_and_client_verification\x18\x02 \x01(\x0b\x32K.google.cloud.datastream.v1.PostgresqlSslConfig.ServerAndClientVerificationH\x00\x1a\x34\n\x12ServerVerification\x12\x1e\n\x0e\x63\x61_certificate\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x1a}\n\x1bServerAndClientVerification\x12\"\n\x12\x63lient_certificate\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x12\x1a\n\nclient_key\x18\x02 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12\x1e\n\x0e\x63\x61_certificate\x18\x03 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x42\x14\n\x12\x65ncryption_setting\"\xba\n\n\x11\x43onnectionProfile\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12I\n\x06labels\x18\x04 \x03(\x0b\x32\x39.google.cloud.datastream.v1.ConnectionProfile.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\rsatisfies_pzs\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03H\x02\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x07 \x01(\x08\x42\x03\xe0\x41\x03H\x03\x88\x01\x01\x12\x43\n\x0eoracle_profile\x18\x64 \x01(\x0b\x32).google.cloud.datastream.v1.OracleProfileH\x00\x12=\n\x0bgcs_profile\x18\x65 \x01(\x0b\x32&.google.cloud.datastream.v1.GcsProfileH\x00\x12\x41\n\rmysql_profile\x18\x66 \x01(\x0b\x32(.google.cloud.datastream.v1.MysqlProfileH\x00\x12G\n\x10\x62igquery_profile\x18g \x01(\x0b\x32+.google.cloud.datastream.v1.BigQueryProfileH\x00\x12K\n\x12postgresql_profile\x18h \x01(\x0b\x32-.google.cloud.datastream.v1.PostgresqlProfileH\x00\x12J\n\x12sql_server_profile\x18i \x01(\x0b\x32,.google.cloud.datastream.v1.SqlServerProfileH\x00\x12K\n\x12salesforce_profile\x18k \x01(\x0b\x32-.google.cloud.datastream.v1.SalesforceProfileH\x00\x12\x62\n\x1estatic_service_ip_connectivity\x18\xc8\x01 \x01(\x0b\x32\x37.google.cloud.datastream.v1.StaticServiceIpConnectivityH\x01\x12]\n\x18\x66orward_ssh_connectivity\x18\xc9\x01 \x01(\x0b\x32\x38.google.cloud.datastream.v1.ForwardSshTunnelConnectivityH\x01\x12P\n\x14private_connectivity\x18\xca\x01 \x01(\x0b\x32/.google.cloud.datastream.v1.PrivateConnectivityH\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\x81\x01\xea\x41~\n+datastream.googleapis.com/ConnectionProfile\x12Oprojects/{project}/locations/{location}/connectionProfiles/{connection_profile}B\t\n\x07profileB\x0e\n\x0c\x63onnectivityB\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"\xb6\x01\n\x0cOracleColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12\r\n\x05scale\x18\x05 \x01(\x05\x12\x10\n\x08\x65ncoding\x18\x06 \x01(\t\x12\x13\n\x0bprimary_key\x18\x07 \x01(\x08\x12\x10\n\x08nullable\x18\x08 \x01(\x08\x12\x18\n\x10ordinal_position\x18\t \x01(\x05\"^\n\x0bOracleTable\x12\r\n\x05table\x18\x01 \x01(\t\x12@\n\x0eoracle_columns\x18\x02 \x03(\x0b\x32(.google.cloud.datastream.v1.OracleColumn\"^\n\x0cOracleSchema\x12\x0e\n\x06schema\x18\x01 \x01(\t\x12>\n\roracle_tables\x18\x02 \x03(\x0b\x32\'.google.cloud.datastream.v1.OracleTable\"O\n\x0bOracleRdbms\x12@\n\x0eoracle_schemas\x18\x01 \x03(\x0b\x32(.google.cloud.datastream.v1.OracleSchema\"\xbb\x08\n\x12OracleSourceConfig\x12@\n\x0finclude_objects\x18\x01 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbms\x12@\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbms\x12 \n\x18max_concurrent_cdc_tasks\x18\x03 \x01(\x05\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x04 \x01(\x05\x12]\n\x12\x64rop_large_objects\x18\x64 \x01(\x0b\x32?.google.cloud.datastream.v1.OracleSourceConfig.DropLargeObjectsH\x00\x12\x61\n\x14stream_large_objects\x18\x66 \x01(\x0b\x32\x41.google.cloud.datastream.v1.OracleSourceConfig.StreamLargeObjectsH\x00\x12L\n\tlog_miner\x18g \x01(\x0b\x32\x37.google.cloud.datastream.v1.OracleSourceConfig.LogMinerH\x01\x12[\n\x11\x62inary_log_parser\x18h \x01(\x0b\x32>.google.cloud.datastream.v1.OracleSourceConfig.BinaryLogParserH\x01\x1a\x12\n\x10\x44ropLargeObjects\x1a\x14\n\x12StreamLargeObjects\x1a\n\n\x08LogMiner\x1a\x8c\x03\n\x0f\x42inaryLogParser\x12{\n\x1aoracle_asm_log_file_access\x18\x01 \x01(\x0b\x32U.google.cloud.datastream.v1.OracleSourceConfig.BinaryLogParser.OracleAsmLogFileAccessH\x00\x12q\n\x14log_file_directories\x18\x02 \x01(\x0b\x32Q.google.cloud.datastream.v1.OracleSourceConfig.BinaryLogParser.LogFileDirectoriesH\x00\x1a\x18\n\x16OracleAsmLogFileAccess\x1a\\\n\x12LogFileDirectories\x12!\n\x14online_log_directory\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12#\n\x16\x61rchived_log_directory\x18\x02 \x01(\tB\x03\xe0\x41\x02\x42\x11\n\x0flog_file_accessB\x18\n\x16large_objects_handlingB\x0c\n\ncdc_method\"\xa8\x01\n\x10PostgresqlColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12\r\n\x05scale\x18\x05 \x01(\x05\x12\x13\n\x0bprimary_key\x18\x07 \x01(\x08\x12\x10\n\x08nullable\x18\x08 \x01(\x08\x12\x18\n\x10ordinal_position\x18\t \x01(\x05\"j\n\x0fPostgresqlTable\x12\r\n\x05table\x18\x01 \x01(\t\x12H\n\x12postgresql_columns\x18\x02 \x03(\x0b\x32,.google.cloud.datastream.v1.PostgresqlColumn\"j\n\x10PostgresqlSchema\x12\x0e\n\x06schema\x18\x01 \x01(\t\x12\x46\n\x11postgresql_tables\x18\x02 \x03(\x0b\x32+.google.cloud.datastream.v1.PostgresqlTable\"[\n\x0fPostgresqlRdbms\x12H\n\x12postgresql_schemas\x18\x01 \x03(\x0b\x32,.google.cloud.datastream.v1.PostgresqlSchema\"\x87\x02\n\x16PostgresqlSourceConfig\x12\x44\n\x0finclude_objects\x18\x01 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbms\x12\x44\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbms\x12 \n\x10replication_slot\x18\x03 \x01(\tB\x06\xe0\x41\x02\xe0\x41\x05\x12\x18\n\x0bpublication\x18\x04 \x01(\tB\x03\xe0\x41\x02\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x05 \x01(\x05\"\xa7\x01\n\x0fSqlServerColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12\r\n\x05scale\x18\x05 \x01(\x05\x12\x13\n\x0bprimary_key\x18\x06 \x01(\x08\x12\x10\n\x08nullable\x18\x07 \x01(\x08\x12\x18\n\x10ordinal_position\x18\x08 \x01(\x05\"]\n\x0eSqlServerTable\x12\r\n\x05table\x18\x01 \x01(\t\x12<\n\x07\x63olumns\x18\x02 \x03(\x0b\x32+.google.cloud.datastream.v1.SqlServerColumn\"]\n\x0fSqlServerSchema\x12\x0e\n\x06schema\x18\x01 \x01(\t\x12:\n\x06tables\x18\x02 \x03(\x0b\x32*.google.cloud.datastream.v1.SqlServerTable\"N\n\x0eSqlServerRdbms\x12<\n\x07schemas\x18\x01 \x03(\x0b\x32+.google.cloud.datastream.v1.SqlServerSchema\"\x96\x03\n\x15SqlServerSourceConfig\x12\x43\n\x0finclude_objects\x18\x01 \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbms\x12\x43\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbms\x12 \n\x18max_concurrent_cdc_tasks\x18\x03 \x01(\x05\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x04 \x01(\x05\x12P\n\x10transaction_logs\x18\x65 \x01(\x0b\x32\x34.google.cloud.datastream.v1.SqlServerTransactionLogsH\x00\x12J\n\rchange_tables\x18\x66 \x01(\x0b\x32\x31.google.cloud.datastream.v1.SqlServerChangeTablesH\x00\x42\x0c\n\ncdc_method\"\x1a\n\x18SqlServerTransactionLogs\"\x17\n\x15SqlServerChangeTables\"\xb6\x01\n\x0bMysqlColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tcollation\x18\x04 \x01(\t\x12\x13\n\x0bprimary_key\x18\x05 \x01(\x08\x12\x10\n\x08nullable\x18\x06 \x01(\x08\x12\x18\n\x10ordinal_position\x18\x07 \x01(\x05\x12\x11\n\tprecision\x18\x08 \x01(\x05\x12\r\n\x05scale\x18\t \x01(\x05\"[\n\nMysqlTable\x12\r\n\x05table\x18\x01 \x01(\t\x12>\n\rmysql_columns\x18\x02 \x03(\x0b\x32\'.google.cloud.datastream.v1.MysqlColumn\"_\n\rMysqlDatabase\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12<\n\x0cmysql_tables\x18\x02 \x03(\x0b\x32&.google.cloud.datastream.v1.MysqlTable\"P\n\nMysqlRdbms\x12\x42\n\x0fmysql_databases\x18\x01 \x03(\x0b\x32).google.cloud.datastream.v1.MysqlDatabase\"\xad\x03\n\x11MysqlSourceConfig\x12?\n\x0finclude_objects\x18\x01 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbms\x12?\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbms\x12 \n\x18max_concurrent_cdc_tasks\x18\x03 \x01(\x05\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x04 \x01(\x05\x12^\n\x13\x62inary_log_position\x18\x65 \x01(\x0b\x32?.google.cloud.datastream.v1.MysqlSourceConfig.BinaryLogPositionH\x00\x12\x42\n\x04gtid\x18\x66 \x01(\x0b\x32\x32.google.cloud.datastream.v1.MysqlSourceConfig.GtidH\x00\x1a\x13\n\x11\x42inaryLogPosition\x1a\x06\n\x04GtidB\x0c\n\ncdc_method\"\xda\x01\n\x16SalesforceSourceConfig\x12\x42\n\x0finclude_objects\x18\x01 \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrg\x12\x42\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrg\x12\x38\n\x10polling_interval\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x02\"N\n\rSalesforceOrg\x12=\n\x07objects\x18\x01 \x03(\x0b\x32,.google.cloud.datastream.v1.SalesforceObject\"d\n\x10SalesforceObject\x12\x13\n\x0bobject_name\x18\x01 \x01(\t\x12;\n\x06\x66ields\x18\x02 \x03(\x0b\x32+.google.cloud.datastream.v1.SalesforceField\"D\n\x0fSalesforceField\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x10\n\x08nillable\x18\x03 \x01(\x08\"\xa3\x04\n\x0cSourceConfig\x12V\n\x19source_connection_profile\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\x12N\n\x14oracle_source_config\x18\x64 \x01(\x0b\x32..google.cloud.datastream.v1.OracleSourceConfigH\x00\x12L\n\x13mysql_source_config\x18\x65 \x01(\x0b\x32-.google.cloud.datastream.v1.MysqlSourceConfigH\x00\x12V\n\x18postgresql_source_config\x18\x66 \x01(\x0b\x32\x32.google.cloud.datastream.v1.PostgresqlSourceConfigH\x00\x12U\n\x18sql_server_source_config\x18g \x01(\x0b\x32\x31.google.cloud.datastream.v1.SqlServerSourceConfigH\x00\x12V\n\x18salesforce_source_config\x18h \x01(\x0b\x32\x32.google.cloud.datastream.v1.SalesforceSourceConfigH\x00\x42\x16\n\x14source_stream_config\"\x10\n\x0e\x41vroFileFormat\"\xef\x02\n\x0eJsonFileFormat\x12W\n\x12schema_file_format\x18\x01 \x01(\x0e\x32;.google.cloud.datastream.v1.JsonFileFormat.SchemaFileFormat\x12O\n\x0b\x63ompression\x18\x02 \x01(\x0e\x32:.google.cloud.datastream.v1.JsonFileFormat.JsonCompression\"`\n\x10SchemaFileFormat\x12\"\n\x1eSCHEMA_FILE_FORMAT_UNSPECIFIED\x10\x00\x12\x12\n\x0eNO_SCHEMA_FILE\x10\x01\x12\x14\n\x10\x41VRO_SCHEMA_FILE\x10\x02\"Q\n\x0fJsonCompression\x12 \n\x1cJSON_COMPRESSION_UNSPECIFIED\x10\x00\x12\x12\n\x0eNO_COMPRESSION\x10\x01\x12\x08\n\x04GZIP\x10\x02\"\x98\x02\n\x14GcsDestinationConfig\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x18\n\x10\x66ile_rotation_mb\x18\x02 \x01(\x05\x12\x39\n\x16\x66ile_rotation_interval\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x46\n\x10\x61vro_file_format\x18\x64 \x01(\x0b\x32*.google.cloud.datastream.v1.AvroFileFormatH\x00\x12\x46\n\x10json_file_format\x18\x65 \x01(\x0b\x32*.google.cloud.datastream.v1.JsonFileFormatH\x00\x42\r\n\x0b\x66ile_format\"\x9f\n\n\x19\x42igQueryDestinationConfig\x12k\n\x15single_target_dataset\x18\xc9\x01 \x01(\x0b\x32I.google.cloud.datastream.v1.BigQueryDestinationConfig.SingleTargetDatasetH\x00\x12s\n\x19source_hierarchy_datasets\x18\xca\x01 \x01(\x0b\x32M.google.cloud.datastream.v1.BigQueryDestinationConfig.SourceHierarchyDatasetsH\x00\x12\x32\n\x0e\x64\x61ta_freshness\x18\xac\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12Z\n\x0b\x62lmt_config\x18\x01 \x01(\x0b\x32@.google.cloud.datastream.v1.BigQueryDestinationConfig.BlmtConfigB\x03\xe0\x41\x01\x12M\n\x05merge\x18\xad\x02 \x01(\x0b\x32;.google.cloud.datastream.v1.BigQueryDestinationConfig.MergeH\x01\x12X\n\x0b\x61ppend_only\x18\xae\x02 \x01(\x0b\x32@.google.cloud.datastream.v1.BigQueryDestinationConfig.AppendOnlyH\x01\x1a)\n\x13SingleTargetDataset\x12\x12\n\ndataset_id\x18\x01 \x01(\t\x1a\xed\x01\n\x17SourceHierarchyDatasets\x12w\n\x10\x64\x61taset_template\x18\x02 \x01(\x0b\x32].google.cloud.datastream.v1.BigQueryDestinationConfig.SourceHierarchyDatasets.DatasetTemplate\x1aY\n\x0f\x44\x61tasetTemplate\x12\x15\n\x08location\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x11\x64\x61taset_id_prefix\x18\x02 \x01(\t\x12\x14\n\x0ckms_key_name\x18\x03 \x01(\t\x1a\x94\x03\n\nBlmtConfig\x12\x13\n\x06\x62ucket\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\troot_path\x18\x02 \x01(\t\x12\x1c\n\x0f\x63onnection_name\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x65\n\x0b\x66ile_format\x18\x04 \x01(\x0e\x32K.google.cloud.datastream.v1.BigQueryDestinationConfig.BlmtConfig.FileFormatB\x03\xe0\x41\x02\x12g\n\x0ctable_format\x18\x05 \x01(\x0e\x32L.google.cloud.datastream.v1.BigQueryDestinationConfig.BlmtConfig.TableFormatB\x03\xe0\x41\x02\"6\n\nFileFormat\x12\x1b\n\x17\x46ILE_FORMAT_UNSPECIFIED\x10\x00\x12\x0b\n\x07PARQUET\x10\x01\"8\n\x0bTableFormat\x12\x1c\n\x18TABLE_FORMAT_UNSPECIFIED\x10\x00\x12\x0b\n\x07ICEBERG\x10\x01\x1a\x0c\n\nAppendOnly\x1a\x07\n\x05MergeB\x10\n\x0e\x64\x61taset_configB\x0c\n\nwrite_mode\"\xbf\x02\n\x11\x44\x65stinationConfig\x12[\n\x1e\x64\x65stination_connection_profile\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\x12R\n\x16gcs_destination_config\x18\x64 \x01(\x0b\x32\x30.google.cloud.datastream.v1.GcsDestinationConfigH\x00\x12\\\n\x1b\x62igquery_destination_config\x18\x65 \x01(\x0b\x32\x35.google.cloud.datastream.v1.BigQueryDestinationConfigH\x00\x42\x1b\n\x19\x64\x65stination_stream_config\"\x9c\r\n\x06Stream\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12>\n\x06labels\x18\x04 \x03(\x0b\x32..google.cloud.datastream.v1.Stream.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\rsource_config\x18\x06 \x01(\x0b\x32(.google.cloud.datastream.v1.SourceConfigB\x03\xe0\x41\x02\x12N\n\x12\x64\x65stination_config\x18\x07 \x01(\x0b\x32-.google.cloud.datastream.v1.DestinationConfigB\x03\xe0\x41\x02\x12\x37\n\x05state\x18\x08 \x01(\x0e\x32(.google.cloud.datastream.v1.Stream.State\x12N\n\x0c\x62\x61\x63kfill_all\x18\x65 \x01(\x0b\x32\x36.google.cloud.datastream.v1.Stream.BackfillAllStrategyH\x00\x12P\n\rbackfill_none\x18\x66 \x01(\x0b\x32\x37.google.cloud.datastream.v1.Stream.BackfillNoneStrategyH\x00\x12\x36\n\x06\x65rrors\x18\t \x03(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\x12\x31\n\x1f\x63ustomer_managed_encryption_key\x18\n \x01(\tB\x03\xe0\x41\x05H\x01\x88\x01\x01\x12;\n\x12last_recovery_time\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1f\n\rsatisfies_pzs\x18\x0f \x01(\x08\x42\x03\xe0\x41\x03H\x02\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x10 \x01(\x08\x42\x03\xe0\x41\x03H\x03\x88\x01\x01\x1a\xb8\x03\n\x13\x42\x61\x63kfillAllStrategy\x12J\n\x17oracle_excluded_objects\x18\x01 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbmsH\x00\x12H\n\x16mysql_excluded_objects\x18\x02 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbmsH\x00\x12R\n\x1bpostgresql_excluded_objects\x18\x03 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbmsH\x00\x12Q\n\x1bsql_server_excluded_objects\x18\x04 \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbmsH\x00\x12P\n\x1bsalesforce_excluded_objects\x18\x05 \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrgH\x00\x42\x12\n\x10\x65xcluded_objects\x1a\x16\n\x14\x42\x61\x63kfillNoneStrategy\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x99\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bNOT_STARTED\x10\x01\x12\x0b\n\x07RUNNING\x10\x02\x12\n\n\x06PAUSED\x10\x03\x12\x0f\n\x0bMAINTENANCE\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\x12\x16\n\x12\x46\x41ILED_PERMANENTLY\x10\x06\x12\x0c\n\x08STARTING\x10\x07\x12\x0c\n\x08\x44RAINING\x10\x08:_\xea\x41\\\n datastream.googleapis.com/Stream\x12\x38projects/{project}/locations/{location}/streams/{stream}B\x13\n\x11\x62\x61\x63kfill_strategyB\"\n _customer_managed_encryption_keyB\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"\xe5\x03\n\x0cStreamObject\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x36\n\x06\x65rrors\x18\x06 \x03(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\x12=\n\x0c\x62\x61\x63kfill_job\x18\x07 \x01(\x0b\x32\'.google.cloud.datastream.v1.BackfillJob\x12I\n\rsource_object\x18\x08 \x01(\x0b\x32\x32.google.cloud.datastream.v1.SourceObjectIdentifier:v\xea\x41s\n&datastream.googleapis.com/StreamObject\x12Iprojects/{project}/locations/{location}/streams/{stream}/objects/{object}\"\x96\x07\n\x16SourceObjectIdentifier\x12\x66\n\x11oracle_identifier\x18\x01 \x01(\x0b\x32I.google.cloud.datastream.v1.SourceObjectIdentifier.OracleObjectIdentifierH\x00\x12\x64\n\x10mysql_identifier\x18\x02 \x01(\x0b\x32H.google.cloud.datastream.v1.SourceObjectIdentifier.MysqlObjectIdentifierH\x00\x12n\n\x15postgresql_identifier\x18\x03 \x01(\x0b\x32M.google.cloud.datastream.v1.SourceObjectIdentifier.PostgresqlObjectIdentifierH\x00\x12m\n\x15sql_server_identifier\x18\x04 \x01(\x0b\x32L.google.cloud.datastream.v1.SourceObjectIdentifier.SqlServerObjectIdentifierH\x00\x12n\n\x15salesforce_identifier\x18\x05 \x01(\x0b\x32M.google.cloud.datastream.v1.SourceObjectIdentifier.SalesforceObjectIdentifierH\x00\x1a\x41\n\x16OracleObjectIdentifier\x12\x13\n\x06schema\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x45\n\x1aPostgresqlObjectIdentifier\x12\x13\n\x06schema\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x42\n\x15MysqlObjectIdentifier\x12\x15\n\x08\x64\x61tabase\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x44\n\x19SqlServerObjectIdentifier\x12\x13\n\x06schema\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x36\n\x1aSalesforceObjectIdentifier\x12\x18\n\x0bobject_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x42\x13\n\x11source_identifier\"\xff\x03\n\x0b\x42\x61\x63kfillJob\x12\x41\n\x05state\x18\x01 \x01(\x0e\x32-.google.cloud.datastream.v1.BackfillJob.StateB\x03\xe0\x41\x03\x12@\n\x07trigger\x18\x02 \x01(\x0e\x32/.google.cloud.datastream.v1.BackfillJob.Trigger\x12\x38\n\x0flast_start_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x36\n\rlast_end_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x36\n\x06\x65rrors\x18\x05 \x03(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\"\x81\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bNOT_STARTED\x10\x01\x12\x0b\n\x07PENDING\x10\x02\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\x0b\n\x07STOPPED\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\x12\r\n\tCOMPLETED\x10\x06\x12\x0f\n\x0bUNSUPPORTED\x10\x07\"=\n\x07Trigger\x12\x17\n\x13TRIGGER_UNSPECIFIED\x10\x00\x12\r\n\tAUTOMATIC\x10\x01\x12\n\n\x06MANUAL\x10\x02\"\xdd\x01\n\x05\x45rror\x12\x0e\n\x06reason\x18\x01 \x01(\t\x12\x12\n\nerror_uuid\x18\x02 \x01(\t\x12\x0f\n\x07message\x18\x03 \x01(\t\x12.\n\nerror_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12?\n\x07\x64\x65tails\x18\x05 \x03(\x0b\x32..google.cloud.datastream.v1.Error.DetailsEntry\x1a.\n\x0c\x44\x65tailsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"O\n\x10ValidationResult\x12;\n\x0bvalidations\x18\x01 \x03(\x0b\x32&.google.cloud.datastream.v1.Validation\"\x88\x02\n\nValidation\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12@\n\x05state\x18\x02 \x01(\x0e\x32,.google.cloud.datastream.v1.Validation.StateB\x03\xe0\x41\x03\x12>\n\x07message\x18\x03 \x03(\x0b\x32-.google.cloud.datastream.v1.ValidationMessage\x12\x0c\n\x04\x63ode\x18\x04 \x01(\t\"U\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x10\n\x0cNOT_EXECUTED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\n\n\x06PASSED\x10\x03\x12\x0b\n\x07WARNING\x10\x04\"\xae\x02\n\x11ValidationMessage\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x42\n\x05level\x18\x02 \x01(\x0e\x32\x33.google.cloud.datastream.v1.ValidationMessage.Level\x12M\n\x08metadata\x18\x03 \x03(\x0b\x32;.google.cloud.datastream.v1.ValidationMessage.MetadataEntry\x12\x0c\n\x04\x63ode\x18\x04 \x01(\t\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"6\n\x05Level\x12\x15\n\x11LEVEL_UNSPECIFIED\x10\x00\x12\x0b\n\x07WARNING\x10\x01\x12\t\n\x05\x45RROR\x10\x02\"\x80\x06\n\x0b\x43\x64\x63Strategy\x12j\n\x1amost_recent_start_position\x18\x65 \x01(\x0b\x32?.google.cloud.datastream.v1.CdcStrategy.MostRecentStartPositionB\x03\xe0\x41\x01H\x00\x12p\n\x1dnext_available_start_position\x18\x66 \x01(\x0b\x32\x42.google.cloud.datastream.v1.CdcStrategy.NextAvailableStartPositionB\x03\xe0\x41\x01H\x00\x12\x65\n\x17specific_start_position\x18g \x01(\x0b\x32=.google.cloud.datastream.v1.CdcStrategy.SpecificStartPositionB\x03\xe0\x41\x01H\x00\x1a\x19\n\x17MostRecentStartPosition\x1a\x1c\n\x1aNextAvailableStartPosition\x1a\xe0\x02\n\x15SpecificStartPosition\x12J\n\x12mysql_log_position\x18\x65 \x01(\x0b\x32,.google.cloud.datastream.v1.MysqlLogPositionH\x00\x12L\n\x13oracle_scn_position\x18\x66 \x01(\x0b\x32-.google.cloud.datastream.v1.OracleScnPositionH\x00\x12S\n\x17sql_server_lsn_position\x18g \x01(\x0b\x32\x30.google.cloud.datastream.v1.SqlServerLsnPositionH\x00\x12L\n\x13mysql_gtid_position\x18h \x01(\x0b\x32-.google.cloud.datastream.v1.MysqlGtidPositionH\x00\x42\n\n\x08positionB\x10\n\x0estart_position\"(\n\x14SqlServerLsnPosition\x12\x10\n\x03lsn\x18\x01 \x01(\tB\x03\xe0\x41\x02\"%\n\x11OracleScnPosition\x12\x10\n\x03scn\x18\x01 \x01(\x03\x42\x03\xe0\x41\x02\"Z\n\x10MysqlLogPosition\x12\x15\n\x08log_file\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x0clog_position\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x0f\n\r_log_position\"*\n\x11MysqlGtidPosition\x12\x15\n\x08gtid_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x42\xa8\x02\n\x1e\x63om.google.cloud.datastream.v1B\x18\x44\x61tastreamResourcesProtoP\x01Z>cloud.google.com/go/datastream/apiv1/datastreampb;datastreampb\xaa\x02\x1aGoogle.Cloud.Datastream.V1\xca\x02\x1aGoogle\\Cloud\\Datastream\\V1\xea\x02\x1dGoogle::Cloud::Datastream::V1\xea\x41O\n\x1f\x63ompute.googleapis.com/Networks\x12,projects/{project}/global/networks/{network}b\x06proto3"
13
+ descriptor_data = "\n5google/cloud/datastream/v1/datastream_resources.proto\x12\x1agoogle.cloud.datastream.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe9\x03\n\rOracleProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1d\n\x10\x64\x61tabase_service\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x62\n\x15\x63onnection_attributes\x18\x06 \x03(\x0b\x32\x43.google.cloud.datastream.v1.OracleProfile.ConnectionAttributesEntry\x12K\n\x11oracle_ssl_config\x18\x07 \x01(\x0b\x32+.google.cloud.datastream.v1.OracleSslConfigB\x03\xe0\x41\x01\x12K\n\x11oracle_asm_config\x18\x08 \x01(\x0b\x32+.google.cloud.datastream.v1.OracleAsmConfigB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\t \x01(\tB\x03\xe0\x41\x01\x1a;\n\x19\x43onnectionAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa5\x03\n\x0fOracleAsmConfig\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\x04port\x18\x02 \x01(\x05\x42\x03\xe0\x41\x02\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x61sm_service\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12i\n\x15\x63onnection_attributes\x18\x06 \x03(\x0b\x32\x45.google.cloud.datastream.v1.OracleAsmConfig.ConnectionAttributesEntryB\x03\xe0\x41\x01\x12K\n\x11oracle_ssl_config\x18\x07 \x01(\x0b\x32+.google.cloud.datastream.v1.OracleSslConfigB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\x08 \x01(\tB\x03\xe0\x41\x01\x1a;\n\x19\x43onnectionAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd1\x01\n\x0cMysqlProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08password\x18\x04 \x01(\tB\x06\xe0\x41\x01\xe0\x41\x04\x12>\n\nssl_config\x18\x05 \x01(\x0b\x32*.google.cloud.datastream.v1.MysqlSslConfig\x12+\n\x1esecret_manager_stored_password\x18\x06 \x01(\tB\x03\xe0\x41\x01\"\xf4\x01\n\x11PostgresqlProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08\x64\x61tabase\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12+\n\x1esecret_manager_stored_password\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12H\n\nssl_config\x18\x07 \x01(\x0b\x32/.google.cloud.datastream.v1.PostgresqlSslConfigB\x03\xe0\x41\x01\"\xa9\x01\n\x10SqlServerProfile\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x02 \x01(\x05\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08\x64\x61tabase\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12+\n\x1esecret_manager_stored_password\x18\x07 \x01(\tB\x03\xe0\x41\x01\"\xbe\x04\n\x11SalesforceProfile\x12\x13\n\x06\x64omain\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12Y\n\x10user_credentials\x18\x02 \x01(\x0b\x32=.google.cloud.datastream.v1.SalesforceProfile.UserCredentialsH\x00\x12j\n\x19oauth2_client_credentials\x18\x03 \x01(\x0b\x32\x45.google.cloud.datastream.v1.SalesforceProfile.Oauth2ClientCredentialsH\x00\x1a\xbc\x01\n\x0fUserCredentials\x12\x15\n\x08username\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0esecurity_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x31\n$secret_manager_stored_security_token\x18\x05 \x01(\tB\x03\xe0\x41\x01\x1a\x7f\n\x17Oauth2ClientCredentials\x12\x16\n\tclient_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rclient_secret\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x30\n#secret_manager_stored_client_secret\x18\x03 \x01(\tB\x03\xe0\x41\x01\x42\r\n\x0b\x63redentials\"\xdd\x03\n\x0eMongodbProfile\x12\x44\n\x0ehost_addresses\x18\x01 \x03(\x0b\x32\'.google.cloud.datastream.v1.HostAddressB\x03\xe0\x41\x02\x12\x18\n\x0breplica_set\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08password\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12+\n\x1esecret_manager_stored_password\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x45\n\nssl_config\x18\x06 \x01(\x0b\x32,.google.cloud.datastream.v1.MongodbSslConfigB\x03\xe0\x41\x01\x12P\n\x15srv_connection_format\x18\x65 \x01(\x0b\x32/.google.cloud.datastream.v1.SrvConnectionFormatH\x00\x12Z\n\x1astandard_connection_format\x18\x66 \x01(\x0b\x32\x34.google.cloud.datastream.v1.StandardConnectionFormatH\x00\x42\x1b\n\x19mongodb_connection_format\"7\n\x0bHostAddress\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\x04port\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\"\x15\n\x13SrvConnectionFormat\":\n\x18StandardConnectionFormat\x12\x1e\n\x11\x64irect_connection\x18\x01 \x01(\x08\x42\x03\xe0\x41\x01\"4\n\nGcsProfile\x12\x13\n\x06\x62ucket\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\troot_path\x18\x02 \x01(\t\"\x11\n\x0f\x42igQueryProfile\"\x1d\n\x1bStaticServiceIpConnectivity\"\xa8\x01\n\x1c\x46orwardSshTunnelConnectivity\x12\x15\n\x08hostname\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x08username\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04port\x18\x03 \x01(\x05\x12\x17\n\x08password\x18\x64 \x01(\tB\x03\xe0\x41\x04H\x00\x12\x1a\n\x0bprivate_key\x18\x65 \x01(\tB\x03\xe0\x41\x04H\x00\x42\x17\n\x15\x61uthentication_method\"]\n\x10VpcPeeringConfig\x12\x34\n\x03vpc\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1f\x63ompute.googleapis.com/Networks\x12\x13\n\x06subnet\x18\x02 \x01(\tB\x03\xe0\x41\x02\"b\n\x12PscInterfaceConfig\x12L\n\x12network_attachment\x18\x01 \x01(\tB0\xe0\x41\x02\xfa\x41*\n(compute.googleapis.com/NetworkAttachment\"\x97\x07\n\x11PrivateConnection\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12I\n\x06labels\x18\x04 \x03(\x0b\x32\x39.google.cloud.datastream.v1.PrivateConnection.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12G\n\x05state\x18\x06 \x01(\x0e\x32\x33.google.cloud.datastream.v1.PrivateConnection.StateB\x03\xe0\x41\x03\x12\x35\n\x05\x65rror\x18\x07 \x01(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\x12\x1f\n\rsatisfies_pzs\x18\x08 \x01(\x08\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\t \x01(\x08\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x12H\n\x12vpc_peering_config\x18\x64 \x01(\x0b\x32,.google.cloud.datastream.v1.VpcPeeringConfig\x12L\n\x14psc_interface_config\x18\x65 \x01(\x0b\x32..google.cloud.datastream.v1.PscInterfaceConfig\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"i\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07\x43REATED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\x12\x0c\n\x08\x44\x45LETING\x10\x04\x12\x14\n\x10\x46\x41ILED_TO_DELETE\x10\x05:\x81\x01\xea\x41~\n+datastream.googleapis.com/PrivateConnection\x12Oprojects/{project}/locations/{location}/privateConnections/{private_connection}B\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"f\n\x13PrivateConnectivity\x12O\n\x12private_connection\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\"\xd6\x03\n\x05Route\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12=\n\x06labels\x18\x04 \x03(\x0b\x32-.google.cloud.datastream.v1.Route.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12 \n\x13\x64\x65stination_address\x18\x06 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x10\x64\x65stination_port\x18\x07 \x01(\x05\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\x85\x01\xea\x41\x81\x01\n\x1f\x64\x61tastream.googleapis.com/Route\x12^projects/{project}/locations/{location}/privateConnections/{private_connection}/routes/{route}\"\x87\x02\n\x10MongodbSslConfig\x12\x1a\n\nclient_key\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12\x1b\n\x0e\x63lient_key_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\"\n\x12\x63lient_certificate\x18\x03 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12#\n\x16\x63lient_certificate_set\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1e\n\x0e\x63\x61_certificate\x18\x05 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12\x1f\n\x12\x63\x61_certificate_set\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\x12\x30\n secret_manager_stored_client_key\x18\x07 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\"\xd0\x01\n\x0eMysqlSslConfig\x12\x1a\n\nclient_key\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12\x1b\n\x0e\x63lient_key_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\"\n\x12\x63lient_certificate\x18\x03 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12#\n\x16\x63lient_certificate_set\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1b\n\x0e\x63\x61_certificate\x18\x05 \x01(\tB\x03\xe0\x41\x04\x12\x1f\n\x12\x63\x61_certificate_set\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\"\x83\x01\n\x0fOracleSslConfig\x12\x1b\n\x0e\x63\x61_certificate\x18\x01 \x01(\tB\x03\xe0\x41\x04\x12\x1f\n\x12\x63\x61_certificate_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\x32\n%server_certificate_distinguished_name\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x8f\x04\n\x13PostgresqlSslConfig\x12\x61\n\x13server_verification\x18\x01 \x01(\x0b\x32\x42.google.cloud.datastream.v1.PostgresqlSslConfig.ServerVerificationH\x00\x12u\n\x1eserver_and_client_verification\x18\x02 \x01(\x0b\x32K.google.cloud.datastream.v1.PostgresqlSslConfig.ServerAndClientVerificationH\x00\x1a^\n\x12ServerVerification\x12\x1e\n\x0e\x63\x61_certificate\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x12(\n\x1bserver_certificate_hostname\x18\x02 \x01(\tB\x03\xe0\x41\x01\x1a\xa7\x01\n\x1bServerAndClientVerification\x12\"\n\x12\x63lient_certificate\x18\x01 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x12\x1a\n\nclient_key\x18\x02 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x01\x12\x1e\n\x0e\x63\x61_certificate\x18\x03 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x12(\n\x1bserver_certificate_hostname\x18\x05 \x01(\tB\x03\xe0\x41\x01\x42\x14\n\x12\x65ncryption_setting\"\x81\x0b\n\x11\x43onnectionProfile\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12I\n\x06labels\x18\x04 \x03(\x0b\x32\x39.google.cloud.datastream.v1.ConnectionProfile.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\rsatisfies_pzs\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03H\x02\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x07 \x01(\x08\x42\x03\xe0\x41\x03H\x03\x88\x01\x01\x12\x43\n\x0eoracle_profile\x18\x64 \x01(\x0b\x32).google.cloud.datastream.v1.OracleProfileH\x00\x12=\n\x0bgcs_profile\x18\x65 \x01(\x0b\x32&.google.cloud.datastream.v1.GcsProfileH\x00\x12\x41\n\rmysql_profile\x18\x66 \x01(\x0b\x32(.google.cloud.datastream.v1.MysqlProfileH\x00\x12G\n\x10\x62igquery_profile\x18g \x01(\x0b\x32+.google.cloud.datastream.v1.BigQueryProfileH\x00\x12K\n\x12postgresql_profile\x18h \x01(\x0b\x32-.google.cloud.datastream.v1.PostgresqlProfileH\x00\x12J\n\x12sql_server_profile\x18i \x01(\x0b\x32,.google.cloud.datastream.v1.SqlServerProfileH\x00\x12K\n\x12salesforce_profile\x18k \x01(\x0b\x32-.google.cloud.datastream.v1.SalesforceProfileH\x00\x12\x45\n\x0fmongodb_profile\x18l \x01(\x0b\x32*.google.cloud.datastream.v1.MongodbProfileH\x00\x12\x62\n\x1estatic_service_ip_connectivity\x18\xc8\x01 \x01(\x0b\x32\x37.google.cloud.datastream.v1.StaticServiceIpConnectivityH\x01\x12]\n\x18\x66orward_ssh_connectivity\x18\xc9\x01 \x01(\x0b\x32\x38.google.cloud.datastream.v1.ForwardSshTunnelConnectivityH\x01\x12P\n\x14private_connectivity\x18\xca\x01 \x01(\x0b\x32/.google.cloud.datastream.v1.PrivateConnectivityH\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:\x81\x01\xea\x41~\n+datastream.googleapis.com/ConnectionProfile\x12Oprojects/{project}/locations/{location}/connectionProfiles/{connection_profile}B\t\n\x07profileB\x0e\n\x0c\x63onnectivityB\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"\xb6\x01\n\x0cOracleColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12\r\n\x05scale\x18\x05 \x01(\x05\x12\x10\n\x08\x65ncoding\x18\x06 \x01(\t\x12\x13\n\x0bprimary_key\x18\x07 \x01(\x08\x12\x10\n\x08nullable\x18\x08 \x01(\x08\x12\x18\n\x10ordinal_position\x18\t \x01(\x05\"^\n\x0bOracleTable\x12\r\n\x05table\x18\x01 \x01(\t\x12@\n\x0eoracle_columns\x18\x02 \x03(\x0b\x32(.google.cloud.datastream.v1.OracleColumn\"^\n\x0cOracleSchema\x12\x0e\n\x06schema\x18\x01 \x01(\t\x12>\n\roracle_tables\x18\x02 \x03(\x0b\x32\'.google.cloud.datastream.v1.OracleTable\"O\n\x0bOracleRdbms\x12@\n\x0eoracle_schemas\x18\x01 \x03(\x0b\x32(.google.cloud.datastream.v1.OracleSchema\"\xbb\x08\n\x12OracleSourceConfig\x12@\n\x0finclude_objects\x18\x01 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbms\x12@\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbms\x12 \n\x18max_concurrent_cdc_tasks\x18\x03 \x01(\x05\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x04 \x01(\x05\x12]\n\x12\x64rop_large_objects\x18\x64 \x01(\x0b\x32?.google.cloud.datastream.v1.OracleSourceConfig.DropLargeObjectsH\x00\x12\x61\n\x14stream_large_objects\x18\x66 \x01(\x0b\x32\x41.google.cloud.datastream.v1.OracleSourceConfig.StreamLargeObjectsH\x00\x12L\n\tlog_miner\x18g \x01(\x0b\x32\x37.google.cloud.datastream.v1.OracleSourceConfig.LogMinerH\x01\x12[\n\x11\x62inary_log_parser\x18h \x01(\x0b\x32>.google.cloud.datastream.v1.OracleSourceConfig.BinaryLogParserH\x01\x1a\x12\n\x10\x44ropLargeObjects\x1a\x14\n\x12StreamLargeObjects\x1a\n\n\x08LogMiner\x1a\x8c\x03\n\x0f\x42inaryLogParser\x12{\n\x1aoracle_asm_log_file_access\x18\x01 \x01(\x0b\x32U.google.cloud.datastream.v1.OracleSourceConfig.BinaryLogParser.OracleAsmLogFileAccessH\x00\x12q\n\x14log_file_directories\x18\x02 \x01(\x0b\x32Q.google.cloud.datastream.v1.OracleSourceConfig.BinaryLogParser.LogFileDirectoriesH\x00\x1a\x18\n\x16OracleAsmLogFileAccess\x1a\\\n\x12LogFileDirectories\x12!\n\x14online_log_directory\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12#\n\x16\x61rchived_log_directory\x18\x02 \x01(\tB\x03\xe0\x41\x02\x42\x11\n\x0flog_file_accessB\x18\n\x16large_objects_handlingB\x0c\n\ncdc_method\"\xa8\x01\n\x10PostgresqlColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12\r\n\x05scale\x18\x05 \x01(\x05\x12\x13\n\x0bprimary_key\x18\x07 \x01(\x08\x12\x10\n\x08nullable\x18\x08 \x01(\x08\x12\x18\n\x10ordinal_position\x18\t \x01(\x05\"j\n\x0fPostgresqlTable\x12\r\n\x05table\x18\x01 \x01(\t\x12H\n\x12postgresql_columns\x18\x02 \x03(\x0b\x32,.google.cloud.datastream.v1.PostgresqlColumn\"j\n\x10PostgresqlSchema\x12\x0e\n\x06schema\x18\x01 \x01(\t\x12\x46\n\x11postgresql_tables\x18\x02 \x03(\x0b\x32+.google.cloud.datastream.v1.PostgresqlTable\"[\n\x0fPostgresqlRdbms\x12H\n\x12postgresql_schemas\x18\x01 \x03(\x0b\x32,.google.cloud.datastream.v1.PostgresqlSchema\"\x87\x02\n\x16PostgresqlSourceConfig\x12\x44\n\x0finclude_objects\x18\x01 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbms\x12\x44\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbms\x12 \n\x10replication_slot\x18\x03 \x01(\tB\x06\xe0\x41\x02\xe0\x41\x05\x12\x18\n\x0bpublication\x18\x04 \x01(\tB\x03\xe0\x41\x02\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x05 \x01(\x05\"\xa7\x01\n\x0fSqlServerColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tprecision\x18\x04 \x01(\x05\x12\r\n\x05scale\x18\x05 \x01(\x05\x12\x13\n\x0bprimary_key\x18\x06 \x01(\x08\x12\x10\n\x08nullable\x18\x07 \x01(\x08\x12\x18\n\x10ordinal_position\x18\x08 \x01(\x05\"]\n\x0eSqlServerTable\x12\r\n\x05table\x18\x01 \x01(\t\x12<\n\x07\x63olumns\x18\x02 \x03(\x0b\x32+.google.cloud.datastream.v1.SqlServerColumn\"]\n\x0fSqlServerSchema\x12\x0e\n\x06schema\x18\x01 \x01(\t\x12:\n\x06tables\x18\x02 \x03(\x0b\x32*.google.cloud.datastream.v1.SqlServerTable\"N\n\x0eSqlServerRdbms\x12<\n\x07schemas\x18\x01 \x03(\x0b\x32+.google.cloud.datastream.v1.SqlServerSchema\"\x96\x03\n\x15SqlServerSourceConfig\x12\x43\n\x0finclude_objects\x18\x01 \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbms\x12\x43\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbms\x12 \n\x18max_concurrent_cdc_tasks\x18\x03 \x01(\x05\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x04 \x01(\x05\x12P\n\x10transaction_logs\x18\x65 \x01(\x0b\x32\x34.google.cloud.datastream.v1.SqlServerTransactionLogsH\x00\x12J\n\rchange_tables\x18\x66 \x01(\x0b\x32\x31.google.cloud.datastream.v1.SqlServerChangeTablesH\x00\x42\x0c\n\ncdc_method\"\x1a\n\x18SqlServerTransactionLogs\"\x17\n\x15SqlServerChangeTables\"\xb6\x01\n\x0bMysqlColumn\x12\x0e\n\x06\x63olumn\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x0e\n\x06length\x18\x03 \x01(\x05\x12\x11\n\tcollation\x18\x04 \x01(\t\x12\x13\n\x0bprimary_key\x18\x05 \x01(\x08\x12\x10\n\x08nullable\x18\x06 \x01(\x08\x12\x18\n\x10ordinal_position\x18\x07 \x01(\x05\x12\x11\n\tprecision\x18\x08 \x01(\x05\x12\r\n\x05scale\x18\t \x01(\x05\"[\n\nMysqlTable\x12\r\n\x05table\x18\x01 \x01(\t\x12>\n\rmysql_columns\x18\x02 \x03(\x0b\x32\'.google.cloud.datastream.v1.MysqlColumn\"_\n\rMysqlDatabase\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12<\n\x0cmysql_tables\x18\x02 \x03(\x0b\x32&.google.cloud.datastream.v1.MysqlTable\"P\n\nMysqlRdbms\x12\x42\n\x0fmysql_databases\x18\x01 \x03(\x0b\x32).google.cloud.datastream.v1.MysqlDatabase\"\xad\x03\n\x11MysqlSourceConfig\x12?\n\x0finclude_objects\x18\x01 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbms\x12?\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbms\x12 \n\x18max_concurrent_cdc_tasks\x18\x03 \x01(\x05\x12%\n\x1dmax_concurrent_backfill_tasks\x18\x04 \x01(\x05\x12^\n\x13\x62inary_log_position\x18\x65 \x01(\x0b\x32?.google.cloud.datastream.v1.MysqlSourceConfig.BinaryLogPositionH\x00\x12\x42\n\x04gtid\x18\x66 \x01(\x0b\x32\x32.google.cloud.datastream.v1.MysqlSourceConfig.GtidH\x00\x1a\x13\n\x11\x42inaryLogPosition\x1a\x06\n\x04GtidB\x0c\n\ncdc_method\"\xda\x01\n\x16SalesforceSourceConfig\x12\x42\n\x0finclude_objects\x18\x01 \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrg\x12\x42\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrg\x12\x38\n\x10polling_interval\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x02\"N\n\rSalesforceOrg\x12=\n\x07objects\x18\x01 \x03(\x0b\x32,.google.cloud.datastream.v1.SalesforceObject\"d\n\x10SalesforceObject\x12\x13\n\x0bobject_name\x18\x01 \x01(\t\x12;\n\x06\x66ields\x18\x02 \x03(\x0b\x32+.google.cloud.datastream.v1.SalesforceField\"D\n\x0fSalesforceField\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\tdata_type\x18\x02 \x01(\t\x12\x10\n\x08nillable\x18\x03 \x01(\x08\"\xcb\x01\n\x13MongodbSourceConfig\x12\x43\n\x0finclude_objects\x18\x01 \x01(\x0b\x32*.google.cloud.datastream.v1.MongodbCluster\x12\x43\n\x0f\x65xclude_objects\x18\x02 \x01(\x0b\x32*.google.cloud.datastream.v1.MongodbCluster\x12*\n\x1dmax_concurrent_backfill_tasks\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\"P\n\x0eMongodbCluster\x12>\n\tdatabases\x18\x01 \x03(\x0b\x32+.google.cloud.datastream.v1.MongodbDatabase\"g\n\x0fMongodbDatabase\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x42\n\x0b\x63ollections\x18\x02 \x03(\x0b\x32-.google.cloud.datastream.v1.MongodbCollection\"a\n\x11MongodbCollection\x12\x12\n\ncollection\x18\x01 \x01(\t\x12\x38\n\x06\x66ields\x18\x02 \x03(\x0b\x32(.google.cloud.datastream.v1.MongodbField\"\x1d\n\x0cMongodbField\x12\r\n\x05\x66ield\x18\x01 \x01(\t\"\xf5\x04\n\x0cSourceConfig\x12V\n\x19source_connection_profile\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\x12N\n\x14oracle_source_config\x18\x64 \x01(\x0b\x32..google.cloud.datastream.v1.OracleSourceConfigH\x00\x12L\n\x13mysql_source_config\x18\x65 \x01(\x0b\x32-.google.cloud.datastream.v1.MysqlSourceConfigH\x00\x12V\n\x18postgresql_source_config\x18\x66 \x01(\x0b\x32\x32.google.cloud.datastream.v1.PostgresqlSourceConfigH\x00\x12U\n\x18sql_server_source_config\x18g \x01(\x0b\x32\x31.google.cloud.datastream.v1.SqlServerSourceConfigH\x00\x12V\n\x18salesforce_source_config\x18h \x01(\x0b\x32\x32.google.cloud.datastream.v1.SalesforceSourceConfigH\x00\x12P\n\x15mongodb_source_config\x18i \x01(\x0b\x32/.google.cloud.datastream.v1.MongodbSourceConfigH\x00\x42\x16\n\x14source_stream_config\"\x10\n\x0e\x41vroFileFormat\"\xef\x02\n\x0eJsonFileFormat\x12W\n\x12schema_file_format\x18\x01 \x01(\x0e\x32;.google.cloud.datastream.v1.JsonFileFormat.SchemaFileFormat\x12O\n\x0b\x63ompression\x18\x02 \x01(\x0e\x32:.google.cloud.datastream.v1.JsonFileFormat.JsonCompression\"`\n\x10SchemaFileFormat\x12\"\n\x1eSCHEMA_FILE_FORMAT_UNSPECIFIED\x10\x00\x12\x12\n\x0eNO_SCHEMA_FILE\x10\x01\x12\x14\n\x10\x41VRO_SCHEMA_FILE\x10\x02\"Q\n\x0fJsonCompression\x12 \n\x1cJSON_COMPRESSION_UNSPECIFIED\x10\x00\x12\x12\n\x0eNO_COMPRESSION\x10\x01\x12\x08\n\x04GZIP\x10\x02\"\x98\x02\n\x14GcsDestinationConfig\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x18\n\x10\x66ile_rotation_mb\x18\x02 \x01(\x05\x12\x39\n\x16\x66ile_rotation_interval\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x46\n\x10\x61vro_file_format\x18\x64 \x01(\x0b\x32*.google.cloud.datastream.v1.AvroFileFormatH\x00\x12\x46\n\x10json_file_format\x18\x65 \x01(\x0b\x32*.google.cloud.datastream.v1.JsonFileFormatH\x00\x42\r\n\x0b\x66ile_format\"\xcc\n\n\x19\x42igQueryDestinationConfig\x12k\n\x15single_target_dataset\x18\xc9\x01 \x01(\x0b\x32I.google.cloud.datastream.v1.BigQueryDestinationConfig.SingleTargetDatasetH\x00\x12s\n\x19source_hierarchy_datasets\x18\xca\x01 \x01(\x0b\x32M.google.cloud.datastream.v1.BigQueryDestinationConfig.SourceHierarchyDatasetsH\x00\x12\x32\n\x0e\x64\x61ta_freshness\x18\xac\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12Z\n\x0b\x62lmt_config\x18\x01 \x01(\x0b\x32@.google.cloud.datastream.v1.BigQueryDestinationConfig.BlmtConfigB\x03\xe0\x41\x01\x12M\n\x05merge\x18\xad\x02 \x01(\x0b\x32;.google.cloud.datastream.v1.BigQueryDestinationConfig.MergeH\x01\x12X\n\x0b\x61ppend_only\x18\xae\x02 \x01(\x0b\x32@.google.cloud.datastream.v1.BigQueryDestinationConfig.AppendOnlyH\x01\x1a)\n\x13SingleTargetDataset\x12\x12\n\ndataset_id\x18\x01 \x01(\t\x1a\x9a\x02\n\x17SourceHierarchyDatasets\x12w\n\x10\x64\x61taset_template\x18\x02 \x01(\x0b\x32].google.cloud.datastream.v1.BigQueryDestinationConfig.SourceHierarchyDatasets.DatasetTemplate\x12\x1c\n\nproject_id\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x1aY\n\x0f\x44\x61tasetTemplate\x12\x15\n\x08location\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x11\x64\x61taset_id_prefix\x18\x02 \x01(\t\x12\x14\n\x0ckms_key_name\x18\x03 \x01(\tB\r\n\x0b_project_id\x1a\x94\x03\n\nBlmtConfig\x12\x13\n\x06\x62ucket\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\troot_path\x18\x02 \x01(\t\x12\x1c\n\x0f\x63onnection_name\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x65\n\x0b\x66ile_format\x18\x04 \x01(\x0e\x32K.google.cloud.datastream.v1.BigQueryDestinationConfig.BlmtConfig.FileFormatB\x03\xe0\x41\x02\x12g\n\x0ctable_format\x18\x05 \x01(\x0e\x32L.google.cloud.datastream.v1.BigQueryDestinationConfig.BlmtConfig.TableFormatB\x03\xe0\x41\x02\"6\n\nFileFormat\x12\x1b\n\x17\x46ILE_FORMAT_UNSPECIFIED\x10\x00\x12\x0b\n\x07PARQUET\x10\x01\"8\n\x0bTableFormat\x12\x1c\n\x18TABLE_FORMAT_UNSPECIFIED\x10\x00\x12\x0b\n\x07ICEBERG\x10\x01\x1a\x0c\n\nAppendOnly\x1a\x07\n\x05MergeB\x10\n\x0e\x64\x61taset_configB\x0c\n\nwrite_mode\"\xbf\x02\n\x11\x44\x65stinationConfig\x12[\n\x1e\x64\x65stination_connection_profile\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/ConnectionProfile\x12R\n\x16gcs_destination_config\x18\x64 \x01(\x0b\x32\x30.google.cloud.datastream.v1.GcsDestinationConfigH\x00\x12\\\n\x1b\x62igquery_destination_config\x18\x65 \x01(\x0b\x32\x35.google.cloud.datastream.v1.BigQueryDestinationConfigH\x00\x42\x1b\n\x19\x64\x65stination_stream_config\"\xec\r\n\x06Stream\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12>\n\x06labels\x18\x04 \x03(\x0b\x32..google.cloud.datastream.v1.Stream.LabelsEntry\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\rsource_config\x18\x06 \x01(\x0b\x32(.google.cloud.datastream.v1.SourceConfigB\x03\xe0\x41\x02\x12N\n\x12\x64\x65stination_config\x18\x07 \x01(\x0b\x32-.google.cloud.datastream.v1.DestinationConfigB\x03\xe0\x41\x02\x12\x37\n\x05state\x18\x08 \x01(\x0e\x32(.google.cloud.datastream.v1.Stream.State\x12N\n\x0c\x62\x61\x63kfill_all\x18\x65 \x01(\x0b\x32\x36.google.cloud.datastream.v1.Stream.BackfillAllStrategyH\x00\x12P\n\rbackfill_none\x18\x66 \x01(\x0b\x32\x37.google.cloud.datastream.v1.Stream.BackfillNoneStrategyH\x00\x12\x36\n\x06\x65rrors\x18\t \x03(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\x12\x31\n\x1f\x63ustomer_managed_encryption_key\x18\n \x01(\tB\x03\xe0\x41\x05H\x01\x88\x01\x01\x12;\n\x12last_recovery_time\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1f\n\rsatisfies_pzs\x18\x0f \x01(\x08\x42\x03\xe0\x41\x03H\x02\x88\x01\x01\x12\x1f\n\rsatisfies_pzi\x18\x10 \x01(\x08\x42\x03\xe0\x41\x03H\x03\x88\x01\x01\x1a\x88\x04\n\x13\x42\x61\x63kfillAllStrategy\x12J\n\x17oracle_excluded_objects\x18\x01 \x01(\x0b\x32\'.google.cloud.datastream.v1.OracleRdbmsH\x00\x12H\n\x16mysql_excluded_objects\x18\x02 \x01(\x0b\x32&.google.cloud.datastream.v1.MysqlRdbmsH\x00\x12R\n\x1bpostgresql_excluded_objects\x18\x03 \x01(\x0b\x32+.google.cloud.datastream.v1.PostgresqlRdbmsH\x00\x12Q\n\x1bsql_server_excluded_objects\x18\x04 \x01(\x0b\x32*.google.cloud.datastream.v1.SqlServerRdbmsH\x00\x12P\n\x1bsalesforce_excluded_objects\x18\x05 \x01(\x0b\x32).google.cloud.datastream.v1.SalesforceOrgH\x00\x12N\n\x18mongodb_excluded_objects\x18\x06 \x01(\x0b\x32*.google.cloud.datastream.v1.MongodbClusterH\x00\x42\x12\n\x10\x65xcluded_objects\x1a\x16\n\x14\x42\x61\x63kfillNoneStrategy\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x99\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bNOT_STARTED\x10\x01\x12\x0b\n\x07RUNNING\x10\x02\x12\n\n\x06PAUSED\x10\x03\x12\x0f\n\x0bMAINTENANCE\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\x12\x16\n\x12\x46\x41ILED_PERMANENTLY\x10\x06\x12\x0c\n\x08STARTING\x10\x07\x12\x0c\n\x08\x44RAINING\x10\x08:_\xea\x41\\\n datastream.googleapis.com/Stream\x12\x38projects/{project}/locations/{location}/streams/{stream}B\x13\n\x11\x62\x61\x63kfill_strategyB\"\n _customer_managed_encryption_keyB\x10\n\x0e_satisfies_pzsB\x10\n\x0e_satisfies_pzi\"\xe5\x03\n\x0cStreamObject\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x36\n\x06\x65rrors\x18\x06 \x03(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\x12=\n\x0c\x62\x61\x63kfill_job\x18\x07 \x01(\x0b\x32\'.google.cloud.datastream.v1.BackfillJob\x12I\n\rsource_object\x18\x08 \x01(\x0b\x32\x32.google.cloud.datastream.v1.SourceObjectIdentifier:v\xea\x41s\n&datastream.googleapis.com/StreamObject\x12Iprojects/{project}/locations/{location}/streams/{stream}/objects/{object}\"\xcb\x08\n\x16SourceObjectIdentifier\x12\x66\n\x11oracle_identifier\x18\x01 \x01(\x0b\x32I.google.cloud.datastream.v1.SourceObjectIdentifier.OracleObjectIdentifierH\x00\x12\x64\n\x10mysql_identifier\x18\x02 \x01(\x0b\x32H.google.cloud.datastream.v1.SourceObjectIdentifier.MysqlObjectIdentifierH\x00\x12n\n\x15postgresql_identifier\x18\x03 \x01(\x0b\x32M.google.cloud.datastream.v1.SourceObjectIdentifier.PostgresqlObjectIdentifierH\x00\x12m\n\x15sql_server_identifier\x18\x04 \x01(\x0b\x32L.google.cloud.datastream.v1.SourceObjectIdentifier.SqlServerObjectIdentifierH\x00\x12n\n\x15salesforce_identifier\x18\x05 \x01(\x0b\x32M.google.cloud.datastream.v1.SourceObjectIdentifier.SalesforceObjectIdentifierH\x00\x12h\n\x12mongodb_identifier\x18\x06 \x01(\x0b\x32J.google.cloud.datastream.v1.SourceObjectIdentifier.MongodbObjectIdentifierH\x00\x1a\x41\n\x16OracleObjectIdentifier\x12\x13\n\x06schema\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x45\n\x1aPostgresqlObjectIdentifier\x12\x13\n\x06schema\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x42\n\x15MysqlObjectIdentifier\x12\x15\n\x08\x64\x61tabase\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x44\n\x19SqlServerObjectIdentifier\x12\x13\n\x06schema\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x12\n\x05table\x18\x02 \x01(\tB\x03\xe0\x41\x02\x1a\x36\n\x1aSalesforceObjectIdentifier\x12\x18\n\x0bobject_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x1aI\n\x17MongodbObjectIdentifier\x12\x15\n\x08\x64\x61tabase\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\ncollection\x18\x02 \x01(\tB\x03\xe0\x41\x02\x42\x13\n\x11source_identifier\"\xff\x03\n\x0b\x42\x61\x63kfillJob\x12\x41\n\x05state\x18\x01 \x01(\x0e\x32-.google.cloud.datastream.v1.BackfillJob.StateB\x03\xe0\x41\x03\x12@\n\x07trigger\x18\x02 \x01(\x0e\x32/.google.cloud.datastream.v1.BackfillJob.Trigger\x12\x38\n\x0flast_start_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x36\n\rlast_end_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x36\n\x06\x65rrors\x18\x05 \x03(\x0b\x32!.google.cloud.datastream.v1.ErrorB\x03\xe0\x41\x03\"\x81\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bNOT_STARTED\x10\x01\x12\x0b\n\x07PENDING\x10\x02\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\x0b\n\x07STOPPED\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\x12\r\n\tCOMPLETED\x10\x06\x12\x0f\n\x0bUNSUPPORTED\x10\x07\"=\n\x07Trigger\x12\x17\n\x13TRIGGER_UNSPECIFIED\x10\x00\x12\r\n\tAUTOMATIC\x10\x01\x12\n\n\x06MANUAL\x10\x02\"\xdd\x01\n\x05\x45rror\x12\x0e\n\x06reason\x18\x01 \x01(\t\x12\x12\n\nerror_uuid\x18\x02 \x01(\t\x12\x0f\n\x07message\x18\x03 \x01(\t\x12.\n\nerror_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12?\n\x07\x64\x65tails\x18\x05 \x03(\x0b\x32..google.cloud.datastream.v1.Error.DetailsEntry\x1a.\n\x0c\x44\x65tailsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"O\n\x10ValidationResult\x12;\n\x0bvalidations\x18\x01 \x03(\x0b\x32&.google.cloud.datastream.v1.Validation\"\x88\x02\n\nValidation\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12@\n\x05state\x18\x02 \x01(\x0e\x32,.google.cloud.datastream.v1.Validation.StateB\x03\xe0\x41\x03\x12>\n\x07message\x18\x03 \x03(\x0b\x32-.google.cloud.datastream.v1.ValidationMessage\x12\x0c\n\x04\x63ode\x18\x04 \x01(\t\"U\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x10\n\x0cNOT_EXECUTED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\n\n\x06PASSED\x10\x03\x12\x0b\n\x07WARNING\x10\x04\"\xae\x02\n\x11ValidationMessage\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x42\n\x05level\x18\x02 \x01(\x0e\x32\x33.google.cloud.datastream.v1.ValidationMessage.Level\x12M\n\x08metadata\x18\x03 \x03(\x0b\x32;.google.cloud.datastream.v1.ValidationMessage.MetadataEntry\x12\x0c\n\x04\x63ode\x18\x04 \x01(\t\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"6\n\x05Level\x12\x15\n\x11LEVEL_UNSPECIFIED\x10\x00\x12\x0b\n\x07WARNING\x10\x01\x12\t\n\x05\x45RROR\x10\x02\"\x80\x06\n\x0b\x43\x64\x63Strategy\x12j\n\x1amost_recent_start_position\x18\x65 \x01(\x0b\x32?.google.cloud.datastream.v1.CdcStrategy.MostRecentStartPositionB\x03\xe0\x41\x01H\x00\x12p\n\x1dnext_available_start_position\x18\x66 \x01(\x0b\x32\x42.google.cloud.datastream.v1.CdcStrategy.NextAvailableStartPositionB\x03\xe0\x41\x01H\x00\x12\x65\n\x17specific_start_position\x18g \x01(\x0b\x32=.google.cloud.datastream.v1.CdcStrategy.SpecificStartPositionB\x03\xe0\x41\x01H\x00\x1a\x19\n\x17MostRecentStartPosition\x1a\x1c\n\x1aNextAvailableStartPosition\x1a\xe0\x02\n\x15SpecificStartPosition\x12J\n\x12mysql_log_position\x18\x65 \x01(\x0b\x32,.google.cloud.datastream.v1.MysqlLogPositionH\x00\x12L\n\x13oracle_scn_position\x18\x66 \x01(\x0b\x32-.google.cloud.datastream.v1.OracleScnPositionH\x00\x12S\n\x17sql_server_lsn_position\x18g \x01(\x0b\x32\x30.google.cloud.datastream.v1.SqlServerLsnPositionH\x00\x12L\n\x13mysql_gtid_position\x18h \x01(\x0b\x32-.google.cloud.datastream.v1.MysqlGtidPositionH\x00\x42\n\n\x08positionB\x10\n\x0estart_position\"(\n\x14SqlServerLsnPosition\x12\x10\n\x03lsn\x18\x01 \x01(\tB\x03\xe0\x41\x02\"%\n\x11OracleScnPosition\x12\x10\n\x03scn\x18\x01 \x01(\x03\x42\x03\xe0\x41\x02\"Z\n\x10MysqlLogPosition\x12\x15\n\x08log_file\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x0clog_position\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x0f\n\r_log_position\"*\n\x11MysqlGtidPosition\x12\x15\n\x08gtid_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x42\xa2\x03\n\x1e\x63om.google.cloud.datastream.v1B\x18\x44\x61tastreamResourcesProtoP\x01Z>cloud.google.com/go/datastream/apiv1/datastreampb;datastreampb\xaa\x02\x1aGoogle.Cloud.Datastream.V1\xca\x02\x1aGoogle\\Cloud\\Datastream\\V1\xea\x02\x1dGoogle::Cloud::Datastream::V1\xea\x41O\n\x1f\x63ompute.googleapis.com/Networks\x12,projects/{project}/global/networks/{network}\xea\x41w\n(compute.googleapis.com/NetworkAttachment\x12Kprojects/{project}/regions/{region}/networkAttachments/{network_attachment}b\x06proto3"
14
14
 
15
15
  pool = Google::Protobuf::DescriptorPool.generated_pool
16
16
 
@@ -50,15 +50,21 @@ module Google
50
50
  SalesforceProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SalesforceProfile").msgclass
51
51
  SalesforceProfile::UserCredentials = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SalesforceProfile.UserCredentials").msgclass
52
52
  SalesforceProfile::Oauth2ClientCredentials = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SalesforceProfile.Oauth2ClientCredentials").msgclass
53
+ MongodbProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbProfile").msgclass
54
+ HostAddress = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.HostAddress").msgclass
55
+ SrvConnectionFormat = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SrvConnectionFormat").msgclass
56
+ StandardConnectionFormat = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.StandardConnectionFormat").msgclass
53
57
  GcsProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.GcsProfile").msgclass
54
58
  BigQueryProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.BigQueryProfile").msgclass
55
59
  StaticServiceIpConnectivity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.StaticServiceIpConnectivity").msgclass
56
60
  ForwardSshTunnelConnectivity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.ForwardSshTunnelConnectivity").msgclass
57
61
  VpcPeeringConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.VpcPeeringConfig").msgclass
62
+ PscInterfaceConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PscInterfaceConfig").msgclass
58
63
  PrivateConnection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PrivateConnection").msgclass
59
64
  PrivateConnection::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PrivateConnection.State").enummodule
60
65
  PrivateConnectivity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PrivateConnectivity").msgclass
61
66
  Route = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.Route").msgclass
67
+ MongodbSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbSslConfig").msgclass
62
68
  MysqlSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MysqlSslConfig").msgclass
63
69
  OracleSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.OracleSslConfig").msgclass
64
70
  PostgresqlSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PostgresqlSslConfig").msgclass
@@ -99,6 +105,11 @@ module Google
99
105
  SalesforceOrg = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SalesforceOrg").msgclass
100
106
  SalesforceObject = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SalesforceObject").msgclass
101
107
  SalesforceField = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SalesforceField").msgclass
108
+ MongodbSourceConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbSourceConfig").msgclass
109
+ MongodbCluster = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbCluster").msgclass
110
+ MongodbDatabase = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbDatabase").msgclass
111
+ MongodbCollection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbCollection").msgclass
112
+ MongodbField = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MongodbField").msgclass
102
113
  SourceConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SourceConfig").msgclass
103
114
  AvroFileFormat = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.AvroFileFormat").msgclass
104
115
  JsonFileFormat = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.JsonFileFormat").msgclass
@@ -126,6 +137,7 @@ module Google
126
137
  SourceObjectIdentifier::MysqlObjectIdentifier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SourceObjectIdentifier.MysqlObjectIdentifier").msgclass
127
138
  SourceObjectIdentifier::SqlServerObjectIdentifier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SourceObjectIdentifier.SqlServerObjectIdentifier").msgclass
128
139
  SourceObjectIdentifier::SalesforceObjectIdentifier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SourceObjectIdentifier.SalesforceObjectIdentifier").msgclass
140
+ SourceObjectIdentifier::MongodbObjectIdentifier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.SourceObjectIdentifier.MongodbObjectIdentifier").msgclass
129
141
  BackfillJob = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.BackfillJob").msgclass
130
142
  BackfillJob::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.BackfillJob.State").enummodule
131
143
  BackfillJob::Trigger = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.BackfillJob.Trigger").enummodule
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Datastream
23
23
  module V1
24
- VERSION = "1.2.1"
24
+ VERSION = "1.3.0"
25
25
  end
26
26
  end
27
27
  end
@@ -51,22 +51,32 @@ module Google
51
51
  # @return [::Google::Cloud::Datastream::V1::OracleRdbms]
52
52
  # Oracle RDBMS to enrich with child data objects and metadata.
53
53
  #
54
- # Note: The following fields are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
54
+ # Note: The following fields are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
55
55
  # @!attribute [rw] mysql_rdbms
56
56
  # @return [::Google::Cloud::Datastream::V1::MysqlRdbms]
57
57
  # MySQL RDBMS to enrich with child data objects and metadata.
58
58
  #
59
- # Note: The following fields are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
59
+ # Note: The following fields are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
60
60
  # @!attribute [rw] postgresql_rdbms
61
61
  # @return [::Google::Cloud::Datastream::V1::PostgresqlRdbms]
62
62
  # PostgreSQL RDBMS to enrich with child data objects and metadata.
63
63
  #
64
- # Note: The following fields are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
64
+ # Note: The following fields are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
65
65
  # @!attribute [rw] sql_server_rdbms
66
66
  # @return [::Google::Cloud::Datastream::V1::SqlServerRdbms]
67
67
  # SQLServer RDBMS to enrich with child data objects and metadata.
68
68
  #
69
- # Note: The following fields are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
69
+ # Note: The following fields are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
70
+ # @!attribute [rw] salesforce_org
71
+ # @return [::Google::Cloud::Datastream::V1::SalesforceOrg]
72
+ # Salesforce organization to enrich with child data objects and metadata.
73
+ #
74
+ # Note: The following fields are mutually exclusive: `salesforce_org`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
75
+ # @!attribute [rw] mongodb_cluster
76
+ # @return [::Google::Cloud::Datastream::V1::MongodbCluster]
77
+ # MongoDB cluster to enrich with child data objects and metadata.
78
+ #
79
+ # Note: The following fields are mutually exclusive: `mongodb_cluster`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`. If a field in that set is populated, all other fields in the set will automatically be cleared.
70
80
  class DiscoverConnectionProfileRequest
71
81
  include ::Google::Protobuf::MessageExts
72
82
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -77,22 +87,32 @@ module Google
77
87
  # @return [::Google::Cloud::Datastream::V1::OracleRdbms]
78
88
  # Enriched Oracle RDBMS object.
79
89
  #
80
- # Note: The following fields are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
90
+ # Note: The following fields are mutually exclusive: `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
81
91
  # @!attribute [rw] mysql_rdbms
82
92
  # @return [::Google::Cloud::Datastream::V1::MysqlRdbms]
83
93
  # Enriched MySQL RDBMS object.
84
94
  #
85
- # Note: The following fields are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
95
+ # Note: The following fields are mutually exclusive: `mysql_rdbms`, `oracle_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
86
96
  # @!attribute [rw] postgresql_rdbms
87
97
  # @return [::Google::Cloud::Datastream::V1::PostgresqlRdbms]
88
98
  # Enriched PostgreSQL RDBMS object.
89
99
  #
90
- # Note: The following fields are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
100
+ # Note: The following fields are mutually exclusive: `postgresql_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `sql_server_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
91
101
  # @!attribute [rw] sql_server_rdbms
92
102
  # @return [::Google::Cloud::Datastream::V1::SqlServerRdbms]
93
103
  # Enriched SQLServer RDBMS object.
94
104
  #
95
- # Note: The following fields are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`. If a field in that set is populated, all other fields in the set will automatically be cleared.
105
+ # Note: The following fields are mutually exclusive: `sql_server_rdbms`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `salesforce_org`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
106
+ # @!attribute [rw] salesforce_org
107
+ # @return [::Google::Cloud::Datastream::V1::SalesforceOrg]
108
+ # Enriched Salesforce organization.
109
+ #
110
+ # Note: The following fields are mutually exclusive: `salesforce_org`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `mongodb_cluster`. If a field in that set is populated, all other fields in the set will automatically be cleared.
111
+ # @!attribute [rw] mongodb_cluster
112
+ # @return [::Google::Cloud::Datastream::V1::MongodbCluster]
113
+ # Enriched MongoDB cluster.
114
+ #
115
+ # Note: The following fields are mutually exclusive: `mongodb_cluster`, `oracle_rdbms`, `mysql_rdbms`, `postgresql_rdbms`, `sql_server_rdbms`, `salesforce_org`. If a field in that set is populated, all other fields in the set will automatically be cleared.
96
116
  class DiscoverConnectionProfileResponse
97
117
  include ::Google::Protobuf::MessageExts
98
118
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -604,6 +624,11 @@ module Google
604
624
  # @!attribute [rw] force
605
625
  # @return [::Boolean]
606
626
  # Optional. If set to true, will skip validations.
627
+ # @!attribute [rw] validate_only
628
+ # @return [::Boolean]
629
+ # Optional. When supplied with PSC Interface config, will get/create the
630
+ # tenant project required for the customer to allow list and won't actually
631
+ # create the private connection.
607
632
  class CreatePrivateConnectionRequest
608
633
  include ::Google::Protobuf::MessageExts
609
634
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -256,6 +256,77 @@ module Google
256
256
  end
257
257
  end
258
258
 
259
+ # MongoDB profile.
260
+ # @!attribute [rw] host_addresses
261
+ # @return [::Array<::Google::Cloud::Datastream::V1::HostAddress>]
262
+ # Required. List of host addresses for a MongoDB cluster.
263
+ # For SRV connection format, this list must contain exactly one DNS host
264
+ # without a port. For Standard connection format, this list must contain all
265
+ # the required hosts in the cluster with their respective ports.
266
+ # @!attribute [rw] replica_set
267
+ # @return [::String]
268
+ # Optional. Name of the replica set. Only needed for self hosted replica set
269
+ # type MongoDB cluster. For SRV connection format, this field must be empty.
270
+ # For Standard connection format, this field must be specified.
271
+ # @!attribute [rw] username
272
+ # @return [::String]
273
+ # Required. Username for the MongoDB connection.
274
+ # @!attribute [rw] password
275
+ # @return [::String]
276
+ # Optional. Password for the MongoDB connection. Mutually exclusive with the
277
+ # `secret_manager_stored_password` field.
278
+ # @!attribute [rw] secret_manager_stored_password
279
+ # @return [::String]
280
+ # Optional. A reference to a Secret Manager resource name storing the
281
+ # SQLServer connection password. Mutually exclusive with the `password`
282
+ # field.
283
+ # @!attribute [rw] ssl_config
284
+ # @return [::Google::Cloud::Datastream::V1::MongodbSslConfig]
285
+ # Optional. SSL configuration for the MongoDB connection.
286
+ # @!attribute [rw] srv_connection_format
287
+ # @return [::Google::Cloud::Datastream::V1::SrvConnectionFormat]
288
+ # Srv connection format.
289
+ #
290
+ # Note: The following fields are mutually exclusive: `srv_connection_format`, `standard_connection_format`. If a field in that set is populated, all other fields in the set will automatically be cleared.
291
+ # @!attribute [rw] standard_connection_format
292
+ # @return [::Google::Cloud::Datastream::V1::StandardConnectionFormat]
293
+ # Standard connection format.
294
+ #
295
+ # Note: The following fields are mutually exclusive: `standard_connection_format`, `srv_connection_format`. If a field in that set is populated, all other fields in the set will automatically be cleared.
296
+ class MongodbProfile
297
+ include ::Google::Protobuf::MessageExts
298
+ extend ::Google::Protobuf::MessageExts::ClassMethods
299
+ end
300
+
301
+ # A HostAddress represents a transport end point, which is the combination
302
+ # of an IP address or hostname and a port number.
303
+ # @!attribute [rw] hostname
304
+ # @return [::String]
305
+ # Required. Hostname for the connection.
306
+ # @!attribute [rw] port
307
+ # @return [::Integer]
308
+ # Optional. Port for the connection.
309
+ class HostAddress
310
+ include ::Google::Protobuf::MessageExts
311
+ extend ::Google::Protobuf::MessageExts::ClassMethods
312
+ end
313
+
314
+ # Srv connection format.
315
+ class SrvConnectionFormat
316
+ include ::Google::Protobuf::MessageExts
317
+ extend ::Google::Protobuf::MessageExts::ClassMethods
318
+ end
319
+
320
+ # Standard connection format.
321
+ # @!attribute [rw] direct_connection
322
+ # @return [::Boolean]
323
+ # Optional. Specifies whether the client connects directly to the host[:port]
324
+ # in the connection URI.
325
+ class StandardConnectionFormat
326
+ include ::Google::Protobuf::MessageExts
327
+ extend ::Google::Protobuf::MessageExts::ClassMethods
328
+ end
329
+
259
330
  # Cloud Storage bucket profile.
260
331
  # @!attribute [rw] bucket
261
332
  # @return [::String]
@@ -321,6 +392,18 @@ module Google
321
392
  extend ::Google::Protobuf::MessageExts::ClassMethods
322
393
  end
323
394
 
395
+ # The PSC Interface configuration is used to create PSC Interface between
396
+ # Datastream and the consumer's PSC.
397
+ # @!attribute [rw] network_attachment
398
+ # @return [::String]
399
+ # Required. Fully qualified name of the Network Attachment that Datastream
400
+ # will connect to. Format:
401
+ # `projects/{project}/regions/{region}/networkAttachments/{name}`
402
+ class PscInterfaceConfig
403
+ include ::Google::Protobuf::MessageExts
404
+ extend ::Google::Protobuf::MessageExts::ClassMethods
405
+ end
406
+
324
407
  # The PrivateConnection resource is used to establish private connectivity
325
408
  # between Datastream and a customer's network.
326
409
  # @!attribute [r] name
@@ -354,6 +437,9 @@ module Google
354
437
  # @!attribute [rw] vpc_peering_config
355
438
  # @return [::Google::Cloud::Datastream::V1::VpcPeeringConfig]
356
439
  # VPC Peering Config.
440
+ # @!attribute [rw] psc_interface_config
441
+ # @return [::Google::Cloud::Datastream::V1::PscInterfaceConfig]
442
+ # PSC Interface Config.
357
443
  class PrivateConnection
358
444
  include ::Google::Protobuf::MessageExts
359
445
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -436,6 +522,42 @@ module Google
436
522
  end
437
523
  end
438
524
 
525
+ # MongoDB SSL configuration information.
526
+ # @!attribute [rw] client_key
527
+ # @return [::String]
528
+ # Optional. Input only. PEM-encoded private key associated with the Client
529
+ # Certificate. If this field is used then the 'client_certificate' and the
530
+ # 'ca_certificate' fields are mandatory.
531
+ # @!attribute [r] client_key_set
532
+ # @return [::Boolean]
533
+ # Output only. Indicates whether the client_key field is set.
534
+ # @!attribute [rw] client_certificate
535
+ # @return [::String]
536
+ # Optional. Input only. PEM-encoded certificate that will be used by the
537
+ # replica to authenticate against the source database server. If this field
538
+ # is used then the 'client_key' and the 'ca_certificate' fields are
539
+ # mandatory.
540
+ # @!attribute [r] client_certificate_set
541
+ # @return [::Boolean]
542
+ # Output only. Indicates whether the client_certificate field is set.
543
+ # @!attribute [rw] ca_certificate
544
+ # @return [::String]
545
+ # Optional. Input only. PEM-encoded certificate of the CA that signed the
546
+ # source database server's certificate.
547
+ # @!attribute [r] ca_certificate_set
548
+ # @return [::Boolean]
549
+ # Output only. Indicates whether the ca_certificate field is set.
550
+ # @!attribute [rw] secret_manager_stored_client_key
551
+ # @return [::String]
552
+ # Optional. Input only. A reference to a Secret Manager resource name storing
553
+ # the PEM-encoded private key associated with the Client Certificate. If this
554
+ # field is used then the 'client_certificate' and the 'ca_certificate' fields
555
+ # are mandatory. Mutually exclusive with the `client_key` field.
556
+ class MongodbSslConfig
557
+ include ::Google::Protobuf::MessageExts
558
+ extend ::Google::Protobuf::MessageExts::ClassMethods
559
+ end
560
+
439
561
  # MySQL SSL configuration information.
440
562
  # @!attribute [rw] client_key
441
563
  # @return [::String]
@@ -475,6 +597,13 @@ module Google
475
597
  # @return [::Boolean]
476
598
  # Output only. Indicates whether the ca_certificate field has been set for
477
599
  # this Connection-Profile.
600
+ # @!attribute [rw] server_certificate_distinguished_name
601
+ # @return [::String]
602
+ # Optional. The distinguished name (DN) mentioned in the server
603
+ # certificate. This corresponds to SSL_SERVER_CERT_DN sqlnet parameter.
604
+ # Refer
605
+ # https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/local-naming-parameters-in-tns-ora-file.html#GUID-70AB0695-A9AA-4A94-B141-4C605236EEB7
606
+ # If this field is not provided, the DN matching is not enforced.
478
607
  class OracleSslConfig
479
608
  include ::Google::Protobuf::MessageExts
480
609
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -504,6 +633,11 @@ module Google
504
633
  # @!attribute [rw] ca_certificate
505
634
  # @return [::String]
506
635
  # Required. Input only. PEM-encoded server root CA certificate.
636
+ # @!attribute [rw] server_certificate_hostname
637
+ # @return [::String]
638
+ # Optional. The hostname mentioned in the Subject or SAN extension of the
639
+ # server certificate. If this field is not provided, the hostname in the
640
+ # server certificate is not validated.
507
641
  class ServerVerification
508
642
  include ::Google::Protobuf::MessageExts
509
643
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -530,6 +664,11 @@ module Google
530
664
  # @!attribute [rw] ca_certificate
531
665
  # @return [::String]
532
666
  # Required. Input only. PEM-encoded server root CA certificate.
667
+ # @!attribute [rw] server_certificate_hostname
668
+ # @return [::String]
669
+ # Optional. The hostname mentioned in the Subject or SAN extension of the
670
+ # server certificate. If this field is not provided, the hostname in the
671
+ # server certificate is not validated.
533
672
  class ServerAndClientVerification
534
673
  include ::Google::Protobuf::MessageExts
535
674
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -563,37 +702,42 @@ module Google
563
702
  # @return [::Google::Cloud::Datastream::V1::OracleProfile]
564
703
  # Oracle ConnectionProfile configuration.
565
704
  #
566
- # Note: The following fields are mutually exclusive: `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
705
+ # Note: The following fields are mutually exclusive: `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
567
706
  # @!attribute [rw] gcs_profile
568
707
  # @return [::Google::Cloud::Datastream::V1::GcsProfile]
569
708
  # Cloud Storage ConnectionProfile configuration.
570
709
  #
571
- # Note: The following fields are mutually exclusive: `gcs_profile`, `oracle_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
710
+ # Note: The following fields are mutually exclusive: `gcs_profile`, `oracle_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
572
711
  # @!attribute [rw] mysql_profile
573
712
  # @return [::Google::Cloud::Datastream::V1::MysqlProfile]
574
713
  # MySQL ConnectionProfile configuration.
575
714
  #
576
- # Note: The following fields are mutually exclusive: `mysql_profile`, `oracle_profile`, `gcs_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
715
+ # Note: The following fields are mutually exclusive: `mysql_profile`, `oracle_profile`, `gcs_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
577
716
  # @!attribute [rw] bigquery_profile
578
717
  # @return [::Google::Cloud::Datastream::V1::BigQueryProfile]
579
718
  # BigQuery Connection Profile configuration.
580
719
  #
581
- # Note: The following fields are mutually exclusive: `bigquery_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
720
+ # Note: The following fields are mutually exclusive: `bigquery_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
582
721
  # @!attribute [rw] postgresql_profile
583
722
  # @return [::Google::Cloud::Datastream::V1::PostgresqlProfile]
584
723
  # PostgreSQL Connection Profile configuration.
585
724
  #
586
- # Note: The following fields are mutually exclusive: `postgresql_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `sql_server_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
725
+ # Note: The following fields are mutually exclusive: `postgresql_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `sql_server_profile`, `salesforce_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
587
726
  # @!attribute [rw] sql_server_profile
588
727
  # @return [::Google::Cloud::Datastream::V1::SqlServerProfile]
589
728
  # SQLServer Connection Profile configuration.
590
729
  #
591
- # Note: The following fields are mutually exclusive: `sql_server_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
730
+ # Note: The following fields are mutually exclusive: `sql_server_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `salesforce_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
592
731
  # @!attribute [rw] salesforce_profile
593
732
  # @return [::Google::Cloud::Datastream::V1::SalesforceProfile]
594
733
  # Salesforce Connection Profile configuration.
595
734
  #
596
- # Note: The following fields are mutually exclusive: `salesforce_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
735
+ # Note: The following fields are mutually exclusive: `salesforce_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `mongodb_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
736
+ # @!attribute [rw] mongodb_profile
737
+ # @return [::Google::Cloud::Datastream::V1::MongodbProfile]
738
+ # MongoDB Connection Profile configuration.
739
+ #
740
+ # Note: The following fields are mutually exclusive: `mongodb_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`, `sql_server_profile`, `salesforce_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
597
741
  # @!attribute [rw] static_service_ip_connectivity
598
742
  # @return [::Google::Cloud::Datastream::V1::StaticServiceIpConnectivity]
599
743
  # Static Service IP connectivity.
@@ -1146,6 +1290,65 @@ module Google
1146
1290
  extend ::Google::Protobuf::MessageExts::ClassMethods
1147
1291
  end
1148
1292
 
1293
+ # MongoDB source configuration.
1294
+ # @!attribute [rw] include_objects
1295
+ # @return [::Google::Cloud::Datastream::V1::MongodbCluster]
1296
+ # MongoDB collections to include in the stream.
1297
+ # @!attribute [rw] exclude_objects
1298
+ # @return [::Google::Cloud::Datastream::V1::MongodbCluster]
1299
+ # MongoDB collections to exclude from the stream.
1300
+ # @!attribute [rw] max_concurrent_backfill_tasks
1301
+ # @return [::Integer]
1302
+ # Optional. Maximum number of concurrent backfill tasks. The number should be
1303
+ # non-negative and less than or equal to 50. If not set (or set to 0), the
1304
+ # system's default value is used
1305
+ class MongodbSourceConfig
1306
+ include ::Google::Protobuf::MessageExts
1307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1308
+ end
1309
+
1310
+ # MongoDB Cluster structure.
1311
+ # @!attribute [rw] databases
1312
+ # @return [::Array<::Google::Cloud::Datastream::V1::MongodbDatabase>]
1313
+ # MongoDB databases in the cluster.
1314
+ class MongodbCluster
1315
+ include ::Google::Protobuf::MessageExts
1316
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1317
+ end
1318
+
1319
+ # MongoDB Database.
1320
+ # @!attribute [rw] database
1321
+ # @return [::String]
1322
+ # Database name.
1323
+ # @!attribute [rw] collections
1324
+ # @return [::Array<::Google::Cloud::Datastream::V1::MongodbCollection>]
1325
+ # Collections in the database.
1326
+ class MongodbDatabase
1327
+ include ::Google::Protobuf::MessageExts
1328
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1329
+ end
1330
+
1331
+ # MongoDB Collection.
1332
+ # @!attribute [rw] collection
1333
+ # @return [::String]
1334
+ # Collection name.
1335
+ # @!attribute [rw] fields
1336
+ # @return [::Array<::Google::Cloud::Datastream::V1::MongodbField>]
1337
+ # Fields in the collection.
1338
+ class MongodbCollection
1339
+ include ::Google::Protobuf::MessageExts
1340
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1341
+ end
1342
+
1343
+ # MongoDB Field.
1344
+ # @!attribute [rw] field
1345
+ # @return [::String]
1346
+ # Field name.
1347
+ class MongodbField
1348
+ include ::Google::Protobuf::MessageExts
1349
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1350
+ end
1351
+
1149
1352
  # The configuration of the stream source.
1150
1353
  # @!attribute [rw] source_connection_profile
1151
1354
  # @return [::String]
@@ -1155,27 +1358,32 @@ module Google
1155
1358
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig]
1156
1359
  # Oracle data source configuration.
1157
1360
  #
1158
- # Note: The following fields are mutually exclusive: `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `sql_server_source_config`, `salesforce_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1361
+ # Note: The following fields are mutually exclusive: `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `sql_server_source_config`, `salesforce_source_config`, `mongodb_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1159
1362
  # @!attribute [rw] mysql_source_config
1160
1363
  # @return [::Google::Cloud::Datastream::V1::MysqlSourceConfig]
1161
1364
  # MySQL data source configuration.
1162
1365
  #
1163
- # Note: The following fields are mutually exclusive: `mysql_source_config`, `oracle_source_config`, `postgresql_source_config`, `sql_server_source_config`, `salesforce_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1366
+ # Note: The following fields are mutually exclusive: `mysql_source_config`, `oracle_source_config`, `postgresql_source_config`, `sql_server_source_config`, `salesforce_source_config`, `mongodb_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1164
1367
  # @!attribute [rw] postgresql_source_config
1165
1368
  # @return [::Google::Cloud::Datastream::V1::PostgresqlSourceConfig]
1166
1369
  # PostgreSQL data source configuration.
1167
1370
  #
1168
- # Note: The following fields are mutually exclusive: `postgresql_source_config`, `oracle_source_config`, `mysql_source_config`, `sql_server_source_config`, `salesforce_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1371
+ # Note: The following fields are mutually exclusive: `postgresql_source_config`, `oracle_source_config`, `mysql_source_config`, `sql_server_source_config`, `salesforce_source_config`, `mongodb_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1169
1372
  # @!attribute [rw] sql_server_source_config
1170
1373
  # @return [::Google::Cloud::Datastream::V1::SqlServerSourceConfig]
1171
1374
  # SQLServer data source configuration.
1172
1375
  #
1173
- # Note: The following fields are mutually exclusive: `sql_server_source_config`, `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `salesforce_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1376
+ # Note: The following fields are mutually exclusive: `sql_server_source_config`, `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `salesforce_source_config`, `mongodb_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1174
1377
  # @!attribute [rw] salesforce_source_config
1175
1378
  # @return [::Google::Cloud::Datastream::V1::SalesforceSourceConfig]
1176
1379
  # Salesforce data source configuration.
1177
1380
  #
1178
- # Note: The following fields are mutually exclusive: `salesforce_source_config`, `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `sql_server_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1381
+ # Note: The following fields are mutually exclusive: `salesforce_source_config`, `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `sql_server_source_config`, `mongodb_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1382
+ # @!attribute [rw] mongodb_source_config
1383
+ # @return [::Google::Cloud::Datastream::V1::MongodbSourceConfig]
1384
+ # MongoDB data source configuration.
1385
+ #
1386
+ # Note: The following fields are mutually exclusive: `mongodb_source_config`, `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`, `sql_server_source_config`, `salesforce_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1179
1387
  class SourceConfig
1180
1388
  include ::Google::Protobuf::MessageExts
1181
1389
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1300,6 +1508,10 @@ module Google
1300
1508
  # @!attribute [rw] dataset_template
1301
1509
  # @return [::Google::Cloud::Datastream::V1::BigQueryDestinationConfig::SourceHierarchyDatasets::DatasetTemplate]
1302
1510
  # The dataset template to use for dynamic dataset creation.
1511
+ # @!attribute [rw] project_id
1512
+ # @return [::String]
1513
+ # Optional. The project id of the BigQuery dataset. If not specified, the
1514
+ # project will be inferred from the stream resource.
1303
1515
  class SourceHierarchyDatasets
1304
1516
  include ::Google::Protobuf::MessageExts
1305
1517
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1470,27 +1682,32 @@ module Google
1470
1682
  # @return [::Google::Cloud::Datastream::V1::OracleRdbms]
1471
1683
  # Oracle data source objects to avoid backfilling.
1472
1684
  #
1473
- # Note: The following fields are mutually exclusive: `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1685
+ # Note: The following fields are mutually exclusive: `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`, `mongodb_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1474
1686
  # @!attribute [rw] mysql_excluded_objects
1475
1687
  # @return [::Google::Cloud::Datastream::V1::MysqlRdbms]
1476
1688
  # MySQL data source objects to avoid backfilling.
1477
1689
  #
1478
- # Note: The following fields are mutually exclusive: `mysql_excluded_objects`, `oracle_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1690
+ # Note: The following fields are mutually exclusive: `mysql_excluded_objects`, `oracle_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`, `mongodb_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1479
1691
  # @!attribute [rw] postgresql_excluded_objects
1480
1692
  # @return [::Google::Cloud::Datastream::V1::PostgresqlRdbms]
1481
1693
  # PostgreSQL data source objects to avoid backfilling.
1482
1694
  #
1483
- # Note: The following fields are mutually exclusive: `postgresql_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1695
+ # Note: The following fields are mutually exclusive: `postgresql_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`, `mongodb_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1484
1696
  # @!attribute [rw] sql_server_excluded_objects
1485
1697
  # @return [::Google::Cloud::Datastream::V1::SqlServerRdbms]
1486
1698
  # SQLServer data source objects to avoid backfilling
1487
1699
  #
1488
- # Note: The following fields are mutually exclusive: `sql_server_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `salesforce_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1700
+ # Note: The following fields are mutually exclusive: `sql_server_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `salesforce_excluded_objects`, `mongodb_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1489
1701
  # @!attribute [rw] salesforce_excluded_objects
1490
1702
  # @return [::Google::Cloud::Datastream::V1::SalesforceOrg]
1491
1703
  # Salesforce data source objects to avoid backfilling
1492
1704
  #
1493
- # Note: The following fields are mutually exclusive: `salesforce_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1705
+ # Note: The following fields are mutually exclusive: `salesforce_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`, `mongodb_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1706
+ # @!attribute [rw] mongodb_excluded_objects
1707
+ # @return [::Google::Cloud::Datastream::V1::MongodbCluster]
1708
+ # MongoDB data source objects to avoid backfilling
1709
+ #
1710
+ # Note: The following fields are mutually exclusive: `mongodb_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`, `sql_server_excluded_objects`, `salesforce_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1494
1711
  class BackfillAllStrategy
1495
1712
  include ::Google::Protobuf::MessageExts
1496
1713
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1578,27 +1795,32 @@ module Google
1578
1795
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::OracleObjectIdentifier]
1579
1796
  # Oracle data source object identifier.
1580
1797
  #
1581
- # Note: The following fields are mutually exclusive: `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `sql_server_identifier`, `salesforce_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1798
+ # Note: The following fields are mutually exclusive: `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `sql_server_identifier`, `salesforce_identifier`, `mongodb_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1582
1799
  # @!attribute [rw] mysql_identifier
1583
1800
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::MysqlObjectIdentifier]
1584
1801
  # Mysql data source object identifier.
1585
1802
  #
1586
- # Note: The following fields are mutually exclusive: `mysql_identifier`, `oracle_identifier`, `postgresql_identifier`, `sql_server_identifier`, `salesforce_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1803
+ # Note: The following fields are mutually exclusive: `mysql_identifier`, `oracle_identifier`, `postgresql_identifier`, `sql_server_identifier`, `salesforce_identifier`, `mongodb_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1587
1804
  # @!attribute [rw] postgresql_identifier
1588
1805
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::PostgresqlObjectIdentifier]
1589
1806
  # PostgreSQL data source object identifier.
1590
1807
  #
1591
- # Note: The following fields are mutually exclusive: `postgresql_identifier`, `oracle_identifier`, `mysql_identifier`, `sql_server_identifier`, `salesforce_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1808
+ # Note: The following fields are mutually exclusive: `postgresql_identifier`, `oracle_identifier`, `mysql_identifier`, `sql_server_identifier`, `salesforce_identifier`, `mongodb_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1592
1809
  # @!attribute [rw] sql_server_identifier
1593
1810
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::SqlServerObjectIdentifier]
1594
1811
  # SQLServer data source object identifier.
1595
1812
  #
1596
- # Note: The following fields are mutually exclusive: `sql_server_identifier`, `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `salesforce_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1813
+ # Note: The following fields are mutually exclusive: `sql_server_identifier`, `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `salesforce_identifier`, `mongodb_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1597
1814
  # @!attribute [rw] salesforce_identifier
1598
1815
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::SalesforceObjectIdentifier]
1599
1816
  # Salesforce data source object identifier.
1600
1817
  #
1601
- # Note: The following fields are mutually exclusive: `salesforce_identifier`, `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `sql_server_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1818
+ # Note: The following fields are mutually exclusive: `salesforce_identifier`, `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `sql_server_identifier`, `mongodb_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1819
+ # @!attribute [rw] mongodb_identifier
1820
+ # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::MongodbObjectIdentifier]
1821
+ # MongoDB data source object identifier.
1822
+ #
1823
+ # Note: The following fields are mutually exclusive: `mongodb_identifier`, `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`, `sql_server_identifier`, `salesforce_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1602
1824
  class SourceObjectIdentifier
1603
1825
  include ::Google::Protobuf::MessageExts
1604
1826
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1659,6 +1881,18 @@ module Google
1659
1881
  include ::Google::Protobuf::MessageExts
1660
1882
  extend ::Google::Protobuf::MessageExts::ClassMethods
1661
1883
  end
1884
+
1885
+ # MongoDB data source object identifier.
1886
+ # @!attribute [rw] database
1887
+ # @return [::String]
1888
+ # Required. The database name.
1889
+ # @!attribute [rw] collection
1890
+ # @return [::String]
1891
+ # Required. The collection name.
1892
+ class MongodbObjectIdentifier
1893
+ include ::Google::Protobuf::MessageExts
1894
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1895
+ end
1662
1896
  end
1663
1897
 
1664
1898
  # Represents a backfill job on a specific stream object.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-datastream-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC