google-cloud-datastream-v1 0.12.0 → 0.13.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: c960b2d557d89b73c50f44dbedc890c419b3f44bb74daf3fac49d6cbf0b565f7
4
- data.tar.gz: 78f172cfda7a70eff319a91af5d19b903375f2eb4822d87027fbe9bf549423bf
3
+ metadata.gz: 39ce7079ddf9a1078eeb729792d2be749abcdb91ba3cc2f0bff1516aa43f482f
4
+ data.tar.gz: cfca6f0c8a4c5723c52257160f96c8841a7088128e8e46934db7826c22362ca2
5
5
  SHA512:
6
- metadata.gz: e9265dd470e5e0843d5239e20413f9906d9b694989fea61bb0908412d8986f75846b15df566d254520fd4d31a9160ff65538d7c4233d1c286b12423879dca278
7
- data.tar.gz: d411760690defb9af10cbb62cb33c71bff13c557dde38b68da1021afeb6d8c9e593e83d2fc2afffde0d7502eeb2455d2e93cc9395fc4375e7ae897b857bf4c76
6
+ metadata.gz: 027f94683cfa66b99869bd7878d8894f28d90b9253a8063b6eaa2aa03c2e2e11ec382f229017255fd3e9a5be011b755470fd28a6c461169368357c529cb667d2
7
+ data.tar.gz: ef77debc952ea1c543e7b4694f1b1ea02edf3062fec3703ba423be968b9a16ce5440a4b782824afd1824423736b6cc8f73e5d1740ccb3e45581cf8df252ed769
data/README.md CHANGED
@@ -86,7 +86,7 @@ To browse ready to use code samples check [Google Cloud Samples](https://cloud.g
86
86
 
87
87
  ## Supported Ruby Versions
88
88
 
89
- This library is supported on Ruby 2.7+.
89
+ This library is supported on Ruby 3.0+.
90
90
 
91
91
  Google provides official support for Ruby versions that are actively supported
92
92
  by Ruby Core—that is, Ruby versions that are either in normal maintenance or
@@ -815,22 +815,38 @@ module Google
815
815
  # the format `projects/*/locations/*`.
816
816
  # @param connection_profile [::Google::Cloud::Datastream::V1::ConnectionProfile, ::Hash]
817
817
  # An ad-hoc connection profile configuration.
818
+ #
819
+ # Note: The following fields are mutually exclusive: `connection_profile`, `connection_profile_name`. If a field in that set is populated, all other fields in the set will automatically be cleared.
818
820
  # @param connection_profile_name [::String]
819
821
  # A reference to an existing connection profile.
822
+ #
823
+ # Note: The following fields are mutually exclusive: `connection_profile_name`, `connection_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
820
824
  # @param full_hierarchy [::Boolean]
821
825
  # Whether to retrieve the full hierarchy of data objects (TRUE) or only the
822
826
  # current level (FALSE).
827
+ #
828
+ # Note: The following fields are mutually exclusive: `full_hierarchy`, `hierarchy_depth`. If a field in that set is populated, all other fields in the set will automatically be cleared.
823
829
  # @param hierarchy_depth [::Integer]
824
830
  # The number of hierarchy levels below the current level to be retrieved.
831
+ #
832
+ # Note: The following fields are mutually exclusive: `hierarchy_depth`, `full_hierarchy`. If a field in that set is populated, all other fields in the set will automatically be cleared.
825
833
  # @param oracle_rdbms [::Google::Cloud::Datastream::V1::OracleRdbms, ::Hash]
826
834
  # Oracle RDBMS to enrich with child data objects and metadata.
835
+ #
836
+ # 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.
827
837
  # @param mysql_rdbms [::Google::Cloud::Datastream::V1::MysqlRdbms, ::Hash]
828
838
  # MySQL RDBMS to enrich with child data objects and metadata.
839
+ #
840
+ # 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.
829
841
  # @param postgresql_rdbms [::Google::Cloud::Datastream::V1::PostgresqlRdbms, ::Hash]
830
842
  # PostgreSQL RDBMS to enrich with child data objects and metadata.
843
+ #
844
+ # 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.
831
845
  # @param sql_server_rdbms [::Google::Cloud::Datastream::V1::SqlServerRdbms, ::Hash]
832
846
  # SQLServer RDBMS to enrich with child data objects and metadata.
833
847
  #
848
+ # 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.
849
+ #
834
850
  # @yield [response, operation] Access the result along with the RPC operation
835
851
  # @yieldparam response [::Google::Cloud::Datastream::V1::DiscoverConnectionProfileResponse]
836
852
  # @yieldparam operation [::GRPC::ActiveCall::Operation]
@@ -2944,6 +2960,13 @@ module Google
2944
2960
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
2945
2961
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
2946
2962
  # * (`nil`) indicating no credentials
2963
+ #
2964
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
2965
+ # external source for authentication to Google Cloud, you must validate it before
2966
+ # providing it to a Google API client library. Providing an unvalidated credential
2967
+ # configuration to Google APIs can compromise the security of your systems and data.
2968
+ # For more information, refer to [Validate credential configurations from external
2969
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
2947
2970
  # @return [::Object]
2948
2971
  # @!attribute [rw] scope
2949
2972
  # The OAuth scopes
@@ -640,6 +640,13 @@ module Google
640
640
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
641
641
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
642
642
  # * (`nil`) indicating no credentials
643
+ #
644
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
645
+ # external source for authentication to Google Cloud, you must validate it before
646
+ # providing it to a Google API client library. Providing an unvalidated credential
647
+ # configuration to Google APIs can compromise the security of your systems and data.
648
+ # For more information, refer to [Validate credential configurations from external
649
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
643
650
  # @return [::Object]
644
651
  # @!attribute [rw] scope
645
652
  # The OAuth scopes
@@ -772,21 +772,37 @@ module Google
772
772
  # the format `projects/*/locations/*`.
773
773
  # @param connection_profile [::Google::Cloud::Datastream::V1::ConnectionProfile, ::Hash]
774
774
  # An ad-hoc connection profile configuration.
775
+ #
776
+ # Note: The following fields are mutually exclusive: `connection_profile`, `connection_profile_name`. If a field in that set is populated, all other fields in the set will automatically be cleared.
775
777
  # @param connection_profile_name [::String]
776
778
  # A reference to an existing connection profile.
779
+ #
780
+ # Note: The following fields are mutually exclusive: `connection_profile_name`, `connection_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
777
781
  # @param full_hierarchy [::Boolean]
778
782
  # Whether to retrieve the full hierarchy of data objects (TRUE) or only the
779
783
  # current level (FALSE).
784
+ #
785
+ # Note: The following fields are mutually exclusive: `full_hierarchy`, `hierarchy_depth`. If a field in that set is populated, all other fields in the set will automatically be cleared.
780
786
  # @param hierarchy_depth [::Integer]
781
787
  # The number of hierarchy levels below the current level to be retrieved.
788
+ #
789
+ # Note: The following fields are mutually exclusive: `hierarchy_depth`, `full_hierarchy`. If a field in that set is populated, all other fields in the set will automatically be cleared.
782
790
  # @param oracle_rdbms [::Google::Cloud::Datastream::V1::OracleRdbms, ::Hash]
783
791
  # Oracle RDBMS to enrich with child data objects and metadata.
792
+ #
793
+ # 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.
784
794
  # @param mysql_rdbms [::Google::Cloud::Datastream::V1::MysqlRdbms, ::Hash]
785
795
  # MySQL RDBMS to enrich with child data objects and metadata.
796
+ #
797
+ # 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.
786
798
  # @param postgresql_rdbms [::Google::Cloud::Datastream::V1::PostgresqlRdbms, ::Hash]
787
799
  # PostgreSQL RDBMS to enrich with child data objects and metadata.
800
+ #
801
+ # 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.
788
802
  # @param sql_server_rdbms [::Google::Cloud::Datastream::V1::SqlServerRdbms, ::Hash]
789
803
  # SQLServer RDBMS to enrich with child data objects and metadata.
804
+ #
805
+ # 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.
790
806
  # @yield [result, operation] Access the result along with the TransportOperation object
791
807
  # @yieldparam result [::Google::Cloud::Datastream::V1::DiscoverConnectionProfileResponse]
792
808
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -2748,6 +2764,13 @@ module Google
2748
2764
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
2749
2765
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
2750
2766
  # * (`nil`) indicating no credentials
2767
+ #
2768
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
2769
+ # external source for authentication to Google Cloud, you must validate it before
2770
+ # providing it to a Google API client library. Providing an unvalidated credential
2771
+ # configuration to Google APIs can compromise the security of your systems and data.
2772
+ # For more information, refer to [Validate credential configurations from external
2773
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
2751
2774
  # @return [::Object]
2752
2775
  # @!attribute [rw] scope
2753
2776
  # The OAuth scopes
@@ -502,6 +502,13 @@ module Google
502
502
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
503
503
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
504
504
  # * (`nil`) indicating no credentials
505
+ #
506
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
507
+ # external source for authentication to Google Cloud, you must validate it before
508
+ # providing it to a Google API client library. Providing an unvalidated credential
509
+ # configuration to Google APIs can compromise the security of your systems and data.
510
+ # For more information, refer to [Validate credential configurations from external
511
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
505
512
  # @return [::Object]
506
513
  # @!attribute [rw] scope
507
514
  # The OAuth scopes
@@ -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\"\xf8\x02\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\x02\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\x1a;\n\x19\x43onnectionAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa4\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\"}\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\"|\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\"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\"\xe0\x05\n\x11PrivateConnection\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\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\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}\"f\n\x13PrivateConnectivity\x12O\n\x12private_connection\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+datastream.googleapis.com/PrivateConnection\"\xd3\x03\n\x05Route\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\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}\"\xca\x01\n\x0eMysqlSslConfig\x12\x17\n\nclient_key\x18\x01 \x01(\tB\x03\xe0\x41\x04\x12\x1b\n\x0e\x63lient_key_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1f\n\x12\x63lient_certificate\x18\x03 \x01(\tB\x03\xe0\x41\x04\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\"\x84\t\n\x11\x43onnectionProfile\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\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\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\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\x63onnectivity\"\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\"\xcb\x03\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\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\"\xac\x06\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\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\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\"\xe1\x0b\n\x06Stream\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\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\x1a\xe6\x02\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\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_key\"\xe2\x03\n\x0cStreamObject\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\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}\"\xee\x05\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\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\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\"\xb2\x05\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\x92\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\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_positionB\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\"\xf8\x02\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\x1a;\n\x19\x43onnectionAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa4\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\"\xc7\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\x12H\n\nssl_config\x18\x07 \x01(\x0b\x32/.google.cloud.datastream.v1.PostgresqlSslConfigB\x03\xe0\x41\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\"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\"\xe3\x05\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\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}\"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}\"\xca\x01\n\x0eMysqlSslConfig\x12\x17\n\nclient_key\x18\x01 \x01(\tB\x03\xe0\x41\x04\x12\x1b\n\x0e\x63lient_key_set\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1f\n\x12\x63lient_certificate\x18\x03 \x01(\tB\x03\xe0\x41\x04\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\x02\x12\x1e\n\x0e\x63\x61_certificate\x18\x03 \x01(\tB\x06\xe0\x41\x04\xe0\x41\x02\x42\x14\n\x12\x65ncryption_setting\"\x87\t\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\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\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\x63onnectivity\"\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\"\xcb\x03\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\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\"\xac\x06\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\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\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\"\xe4\x0b\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\x1a\xe6\x02\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\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_key\"\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}\"\xee\x05\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\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\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\"\xb2\x05\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\x92\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\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_positionB\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"
14
14
 
15
15
  pool = Google::Protobuf::DescriptorPool.generated_pool
16
16
 
@@ -58,6 +58,9 @@ module Google
58
58
  Route = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.Route").msgclass
59
59
  MysqlSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.MysqlSslConfig").msgclass
60
60
  OracleSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.OracleSslConfig").msgclass
61
+ PostgresqlSslConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PostgresqlSslConfig").msgclass
62
+ PostgresqlSslConfig::ServerVerification = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PostgresqlSslConfig.ServerVerification").msgclass
63
+ PostgresqlSslConfig::ServerAndClientVerification = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.PostgresqlSslConfig.ServerAndClientVerification").msgclass
61
64
  ConnectionProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.ConnectionProfile").msgclass
62
65
  OracleColumn = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.OracleColumn").msgclass
63
66
  OracleTable = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.datastream.v1.OracleTable").msgclass
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Datastream
23
23
  module V1
24
- VERSION = "0.12.0"
24
+ VERSION = "0.13.0"
25
25
  end
26
26
  end
27
27
  end
@@ -29,28 +29,44 @@ module Google
29
29
  # @!attribute [rw] connection_profile
30
30
  # @return [::Google::Cloud::Datastream::V1::ConnectionProfile]
31
31
  # An ad-hoc connection profile configuration.
32
+ #
33
+ # Note: The following fields are mutually exclusive: `connection_profile`, `connection_profile_name`. If a field in that set is populated, all other fields in the set will automatically be cleared.
32
34
  # @!attribute [rw] connection_profile_name
33
35
  # @return [::String]
34
36
  # A reference to an existing connection profile.
37
+ #
38
+ # Note: The following fields are mutually exclusive: `connection_profile_name`, `connection_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
35
39
  # @!attribute [rw] full_hierarchy
36
40
  # @return [::Boolean]
37
41
  # Whether to retrieve the full hierarchy of data objects (TRUE) or only the
38
42
  # current level (FALSE).
43
+ #
44
+ # Note: The following fields are mutually exclusive: `full_hierarchy`, `hierarchy_depth`. If a field in that set is populated, all other fields in the set will automatically be cleared.
39
45
  # @!attribute [rw] hierarchy_depth
40
46
  # @return [::Integer]
41
47
  # The number of hierarchy levels below the current level to be retrieved.
48
+ #
49
+ # Note: The following fields are mutually exclusive: `hierarchy_depth`, `full_hierarchy`. If a field in that set is populated, all other fields in the set will automatically be cleared.
42
50
  # @!attribute [rw] oracle_rdbms
43
51
  # @return [::Google::Cloud::Datastream::V1::OracleRdbms]
44
52
  # Oracle RDBMS to enrich with child data objects and metadata.
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.
45
55
  # @!attribute [rw] mysql_rdbms
46
56
  # @return [::Google::Cloud::Datastream::V1::MysqlRdbms]
47
57
  # MySQL RDBMS to enrich with child data objects and metadata.
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.
48
60
  # @!attribute [rw] postgresql_rdbms
49
61
  # @return [::Google::Cloud::Datastream::V1::PostgresqlRdbms]
50
62
  # PostgreSQL RDBMS to enrich with child data objects and metadata.
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.
51
65
  # @!attribute [rw] sql_server_rdbms
52
66
  # @return [::Google::Cloud::Datastream::V1::SqlServerRdbms]
53
67
  # SQLServer RDBMS to enrich with child data objects and metadata.
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.
54
70
  class DiscoverConnectionProfileRequest
55
71
  include ::Google::Protobuf::MessageExts
56
72
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -60,15 +76,23 @@ module Google
60
76
  # @!attribute [rw] oracle_rdbms
61
77
  # @return [::Google::Cloud::Datastream::V1::OracleRdbms]
62
78
  # Enriched Oracle RDBMS object.
79
+ #
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.
63
81
  # @!attribute [rw] mysql_rdbms
64
82
  # @return [::Google::Cloud::Datastream::V1::MysqlRdbms]
65
83
  # Enriched MySQL RDBMS object.
84
+ #
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.
66
86
  # @!attribute [rw] postgresql_rdbms
67
87
  # @return [::Google::Cloud::Datastream::V1::PostgresqlRdbms]
68
88
  # Enriched PostgreSQL RDBMS object.
89
+ #
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.
69
91
  # @!attribute [rw] sql_server_rdbms
70
92
  # @return [::Google::Cloud::Datastream::V1::SqlServerRdbms]
71
93
  # Enriched SQLServer RDBMS object.
94
+ #
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.
72
96
  class DiscoverConnectionProfileResponse
73
97
  include ::Google::Protobuf::MessageExts
74
98
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -67,6 +67,7 @@ module Google
67
67
  end
68
68
 
69
69
  # Configuration for Oracle Automatic Storage Management (ASM) connection.
70
+ # .
70
71
  # @!attribute [rw] hostname
71
72
  # @return [::String]
72
73
  # Required. Hostname for the Oracle ASM connection.
@@ -78,7 +79,7 @@ module Google
78
79
  # Required. Username for the Oracle ASM connection.
79
80
  # @!attribute [rw] password
80
81
  # @return [::String]
81
- # Required. Password for the Oracle ASM connection.
82
+ # Optional. Password for the Oracle ASM connection.
82
83
  # @!attribute [rw] asm_service
83
84
  # @return [::String]
84
85
  # Required. ASM service name for the Oracle ASM connection.
@@ -142,6 +143,12 @@ module Google
142
143
  # @!attribute [rw] database
143
144
  # @return [::String]
144
145
  # Required. Database for the PostgreSQL connection.
146
+ # @!attribute [rw] ssl_config
147
+ # @return [::Google::Cloud::Datastream::V1::PostgresqlSslConfig]
148
+ # Optional. SSL configuration for the PostgreSQL connection.
149
+ # In case PostgresqlSslConfig is not set, the connection will use the default
150
+ # SSL mode, which is `prefer` (i.e. this mode will only use encryption if
151
+ # enabled from database side, otherwise will use unencrypted communication)
145
152
  class PostgresqlProfile
146
153
  include ::Google::Protobuf::MessageExts
147
154
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -209,9 +216,13 @@ module Google
209
216
  # @!attribute [rw] password
210
217
  # @return [::String]
211
218
  # Input only. SSH password.
219
+ #
220
+ # Note: The following fields are mutually exclusive: `password`, `private_key`. If a field in that set is populated, all other fields in the set will automatically be cleared.
212
221
  # @!attribute [rw] private_key
213
222
  # @return [::String]
214
223
  # Input only. SSH private key.
224
+ #
225
+ # Note: The following fields are mutually exclusive: `private_key`, `password`. If a field in that set is populated, all other fields in the set will automatically be cleared.
215
226
  class ForwardSshTunnelConnectivity
216
227
  include ::Google::Protobuf::MessageExts
217
228
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -235,7 +246,7 @@ module Google
235
246
  # between Datastream and a customer's network.
236
247
  # @!attribute [r] name
237
248
  # @return [::String]
238
- # Output only. The resource's name.
249
+ # Output only. Identifier. The resource's name.
239
250
  # @!attribute [r] create_time
240
251
  # @return [::Google::Protobuf::Timestamp]
241
252
  # Output only. The create time of the resource.
@@ -307,7 +318,7 @@ module Google
307
318
  # used for defining a route for a private connection.
308
319
  # @!attribute [r] name
309
320
  # @return [::String]
310
- # Output only. The resource's name.
321
+ # Output only. Identifier. The resource's name.
311
322
  # @!attribute [r] create_time
312
323
  # @return [::Google::Protobuf::Timestamp]
313
324
  # Output only. The create time of the resource.
@@ -383,11 +394,67 @@ module Google
383
394
  extend ::Google::Protobuf::MessageExts::ClassMethods
384
395
  end
385
396
 
397
+ # PostgreSQL SSL configuration information.
398
+ # @!attribute [rw] server_verification
399
+ # @return [::Google::Cloud::Datastream::V1::PostgresqlSslConfig::ServerVerification]
400
+ #  If this field is set, the communication will be encrypted with TLS
401
+ # encryption and the server identity will be authenticated.
402
+ #
403
+ # Note: The following fields are mutually exclusive: `server_verification`, `server_and_client_verification`. If a field in that set is populated, all other fields in the set will automatically be cleared.
404
+ # @!attribute [rw] server_and_client_verification
405
+ # @return [::Google::Cloud::Datastream::V1::PostgresqlSslConfig::ServerAndClientVerification]
406
+ # If this field is set, the communication will be encrypted with TLS
407
+ # encryption and both the server identity and the client identity will be
408
+ # authenticated.
409
+ #
410
+ # Note: The following fields are mutually exclusive: `server_and_client_verification`, `server_verification`. If a field in that set is populated, all other fields in the set will automatically be cleared.
411
+ class PostgresqlSslConfig
412
+ include ::Google::Protobuf::MessageExts
413
+ extend ::Google::Protobuf::MessageExts::ClassMethods
414
+
415
+ # Message represents the option where Datastream will enforce the encryption
416
+ # and authenticate the server identity. ca_certificate must be set if user
417
+ # selects this option.
418
+ # @!attribute [rw] ca_certificate
419
+ # @return [::String]
420
+ # Required. Input only. PEM-encoded server root CA certificate.
421
+ class ServerVerification
422
+ include ::Google::Protobuf::MessageExts
423
+ extend ::Google::Protobuf::MessageExts::ClassMethods
424
+ end
425
+
426
+ # Message represents the option where Datastream will enforce the encryption
427
+ # and authenticate the server identity as well as the client identity.
428
+ # ca_certificate, client_certificate and client_key must be set if user
429
+ # selects this option.
430
+ # @!attribute [rw] client_certificate
431
+ # @return [::String]
432
+ # Required. Input only. PEM-encoded certificate used by the source database
433
+ # to authenticate the client identity (i.e., the Datastream's identity).
434
+ # This certificate is signed by either a root certificate trusted by the
435
+ # server or one or more intermediate certificates (which is stored with the
436
+ # leaf certificate) to link the this certificate to the trusted root
437
+ # certificate.
438
+ # @!attribute [rw] client_key
439
+ # @return [::String]
440
+ # Required. Input only. PEM-encoded private key associated with the client
441
+ # certificate. This value will be used during the SSL/TLS handshake,
442
+ # allowing the PostgreSQL server to authenticate the client's identity,
443
+ # i.e. identity of the Datastream.
444
+ # @!attribute [rw] ca_certificate
445
+ # @return [::String]
446
+ # Required. Input only. PEM-encoded server root CA certificate.
447
+ class ServerAndClientVerification
448
+ include ::Google::Protobuf::MessageExts
449
+ extend ::Google::Protobuf::MessageExts::ClassMethods
450
+ end
451
+ end
452
+
386
453
  # A set of reusable connection configurations to be used as a source or
387
454
  # destination for a stream.
388
455
  # @!attribute [r] name
389
456
  # @return [::String]
390
- # Output only. The resource's name.
457
+ # Output only. Identifier. The resource's name.
391
458
  # @!attribute [r] create_time
392
459
  # @return [::Google::Protobuf::Timestamp]
393
460
  # Output only. The create time of the resource.
@@ -403,30 +470,48 @@ module Google
403
470
  # @!attribute [rw] oracle_profile
404
471
  # @return [::Google::Cloud::Datastream::V1::OracleProfile]
405
472
  # Oracle ConnectionProfile configuration.
473
+ #
474
+ # Note: The following fields are mutually exclusive: `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.
406
475
  # @!attribute [rw] gcs_profile
407
476
  # @return [::Google::Cloud::Datastream::V1::GcsProfile]
408
477
  # Cloud Storage ConnectionProfile configuration.
478
+ #
479
+ # Note: The following fields are mutually exclusive: `gcs_profile`, `oracle_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.
409
480
  # @!attribute [rw] mysql_profile
410
481
  # @return [::Google::Cloud::Datastream::V1::MysqlProfile]
411
482
  # MySQL ConnectionProfile configuration.
483
+ #
484
+ # Note: The following fields are mutually exclusive: `mysql_profile`, `oracle_profile`, `gcs_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.
412
485
  # @!attribute [rw] bigquery_profile
413
486
  # @return [::Google::Cloud::Datastream::V1::BigQueryProfile]
414
487
  # BigQuery Connection Profile configuration.
488
+ #
489
+ # Note: The following fields are mutually exclusive: `bigquery_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `postgresql_profile`, `sql_server_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
415
490
  # @!attribute [rw] postgresql_profile
416
491
  # @return [::Google::Cloud::Datastream::V1::PostgresqlProfile]
417
492
  # PostgreSQL Connection Profile configuration.
493
+ #
494
+ # Note: The following fields are mutually exclusive: `postgresql_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `sql_server_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
418
495
  # @!attribute [rw] sql_server_profile
419
496
  # @return [::Google::Cloud::Datastream::V1::SqlServerProfile]
420
497
  # SQLServer Connection Profile configuration.
498
+ #
499
+ # Note: The following fields are mutually exclusive: `sql_server_profile`, `oracle_profile`, `gcs_profile`, `mysql_profile`, `bigquery_profile`, `postgresql_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
421
500
  # @!attribute [rw] static_service_ip_connectivity
422
501
  # @return [::Google::Cloud::Datastream::V1::StaticServiceIpConnectivity]
423
502
  # Static Service IP connectivity.
503
+ #
504
+ # Note: The following fields are mutually exclusive: `static_service_ip_connectivity`, `forward_ssh_connectivity`, `private_connectivity`. If a field in that set is populated, all other fields in the set will automatically be cleared.
424
505
  # @!attribute [rw] forward_ssh_connectivity
425
506
  # @return [::Google::Cloud::Datastream::V1::ForwardSshTunnelConnectivity]
426
507
  # Forward SSH tunnel connectivity.
508
+ #
509
+ # Note: The following fields are mutually exclusive: `forward_ssh_connectivity`, `static_service_ip_connectivity`, `private_connectivity`. If a field in that set is populated, all other fields in the set will automatically be cleared.
427
510
  # @!attribute [rw] private_connectivity
428
511
  # @return [::Google::Cloud::Datastream::V1::PrivateConnectivity]
429
512
  # Private connectivity.
513
+ #
514
+ # Note: The following fields are mutually exclusive: `private_connectivity`, `static_service_ip_connectivity`, `forward_ssh_connectivity`. If a field in that set is populated, all other fields in the set will automatically be cleared.
430
515
  class ConnectionProfile
431
516
  include ::Google::Protobuf::MessageExts
432
517
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -527,15 +612,23 @@ module Google
527
612
  # @!attribute [rw] drop_large_objects
528
613
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig::DropLargeObjects]
529
614
  # Drop large object values.
615
+ #
616
+ # Note: The following fields are mutually exclusive: `drop_large_objects`, `stream_large_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
530
617
  # @!attribute [rw] stream_large_objects
531
618
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig::StreamLargeObjects]
532
619
  # Stream large object values.
620
+ #
621
+ # Note: The following fields are mutually exclusive: `stream_large_objects`, `drop_large_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
533
622
  # @!attribute [rw] log_miner
534
623
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig::LogMiner]
535
624
  # Use LogMiner.
625
+ #
626
+ # Note: The following fields are mutually exclusive: `log_miner`, `binary_log_parser`. If a field in that set is populated, all other fields in the set will automatically be cleared.
536
627
  # @!attribute [rw] binary_log_parser
537
628
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig::BinaryLogParser]
538
629
  # Use Binary Log Parser.
630
+ #
631
+ # Note: The following fields are mutually exclusive: `binary_log_parser`, `log_miner`. If a field in that set is populated, all other fields in the set will automatically be cleared.
539
632
  class OracleSourceConfig
540
633
  include ::Google::Protobuf::MessageExts
541
634
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -562,9 +655,13 @@ module Google
562
655
  # @!attribute [rw] oracle_asm_log_file_access
563
656
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig::BinaryLogParser::OracleAsmLogFileAccess]
564
657
  # Use Oracle ASM.
658
+ #
659
+ # Note: The following fields are mutually exclusive: `oracle_asm_log_file_access`, `log_file_directories`. If a field in that set is populated, all other fields in the set will automatically be cleared.
565
660
  # @!attribute [rw] log_file_directories
566
661
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig::BinaryLogParser::LogFileDirectories]
567
662
  # Use Oracle directories.
663
+ #
664
+ # Note: The following fields are mutually exclusive: `log_file_directories`, `oracle_asm_log_file_access`. If a field in that set is populated, all other fields in the set will automatically be cleared.
568
665
  class BinaryLogParser
569
666
  include ::Google::Protobuf::MessageExts
570
667
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -760,9 +857,13 @@ module Google
760
857
  # @!attribute [rw] transaction_logs
761
858
  # @return [::Google::Cloud::Datastream::V1::SqlServerTransactionLogs]
762
859
  # CDC reader reads from transaction logs.
860
+ #
861
+ # Note: The following fields are mutually exclusive: `transaction_logs`, `change_tables`. If a field in that set is populated, all other fields in the set will automatically be cleared.
763
862
  # @!attribute [rw] change_tables
764
863
  # @return [::Google::Cloud::Datastream::V1::SqlServerChangeTables]
765
864
  # CDC reader reads from change tables.
865
+ #
866
+ # Note: The following fields are mutually exclusive: `change_tables`, `transaction_logs`. If a field in that set is populated, all other fields in the set will automatically be cleared.
766
867
  class SqlServerSourceConfig
767
868
  include ::Google::Protobuf::MessageExts
768
869
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -868,9 +969,13 @@ module Google
868
969
  # @!attribute [rw] binary_log_position
869
970
  # @return [::Google::Cloud::Datastream::V1::MysqlSourceConfig::BinaryLogPosition]
870
971
  # Use Binary log position based replication.
972
+ #
973
+ # Note: The following fields are mutually exclusive: `binary_log_position`, `gtid`. If a field in that set is populated, all other fields in the set will automatically be cleared.
871
974
  # @!attribute [rw] gtid
872
975
  # @return [::Google::Cloud::Datastream::V1::MysqlSourceConfig::Gtid]
873
976
  # Use GTID based replication.
977
+ #
978
+ # Note: The following fields are mutually exclusive: `gtid`, `binary_log_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
874
979
  class MysqlSourceConfig
875
980
  include ::Google::Protobuf::MessageExts
876
981
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -896,15 +1001,23 @@ module Google
896
1001
  # @!attribute [rw] oracle_source_config
897
1002
  # @return [::Google::Cloud::Datastream::V1::OracleSourceConfig]
898
1003
  # Oracle data source configuration.
1004
+ #
1005
+ # Note: The following fields are mutually exclusive: `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.
899
1006
  # @!attribute [rw] mysql_source_config
900
1007
  # @return [::Google::Cloud::Datastream::V1::MysqlSourceConfig]
901
1008
  # MySQL data source configuration.
1009
+ #
1010
+ # Note: The following fields are mutually exclusive: `mysql_source_config`, `oracle_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.
902
1011
  # @!attribute [rw] postgresql_source_config
903
1012
  # @return [::Google::Cloud::Datastream::V1::PostgresqlSourceConfig]
904
1013
  # PostgreSQL data source configuration.
1014
+ #
1015
+ # Note: The following fields are mutually exclusive: `postgresql_source_config`, `oracle_source_config`, `mysql_source_config`, `sql_server_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
905
1016
  # @!attribute [rw] sql_server_source_config
906
1017
  # @return [::Google::Cloud::Datastream::V1::SqlServerSourceConfig]
907
1018
  # SQLServer data source configuration.
1019
+ #
1020
+ # Note: The following fields are mutually exclusive: `sql_server_source_config`, `oracle_source_config`, `mysql_source_config`, `postgresql_source_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
908
1021
  class SourceConfig
909
1022
  include ::Google::Protobuf::MessageExts
910
1023
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -967,9 +1080,13 @@ module Google
967
1080
  # @!attribute [rw] avro_file_format
968
1081
  # @return [::Google::Cloud::Datastream::V1::AvroFileFormat]
969
1082
  # AVRO file format configuration.
1083
+ #
1084
+ # Note: The following fields are mutually exclusive: `avro_file_format`, `json_file_format`. If a field in that set is populated, all other fields in the set will automatically be cleared.
970
1085
  # @!attribute [rw] json_file_format
971
1086
  # @return [::Google::Cloud::Datastream::V1::JsonFileFormat]
972
1087
  # JSON file format configuration.
1088
+ #
1089
+ # Note: The following fields are mutually exclusive: `json_file_format`, `avro_file_format`. If a field in that set is populated, all other fields in the set will automatically be cleared.
973
1090
  class GcsDestinationConfig
974
1091
  include ::Google::Protobuf::MessageExts
975
1092
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -979,9 +1096,13 @@ module Google
979
1096
  # @!attribute [rw] single_target_dataset
980
1097
  # @return [::Google::Cloud::Datastream::V1::BigQueryDestinationConfig::SingleTargetDataset]
981
1098
  # Single destination dataset.
1099
+ #
1100
+ # Note: The following fields are mutually exclusive: `single_target_dataset`, `source_hierarchy_datasets`. If a field in that set is populated, all other fields in the set will automatically be cleared.
982
1101
  # @!attribute [rw] source_hierarchy_datasets
983
1102
  # @return [::Google::Cloud::Datastream::V1::BigQueryDestinationConfig::SourceHierarchyDatasets]
984
1103
  # Source hierarchy datasets.
1104
+ #
1105
+ # Note: The following fields are mutually exclusive: `source_hierarchy_datasets`, `single_target_dataset`. If a field in that set is populated, all other fields in the set will automatically be cleared.
985
1106
  # @!attribute [rw] data_freshness
986
1107
  # @return [::Google::Protobuf::Duration]
987
1108
  # The guaranteed data freshness (in seconds) when querying tables created by
@@ -991,9 +1112,13 @@ module Google
991
1112
  # @!attribute [rw] merge
992
1113
  # @return [::Google::Cloud::Datastream::V1::BigQueryDestinationConfig::Merge]
993
1114
  # The standard mode
1115
+ #
1116
+ # Note: The following fields are mutually exclusive: `merge`, `append_only`. If a field in that set is populated, all other fields in the set will automatically be cleared.
994
1117
  # @!attribute [rw] append_only
995
1118
  # @return [::Google::Cloud::Datastream::V1::BigQueryDestinationConfig::AppendOnly]
996
1119
  # Append only mode
1120
+ #
1121
+ # Note: The following fields are mutually exclusive: `append_only`, `merge`. If a field in that set is populated, all other fields in the set will automatically be cleared.
997
1122
  class BigQueryDestinationConfig
998
1123
  include ::Google::Protobuf::MessageExts
999
1124
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1067,9 +1192,13 @@ module Google
1067
1192
  # @!attribute [rw] gcs_destination_config
1068
1193
  # @return [::Google::Cloud::Datastream::V1::GcsDestinationConfig]
1069
1194
  # A configuration for how data should be loaded to Cloud Storage.
1195
+ #
1196
+ # Note: The following fields are mutually exclusive: `gcs_destination_config`, `bigquery_destination_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1070
1197
  # @!attribute [rw] bigquery_destination_config
1071
1198
  # @return [::Google::Cloud::Datastream::V1::BigQueryDestinationConfig]
1072
1199
  # BigQuery destination configuration.
1200
+ #
1201
+ # Note: The following fields are mutually exclusive: `bigquery_destination_config`, `gcs_destination_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1073
1202
  class DestinationConfig
1074
1203
  include ::Google::Protobuf::MessageExts
1075
1204
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1078,7 +1207,7 @@ module Google
1078
1207
  # A resource representing streaming data from a source to a destination.
1079
1208
  # @!attribute [r] name
1080
1209
  # @return [::String]
1081
- # Output only. The stream's name.
1210
+ # Output only. Identifier. The stream's name.
1082
1211
  # @!attribute [r] create_time
1083
1212
  # @return [::Google::Protobuf::Timestamp]
1084
1213
  # Output only. The creation time of the stream.
@@ -1104,9 +1233,13 @@ module Google
1104
1233
  # @return [::Google::Cloud::Datastream::V1::Stream::BackfillAllStrategy]
1105
1234
  # Automatically backfill objects included in the stream source
1106
1235
  # configuration. Specific objects can be excluded.
1236
+ #
1237
+ # Note: The following fields are mutually exclusive: `backfill_all`, `backfill_none`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1107
1238
  # @!attribute [rw] backfill_none
1108
1239
  # @return [::Google::Cloud::Datastream::V1::Stream::BackfillNoneStrategy]
1109
1240
  # Do not automatically backfill any objects.
1241
+ #
1242
+ # Note: The following fields are mutually exclusive: `backfill_none`, `backfill_all`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1110
1243
  # @!attribute [r] errors
1111
1244
  # @return [::Array<::Google::Cloud::Datastream::V1::Error>]
1112
1245
  # Output only. Errors on the Stream.
@@ -1129,15 +1262,23 @@ module Google
1129
1262
  # @!attribute [rw] oracle_excluded_objects
1130
1263
  # @return [::Google::Cloud::Datastream::V1::OracleRdbms]
1131
1264
  # Oracle data source objects to avoid backfilling.
1265
+ #
1266
+ # Note: The following fields are mutually exclusive: `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.
1132
1267
  # @!attribute [rw] mysql_excluded_objects
1133
1268
  # @return [::Google::Cloud::Datastream::V1::MysqlRdbms]
1134
1269
  # MySQL data source objects to avoid backfilling.
1270
+ #
1271
+ # Note: The following fields are mutually exclusive: `mysql_excluded_objects`, `oracle_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.
1135
1272
  # @!attribute [rw] postgresql_excluded_objects
1136
1273
  # @return [::Google::Cloud::Datastream::V1::PostgresqlRdbms]
1137
1274
  # PostgreSQL data source objects to avoid backfilling.
1275
+ #
1276
+ # Note: The following fields are mutually exclusive: `postgresql_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `sql_server_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1138
1277
  # @!attribute [rw] sql_server_excluded_objects
1139
1278
  # @return [::Google::Cloud::Datastream::V1::SqlServerRdbms]
1140
1279
  # SQLServer data source objects to avoid backfilling
1280
+ #
1281
+ # Note: The following fields are mutually exclusive: `sql_server_excluded_objects`, `oracle_excluded_objects`, `mysql_excluded_objects`, `postgresql_excluded_objects`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1141
1282
  class BackfillAllStrategy
1142
1283
  include ::Google::Protobuf::MessageExts
1143
1284
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1196,7 +1337,7 @@ module Google
1196
1337
  # A specific stream object (e.g a specific DB table).
1197
1338
  # @!attribute [r] name
1198
1339
  # @return [::String]
1199
- # Output only. The object resource's name.
1340
+ # Output only. Identifier. The object resource's name.
1200
1341
  # @!attribute [r] create_time
1201
1342
  # @return [::Google::Protobuf::Timestamp]
1202
1343
  # Output only. The creation time of the object.
@@ -1224,15 +1365,23 @@ module Google
1224
1365
  # @!attribute [rw] oracle_identifier
1225
1366
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::OracleObjectIdentifier]
1226
1367
  # Oracle data source object identifier.
1368
+ #
1369
+ # Note: The following fields are mutually exclusive: `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.
1227
1370
  # @!attribute [rw] mysql_identifier
1228
1371
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::MysqlObjectIdentifier]
1229
1372
  # Mysql data source object identifier.
1373
+ #
1374
+ # Note: The following fields are mutually exclusive: `mysql_identifier`, `oracle_identifier`, `postgresql_identifier`, `sql_server_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1230
1375
  # @!attribute [rw] postgresql_identifier
1231
1376
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::PostgresqlObjectIdentifier]
1232
1377
  # PostgreSQL data source object identifier.
1378
+ #
1379
+ # Note: The following fields are mutually exclusive: `postgresql_identifier`, `oracle_identifier`, `mysql_identifier`, `sql_server_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1233
1380
  # @!attribute [rw] sql_server_identifier
1234
1381
  # @return [::Google::Cloud::Datastream::V1::SourceObjectIdentifier::SqlServerObjectIdentifier]
1235
1382
  # SQLServer data source object identifier.
1383
+ #
1384
+ # Note: The following fields are mutually exclusive: `sql_server_identifier`, `oracle_identifier`, `mysql_identifier`, `postgresql_identifier`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1236
1385
  class SourceObjectIdentifier
1237
1386
  include ::Google::Protobuf::MessageExts
1238
1387
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1470,13 +1619,19 @@ module Google
1470
1619
  # @!attribute [rw] most_recent_start_position
1471
1620
  # @return [::Google::Cloud::Datastream::V1::CdcStrategy::MostRecentStartPosition]
1472
1621
  # Optional. Start replicating from the most recent position in the source.
1622
+ #
1623
+ # Note: The following fields are mutually exclusive: `most_recent_start_position`, `next_available_start_position`, `specific_start_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1473
1624
  # @!attribute [rw] next_available_start_position
1474
1625
  # @return [::Google::Cloud::Datastream::V1::CdcStrategy::NextAvailableStartPosition]
1475
1626
  # Optional. Resume replication from the next available position in the
1476
1627
  # source.
1628
+ #
1629
+ # Note: The following fields are mutually exclusive: `next_available_start_position`, `most_recent_start_position`, `specific_start_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1477
1630
  # @!attribute [rw] specific_start_position
1478
1631
  # @return [::Google::Cloud::Datastream::V1::CdcStrategy::SpecificStartPosition]
1479
1632
  # Optional. Start replicating from a specific position in the source.
1633
+ #
1634
+ # Note: The following fields are mutually exclusive: `specific_start_position`, `most_recent_start_position`, `next_available_start_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1480
1635
  class CdcStrategy
1481
1636
  include ::Google::Protobuf::MessageExts
1482
1637
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1499,12 +1654,18 @@ module Google
1499
1654
  # @!attribute [rw] mysql_log_position
1500
1655
  # @return [::Google::Cloud::Datastream::V1::MysqlLogPosition]
1501
1656
  # MySQL specific log position to start replicating from.
1657
+ #
1658
+ # Note: The following fields are mutually exclusive: `mysql_log_position`, `oracle_scn_position`, `sql_server_lsn_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1502
1659
  # @!attribute [rw] oracle_scn_position
1503
1660
  # @return [::Google::Cloud::Datastream::V1::OracleScnPosition]
1504
1661
  # Oracle SCN to start replicating from.
1662
+ #
1663
+ # Note: The following fields are mutually exclusive: `oracle_scn_position`, `mysql_log_position`, `sql_server_lsn_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1505
1664
  # @!attribute [rw] sql_server_lsn_position
1506
1665
  # @return [::Google::Cloud::Datastream::V1::SqlServerLsnPosition]
1507
1666
  # SqlServer LSN to start replicating from.
1667
+ #
1668
+ # Note: The following fields are mutually exclusive: `sql_server_lsn_position`, `mysql_log_position`, `oracle_scn_position`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1508
1669
  class SpecificStartPosition
1509
1670
  include ::Google::Protobuf::MessageExts
1510
1671
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -40,6 +40,8 @@ module Google
40
40
  # @!attribute [rw] error
41
41
  # @return [::Google::Rpc::Status]
42
42
  # The error result of the operation in case of failure or cancellation.
43
+ #
44
+ # Note: The following fields are mutually exclusive: `error`, `response`. If a field in that set is populated, all other fields in the set will automatically be cleared.
43
45
  # @!attribute [rw] response
44
46
  # @return [::Google::Protobuf::Any]
45
47
  # The normal, successful response of the operation. If the original
@@ -50,6 +52,8 @@ module Google
50
52
  # is the original method name. For example, if the original method name
51
53
  # is `TakeSnapshot()`, the inferred response type is
52
54
  # `TakeSnapshotResponse`.
55
+ #
56
+ # Note: The following fields are mutually exclusive: `response`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
53
57
  class Operation
54
58
  include ::Google::Protobuf::MessageExts
55
59
  extend ::Google::Protobuf::MessageExts::ClassMethods
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-datastream-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-12-10 00:00:00.000000000 Z
10
+ date: 2025-01-29 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: gapic-common
@@ -16,7 +15,7 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: 0.24.0
18
+ version: 0.25.0
20
19
  - - "<"
21
20
  - !ruby/object:Gem::Version
22
21
  version: 2.a
@@ -26,7 +25,7 @@ dependencies:
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- version: 0.24.0
28
+ version: 0.25.0
30
29
  - - "<"
31
30
  - !ruby/object:Gem::Version
32
31
  version: 2.a
@@ -135,7 +134,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
135
134
  licenses:
136
135
  - Apache-2.0
137
136
  metadata: {}
138
- post_install_message:
139
137
  rdoc_options: []
140
138
  require_paths:
141
139
  - lib
@@ -143,15 +141,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
143
141
  requirements:
144
142
  - - ">="
145
143
  - !ruby/object:Gem::Version
146
- version: '2.7'
144
+ version: '3.0'
147
145
  required_rubygems_version: !ruby/object:Gem::Requirement
148
146
  requirements:
149
147
  - - ">="
150
148
  - !ruby/object:Gem::Version
151
149
  version: '0'
152
150
  requirements: []
153
- rubygems_version: 3.5.23
154
- signing_key:
151
+ rubygems_version: 3.6.2
155
152
  specification_version: 4
156
153
  summary: API Client library for the Datastream V1 API
157
154
  test_files: []