#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleProfile {
#[prost(string, tag = "1")]
pub hostname: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub port: i32,
#[prost(string, tag = "3")]
pub username: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub password: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub database_service: ::prost::alloc::string::String,
#[prost(map = "string, string", tag = "6")]
pub connection_attributes: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlProfile {
#[prost(string, tag = "1")]
pub hostname: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub port: i32,
#[prost(string, tag = "3")]
pub username: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub password: ::prost::alloc::string::String,
#[prost(message, optional, tag = "5")]
pub ssl_config: ::core::option::Option<MysqlSslConfig>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlProfile {
#[prost(string, tag = "1")]
pub hostname: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub port: i32,
#[prost(string, tag = "3")]
pub username: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub password: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub database: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GcsProfile {
#[prost(string, tag = "1")]
pub bucket: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub root_path: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BigQueryProfile {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StaticServiceIpConnectivity {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ForwardSshTunnelConnectivity {
#[prost(string, tag = "1")]
pub hostname: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub username: ::prost::alloc::string::String,
#[prost(int32, tag = "3")]
pub port: i32,
#[prost(
oneof = "forward_ssh_tunnel_connectivity::AuthenticationMethod",
tags = "100, 101"
)]
pub authentication_method: ::core::option::Option<
forward_ssh_tunnel_connectivity::AuthenticationMethod,
>,
}
pub mod forward_ssh_tunnel_connectivity {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum AuthenticationMethod {
#[prost(string, tag = "100")]
Password(::prost::alloc::string::String),
#[prost(string, tag = "101")]
PrivateKey(::prost::alloc::string::String),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VpcPeeringConfig {
#[prost(string, tag = "1")]
pub vpc: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub subnet: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PrivateConnection {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(map = "string, string", tag = "4")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
#[prost(enumeration = "private_connection::State", tag = "6")]
pub state: i32,
#[prost(message, optional, tag = "7")]
pub error: ::core::option::Option<Error>,
#[prost(message, optional, tag = "100")]
pub vpc_peering_config: ::core::option::Option<VpcPeeringConfig>,
}
pub mod private_connection {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Creating = 1,
Created = 2,
Failed = 3,
Deleting = 4,
FailedToDelete = 5,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
State::Unspecified => "STATE_UNSPECIFIED",
State::Creating => "CREATING",
State::Created => "CREATED",
State::Failed => "FAILED",
State::Deleting => "DELETING",
State::FailedToDelete => "FAILED_TO_DELETE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"CREATING" => Some(Self::Creating),
"CREATED" => Some(Self::Created),
"FAILED" => Some(Self::Failed),
"DELETING" => Some(Self::Deleting),
"FAILED_TO_DELETE" => Some(Self::FailedToDelete),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PrivateConnectivity {
#[prost(string, tag = "1")]
pub private_connection: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Route {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(map = "string, string", tag = "4")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub destination_address: ::prost::alloc::string::String,
#[prost(int32, tag = "7")]
pub destination_port: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlSslConfig {
#[prost(string, tag = "1")]
pub client_key: ::prost::alloc::string::String,
#[prost(bool, tag = "2")]
pub client_key_set: bool,
#[prost(string, tag = "3")]
pub client_certificate: ::prost::alloc::string::String,
#[prost(bool, tag = "4")]
pub client_certificate_set: bool,
#[prost(string, tag = "5")]
pub ca_certificate: ::prost::alloc::string::String,
#[prost(bool, tag = "6")]
pub ca_certificate_set: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ConnectionProfile {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(map = "string, string", tag = "4")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
#[prost(oneof = "connection_profile::Profile", tags = "100, 101, 102, 103, 104")]
pub profile: ::core::option::Option<connection_profile::Profile>,
#[prost(oneof = "connection_profile::Connectivity", tags = "200, 201, 202")]
pub connectivity: ::core::option::Option<connection_profile::Connectivity>,
}
pub mod connection_profile {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Profile {
#[prost(message, tag = "100")]
OracleProfile(super::OracleProfile),
#[prost(message, tag = "101")]
GcsProfile(super::GcsProfile),
#[prost(message, tag = "102")]
MysqlProfile(super::MysqlProfile),
#[prost(message, tag = "103")]
BigqueryProfile(super::BigQueryProfile),
#[prost(message, tag = "104")]
PostgresqlProfile(super::PostgresqlProfile),
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Connectivity {
#[prost(message, tag = "200")]
StaticServiceIpConnectivity(super::StaticServiceIpConnectivity),
#[prost(message, tag = "201")]
ForwardSshConnectivity(super::ForwardSshTunnelConnectivity),
#[prost(message, tag = "202")]
PrivateConnectivity(super::PrivateConnectivity),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleColumn {
#[prost(string, tag = "1")]
pub column: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub data_type: ::prost::alloc::string::String,
#[prost(int32, tag = "3")]
pub length: i32,
#[prost(int32, tag = "4")]
pub precision: i32,
#[prost(int32, tag = "5")]
pub scale: i32,
#[prost(string, tag = "6")]
pub encoding: ::prost::alloc::string::String,
#[prost(bool, tag = "7")]
pub primary_key: bool,
#[prost(bool, tag = "8")]
pub nullable: bool,
#[prost(int32, tag = "9")]
pub ordinal_position: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleTable {
#[prost(string, tag = "1")]
pub table: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub oracle_columns: ::prost::alloc::vec::Vec<OracleColumn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleSchema {
#[prost(string, tag = "1")]
pub schema: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub oracle_tables: ::prost::alloc::vec::Vec<OracleTable>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleRdbms {
#[prost(message, repeated, tag = "1")]
pub oracle_schemas: ::prost::alloc::vec::Vec<OracleSchema>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleSourceConfig {
#[prost(message, optional, tag = "1")]
pub include_objects: ::core::option::Option<OracleRdbms>,
#[prost(message, optional, tag = "2")]
pub exclude_objects: ::core::option::Option<OracleRdbms>,
#[prost(int32, tag = "3")]
pub max_concurrent_cdc_tasks: i32,
#[prost(oneof = "oracle_source_config::LargeObjectsHandling", tags = "100, 102")]
pub large_objects_handling: ::core::option::Option<
oracle_source_config::LargeObjectsHandling,
>,
}
pub mod oracle_source_config {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DropLargeObjects {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamLargeObjects {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum LargeObjectsHandling {
#[prost(message, tag = "100")]
DropLargeObjects(DropLargeObjects),
#[prost(message, tag = "102")]
StreamLargeObjects(StreamLargeObjects),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlColumn {
#[prost(string, tag = "1")]
pub column: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub data_type: ::prost::alloc::string::String,
#[prost(int32, tag = "3")]
pub length: i32,
#[prost(int32, tag = "4")]
pub precision: i32,
#[prost(int32, tag = "5")]
pub scale: i32,
#[prost(bool, tag = "7")]
pub primary_key: bool,
#[prost(bool, tag = "8")]
pub nullable: bool,
#[prost(int32, tag = "9")]
pub ordinal_position: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlTable {
#[prost(string, tag = "1")]
pub table: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub postgresql_columns: ::prost::alloc::vec::Vec<PostgresqlColumn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlSchema {
#[prost(string, tag = "1")]
pub schema: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub postgresql_tables: ::prost::alloc::vec::Vec<PostgresqlTable>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlRdbms {
#[prost(message, repeated, tag = "1")]
pub postgresql_schemas: ::prost::alloc::vec::Vec<PostgresqlSchema>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlSourceConfig {
#[prost(message, optional, tag = "1")]
pub include_objects: ::core::option::Option<PostgresqlRdbms>,
#[prost(message, optional, tag = "2")]
pub exclude_objects: ::core::option::Option<PostgresqlRdbms>,
#[prost(string, tag = "3")]
pub replication_slot: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub publication: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlColumn {
#[prost(string, tag = "1")]
pub column: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub data_type: ::prost::alloc::string::String,
#[prost(int32, tag = "3")]
pub length: i32,
#[prost(string, tag = "4")]
pub collation: ::prost::alloc::string::String,
#[prost(bool, tag = "5")]
pub primary_key: bool,
#[prost(bool, tag = "6")]
pub nullable: bool,
#[prost(int32, tag = "7")]
pub ordinal_position: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlTable {
#[prost(string, tag = "1")]
pub table: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub mysql_columns: ::prost::alloc::vec::Vec<MysqlColumn>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlDatabase {
#[prost(string, tag = "1")]
pub database: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub mysql_tables: ::prost::alloc::vec::Vec<MysqlTable>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlRdbms {
#[prost(message, repeated, tag = "1")]
pub mysql_databases: ::prost::alloc::vec::Vec<MysqlDatabase>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlSourceConfig {
#[prost(message, optional, tag = "1")]
pub include_objects: ::core::option::Option<MysqlRdbms>,
#[prost(message, optional, tag = "2")]
pub exclude_objects: ::core::option::Option<MysqlRdbms>,
#[prost(int32, tag = "3")]
pub max_concurrent_cdc_tasks: i32,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceConfig {
#[prost(string, tag = "1")]
pub source_connection_profile: ::prost::alloc::string::String,
#[prost(oneof = "source_config::SourceStreamConfig", tags = "100, 101, 102")]
pub source_stream_config: ::core::option::Option<source_config::SourceStreamConfig>,
}
pub mod source_config {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum SourceStreamConfig {
#[prost(message, tag = "100")]
OracleSourceConfig(super::OracleSourceConfig),
#[prost(message, tag = "101")]
MysqlSourceConfig(super::MysqlSourceConfig),
#[prost(message, tag = "102")]
PostgresqlSourceConfig(super::PostgresqlSourceConfig),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvroFileFormat {}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct JsonFileFormat {
#[prost(enumeration = "json_file_format::SchemaFileFormat", tag = "1")]
pub schema_file_format: i32,
#[prost(enumeration = "json_file_format::JsonCompression", tag = "2")]
pub compression: i32,
}
pub mod json_file_format {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum SchemaFileFormat {
Unspecified = 0,
NoSchemaFile = 1,
AvroSchemaFile = 2,
}
impl SchemaFileFormat {
pub fn as_str_name(&self) -> &'static str {
match self {
SchemaFileFormat::Unspecified => "SCHEMA_FILE_FORMAT_UNSPECIFIED",
SchemaFileFormat::NoSchemaFile => "NO_SCHEMA_FILE",
SchemaFileFormat::AvroSchemaFile => "AVRO_SCHEMA_FILE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"SCHEMA_FILE_FORMAT_UNSPECIFIED" => Some(Self::Unspecified),
"NO_SCHEMA_FILE" => Some(Self::NoSchemaFile),
"AVRO_SCHEMA_FILE" => Some(Self::AvroSchemaFile),
_ => None,
}
}
}
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum JsonCompression {
Unspecified = 0,
NoCompression = 1,
Gzip = 2,
}
impl JsonCompression {
pub fn as_str_name(&self) -> &'static str {
match self {
JsonCompression::Unspecified => "JSON_COMPRESSION_UNSPECIFIED",
JsonCompression::NoCompression => "NO_COMPRESSION",
JsonCompression::Gzip => "GZIP",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"JSON_COMPRESSION_UNSPECIFIED" => Some(Self::Unspecified),
"NO_COMPRESSION" => Some(Self::NoCompression),
"GZIP" => Some(Self::Gzip),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GcsDestinationConfig {
#[prost(string, tag = "1")]
pub path: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub file_rotation_mb: i32,
#[prost(message, optional, tag = "3")]
pub file_rotation_interval: ::core::option::Option<::prost_types::Duration>,
#[prost(oneof = "gcs_destination_config::FileFormat", tags = "100, 101")]
pub file_format: ::core::option::Option<gcs_destination_config::FileFormat>,
}
pub mod gcs_destination_config {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum FileFormat {
#[prost(message, tag = "100")]
AvroFileFormat(super::AvroFileFormat),
#[prost(message, tag = "101")]
JsonFileFormat(super::JsonFileFormat),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BigQueryDestinationConfig {
#[prost(message, optional, tag = "300")]
pub data_freshness: ::core::option::Option<::prost_types::Duration>,
#[prost(oneof = "big_query_destination_config::DatasetConfig", tags = "201, 202")]
pub dataset_config: ::core::option::Option<
big_query_destination_config::DatasetConfig,
>,
}
pub mod big_query_destination_config {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SingleTargetDataset {
#[prost(string, tag = "1")]
pub dataset_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceHierarchyDatasets {
#[prost(message, optional, tag = "2")]
pub dataset_template: ::core::option::Option<
source_hierarchy_datasets::DatasetTemplate,
>,
}
pub mod source_hierarchy_datasets {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DatasetTemplate {
#[prost(string, tag = "1")]
pub location: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub dataset_id_prefix: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub kms_key_name: ::prost::alloc::string::String,
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum DatasetConfig {
#[prost(message, tag = "201")]
SingleTargetDataset(SingleTargetDataset),
#[prost(message, tag = "202")]
SourceHierarchyDatasets(SourceHierarchyDatasets),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DestinationConfig {
#[prost(string, tag = "1")]
pub destination_connection_profile: ::prost::alloc::string::String,
#[prost(oneof = "destination_config::DestinationStreamConfig", tags = "100, 101")]
pub destination_stream_config: ::core::option::Option<
destination_config::DestinationStreamConfig,
>,
}
pub mod destination_config {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum DestinationStreamConfig {
#[prost(message, tag = "100")]
GcsDestinationConfig(super::GcsDestinationConfig),
#[prost(message, tag = "101")]
BigqueryDestinationConfig(super::BigQueryDestinationConfig),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Stream {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(map = "string, string", tag = "4")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "6")]
pub source_config: ::core::option::Option<SourceConfig>,
#[prost(message, optional, tag = "7")]
pub destination_config: ::core::option::Option<DestinationConfig>,
#[prost(enumeration = "stream::State", tag = "8")]
pub state: i32,
#[prost(message, repeated, tag = "9")]
pub errors: ::prost::alloc::vec::Vec<Error>,
#[prost(string, optional, tag = "10")]
pub customer_managed_encryption_key: ::core::option::Option<
::prost::alloc::string::String,
>,
#[prost(oneof = "stream::BackfillStrategy", tags = "101, 102")]
pub backfill_strategy: ::core::option::Option<stream::BackfillStrategy>,
}
pub mod stream {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BackfillAllStrategy {
#[prost(oneof = "backfill_all_strategy::ExcludedObjects", tags = "1, 2, 3")]
pub excluded_objects: ::core::option::Option<
backfill_all_strategy::ExcludedObjects,
>,
}
pub mod backfill_all_strategy {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum ExcludedObjects {
#[prost(message, tag = "1")]
OracleExcludedObjects(super::super::OracleRdbms),
#[prost(message, tag = "2")]
MysqlExcludedObjects(super::super::MysqlRdbms),
#[prost(message, tag = "3")]
PostgresqlExcludedObjects(super::super::PostgresqlRdbms),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BackfillNoneStrategy {}
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
NotStarted = 1,
Running = 2,
Paused = 3,
Maintenance = 4,
Failed = 5,
FailedPermanently = 6,
Starting = 7,
Draining = 8,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
State::Unspecified => "STATE_UNSPECIFIED",
State::NotStarted => "NOT_STARTED",
State::Running => "RUNNING",
State::Paused => "PAUSED",
State::Maintenance => "MAINTENANCE",
State::Failed => "FAILED",
State::FailedPermanently => "FAILED_PERMANENTLY",
State::Starting => "STARTING",
State::Draining => "DRAINING",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"NOT_STARTED" => Some(Self::NotStarted),
"RUNNING" => Some(Self::Running),
"PAUSED" => Some(Self::Paused),
"MAINTENANCE" => Some(Self::Maintenance),
"FAILED" => Some(Self::Failed),
"FAILED_PERMANENTLY" => Some(Self::FailedPermanently),
"STARTING" => Some(Self::Starting),
"DRAINING" => Some(Self::Draining),
_ => None,
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum BackfillStrategy {
#[prost(message, tag = "101")]
BackfillAll(BackfillAllStrategy),
#[prost(message, tag = "102")]
BackfillNone(BackfillNoneStrategy),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamObject {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "6")]
pub errors: ::prost::alloc::vec::Vec<Error>,
#[prost(message, optional, tag = "7")]
pub backfill_job: ::core::option::Option<BackfillJob>,
#[prost(message, optional, tag = "8")]
pub source_object: ::core::option::Option<SourceObjectIdentifier>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceObjectIdentifier {
#[prost(oneof = "source_object_identifier::SourceIdentifier", tags = "1, 2, 3")]
pub source_identifier: ::core::option::Option<
source_object_identifier::SourceIdentifier,
>,
}
pub mod source_object_identifier {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OracleObjectIdentifier {
#[prost(string, tag = "1")]
pub schema: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub table: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostgresqlObjectIdentifier {
#[prost(string, tag = "1")]
pub schema: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub table: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MysqlObjectIdentifier {
#[prost(string, tag = "1")]
pub database: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub table: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum SourceIdentifier {
#[prost(message, tag = "1")]
OracleIdentifier(OracleObjectIdentifier),
#[prost(message, tag = "2")]
MysqlIdentifier(MysqlObjectIdentifier),
#[prost(message, tag = "3")]
PostgresqlIdentifier(PostgresqlObjectIdentifier),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BackfillJob {
#[prost(enumeration = "backfill_job::State", tag = "1")]
pub state: i32,
#[prost(enumeration = "backfill_job::Trigger", tag = "2")]
pub trigger: i32,
#[prost(message, optional, tag = "3")]
pub last_start_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "4")]
pub last_end_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, repeated, tag = "5")]
pub errors: ::prost::alloc::vec::Vec<Error>,
}
pub mod backfill_job {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
NotStarted = 1,
Pending = 2,
Active = 3,
Stopped = 4,
Failed = 5,
Completed = 6,
Unsupported = 7,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
State::Unspecified => "STATE_UNSPECIFIED",
State::NotStarted => "NOT_STARTED",
State::Pending => "PENDING",
State::Active => "ACTIVE",
State::Stopped => "STOPPED",
State::Failed => "FAILED",
State::Completed => "COMPLETED",
State::Unsupported => "UNSUPPORTED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"NOT_STARTED" => Some(Self::NotStarted),
"PENDING" => Some(Self::Pending),
"ACTIVE" => Some(Self::Active),
"STOPPED" => Some(Self::Stopped),
"FAILED" => Some(Self::Failed),
"COMPLETED" => Some(Self::Completed),
"UNSUPPORTED" => Some(Self::Unsupported),
_ => None,
}
}
}
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum Trigger {
Unspecified = 0,
Automatic = 1,
Manual = 2,
}
impl Trigger {
pub fn as_str_name(&self) -> &'static str {
match self {
Trigger::Unspecified => "TRIGGER_UNSPECIFIED",
Trigger::Automatic => "AUTOMATIC",
Trigger::Manual => "MANUAL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"TRIGGER_UNSPECIFIED" => Some(Self::Unspecified),
"AUTOMATIC" => Some(Self::Automatic),
"MANUAL" => Some(Self::Manual),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Error {
#[prost(string, tag = "1")]
pub reason: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub error_uuid: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub message: ::prost::alloc::string::String,
#[prost(message, optional, tag = "4")]
pub error_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(map = "string, string", tag = "5")]
pub details: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ValidationResult {
#[prost(message, repeated, tag = "1")]
pub validations: ::prost::alloc::vec::Vec<Validation>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Validation {
#[prost(string, tag = "1")]
pub description: ::prost::alloc::string::String,
#[prost(enumeration = "validation::State", tag = "2")]
pub state: i32,
#[prost(message, repeated, tag = "3")]
pub message: ::prost::alloc::vec::Vec<ValidationMessage>,
#[prost(string, tag = "4")]
pub code: ::prost::alloc::string::String,
}
pub mod validation {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
NotExecuted = 1,
Failed = 2,
Passed = 3,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
State::Unspecified => "STATE_UNSPECIFIED",
State::NotExecuted => "NOT_EXECUTED",
State::Failed => "FAILED",
State::Passed => "PASSED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"NOT_EXECUTED" => Some(Self::NotExecuted),
"FAILED" => Some(Self::Failed),
"PASSED" => Some(Self::Passed),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ValidationMessage {
#[prost(string, tag = "1")]
pub message: ::prost::alloc::string::String,
#[prost(enumeration = "validation_message::Level", tag = "2")]
pub level: i32,
#[prost(map = "string, string", tag = "3")]
pub metadata: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "4")]
pub code: ::prost::alloc::string::String,
}
pub mod validation_message {
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum Level {
Unspecified = 0,
Warning = 1,
Error = 2,
}
impl Level {
pub fn as_str_name(&self) -> &'static str {
match self {
Level::Unspecified => "LEVEL_UNSPECIFIED",
Level::Warning => "WARNING",
Level::Error => "ERROR",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"LEVEL_UNSPECIFIED" => Some(Self::Unspecified),
"WARNING" => Some(Self::Warning),
"ERROR" => Some(Self::Error),
_ => None,
}
}
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DiscoverConnectionProfileRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(oneof = "discover_connection_profile_request::Target", tags = "200, 201")]
pub target: ::core::option::Option<discover_connection_profile_request::Target>,
#[prost(oneof = "discover_connection_profile_request::Hierarchy", tags = "3, 4")]
pub hierarchy: ::core::option::Option<
discover_connection_profile_request::Hierarchy,
>,
#[prost(
oneof = "discover_connection_profile_request::DataObject",
tags = "100, 101, 102"
)]
pub data_object: ::core::option::Option<
discover_connection_profile_request::DataObject,
>,
}
pub mod discover_connection_profile_request {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Target {
#[prost(message, tag = "200")]
ConnectionProfile(super::ConnectionProfile),
#[prost(string, tag = "201")]
ConnectionProfileName(::prost::alloc::string::String),
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Hierarchy {
#[prost(bool, tag = "3")]
FullHierarchy(bool),
#[prost(int32, tag = "4")]
HierarchyDepth(i32),
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum DataObject {
#[prost(message, tag = "100")]
OracleRdbms(super::OracleRdbms),
#[prost(message, tag = "101")]
MysqlRdbms(super::MysqlRdbms),
#[prost(message, tag = "102")]
PostgresqlRdbms(super::PostgresqlRdbms),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DiscoverConnectionProfileResponse {
#[prost(
oneof = "discover_connection_profile_response::DataObject",
tags = "100, 101, 102"
)]
pub data_object: ::core::option::Option<
discover_connection_profile_response::DataObject,
>,
}
pub mod discover_connection_profile_response {
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum DataObject {
#[prost(message, tag = "100")]
OracleRdbms(super::OracleRdbms),
#[prost(message, tag = "101")]
MysqlRdbms(super::MysqlRdbms),
#[prost(message, tag = "102")]
PostgresqlRdbms(super::PostgresqlRdbms),
}
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FetchStaticIpsRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FetchStaticIpsResponse {
#[prost(string, repeated, tag = "1")]
pub static_ips: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListConnectionProfilesRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub order_by: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListConnectionProfilesResponse {
#[prost(message, repeated, tag = "1")]
pub connection_profiles: ::prost::alloc::vec::Vec<ConnectionProfile>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "3")]
pub unreachable: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetConnectionProfileRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateConnectionProfileRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub connection_profile_id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub connection_profile: ::core::option::Option<ConnectionProfile>,
#[prost(string, tag = "4")]
pub request_id: ::prost::alloc::string::String,
#[prost(bool, tag = "5")]
pub validate_only: bool,
#[prost(bool, tag = "6")]
pub force: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdateConnectionProfileRequest {
#[prost(message, optional, tag = "1")]
pub update_mask: ::core::option::Option<::prost_types::FieldMask>,
#[prost(message, optional, tag = "2")]
pub connection_profile: ::core::option::Option<ConnectionProfile>,
#[prost(string, tag = "3")]
pub request_id: ::prost::alloc::string::String,
#[prost(bool, tag = "4")]
pub validate_only: bool,
#[prost(bool, tag = "5")]
pub force: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteConnectionProfileRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub request_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListStreamsRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub order_by: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListStreamsResponse {
#[prost(message, repeated, tag = "1")]
pub streams: ::prost::alloc::vec::Vec<Stream>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "3")]
pub unreachable: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetStreamRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateStreamRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub stream_id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub stream: ::core::option::Option<Stream>,
#[prost(string, tag = "4")]
pub request_id: ::prost::alloc::string::String,
#[prost(bool, tag = "5")]
pub validate_only: bool,
#[prost(bool, tag = "6")]
pub force: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpdateStreamRequest {
#[prost(message, optional, tag = "1")]
pub update_mask: ::core::option::Option<::prost_types::FieldMask>,
#[prost(message, optional, tag = "2")]
pub stream: ::core::option::Option<Stream>,
#[prost(string, tag = "3")]
pub request_id: ::prost::alloc::string::String,
#[prost(bool, tag = "4")]
pub validate_only: bool,
#[prost(bool, tag = "5")]
pub force: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteStreamRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub request_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetStreamObjectRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LookupStreamObjectRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub source_object_identifier: ::core::option::Option<SourceObjectIdentifier>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StartBackfillJobRequest {
#[prost(string, tag = "1")]
pub object: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StartBackfillJobResponse {
#[prost(message, optional, tag = "1")]
pub object: ::core::option::Option<StreamObject>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StopBackfillJobRequest {
#[prost(string, tag = "1")]
pub object: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StopBackfillJobResponse {
#[prost(message, optional, tag = "1")]
pub object: ::core::option::Option<StreamObject>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListStreamObjectsRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListStreamObjectsResponse {
#[prost(message, repeated, tag = "1")]
pub stream_objects: ::prost::alloc::vec::Vec<StreamObject>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OperationMetadata {
#[prost(message, optional, tag = "1")]
pub create_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub end_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(string, tag = "3")]
pub target: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub verb: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub status_message: ::prost::alloc::string::String,
#[prost(bool, tag = "6")]
pub requested_cancellation: bool,
#[prost(string, tag = "7")]
pub api_version: ::prost::alloc::string::String,
#[prost(message, optional, tag = "8")]
pub validation_result: ::core::option::Option<ValidationResult>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreatePrivateConnectionRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub private_connection_id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub private_connection: ::core::option::Option<PrivateConnection>,
#[prost(string, tag = "4")]
pub request_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPrivateConnectionsRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub order_by: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPrivateConnectionsResponse {
#[prost(message, repeated, tag = "1")]
pub private_connections: ::prost::alloc::vec::Vec<PrivateConnection>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "3")]
pub unreachable: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeletePrivateConnectionRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub request_id: ::prost::alloc::string::String,
#[prost(bool, tag = "3")]
pub force: bool,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPrivateConnectionRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CreateRouteRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub route_id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "3")]
pub route: ::core::option::Option<Route>,
#[prost(string, tag = "4")]
pub request_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListRoutesRequest {
#[prost(string, tag = "1")]
pub parent: ::prost::alloc::string::String,
#[prost(int32, tag = "2")]
pub page_size: i32,
#[prost(string, tag = "3")]
pub page_token: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub filter: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub order_by: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListRoutesResponse {
#[prost(message, repeated, tag = "1")]
pub routes: ::prost::alloc::vec::Vec<Route>,
#[prost(string, tag = "2")]
pub next_page_token: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "3")]
pub unreachable: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DeleteRouteRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub request_id: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetRouteRequest {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
}
pub mod datastream_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
use tonic::codegen::http::Uri;
#[derive(Debug, Clone)]
pub struct DatastreamClient<T> {
inner: tonic::client::Grpc<T>,
}
impl DatastreamClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> DatastreamClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_origin(inner: T, origin: Uri) -> Self {
let inner = tonic::client::Grpc::with_origin(inner, origin);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> DatastreamClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
DatastreamClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.inner = self.inner.send_compressed(encoding);
self
}
#[must_use]
pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
self.inner = self.inner.accept_compressed(encoding);
self
}
pub async fn list_connection_profiles(
&mut self,
request: impl tonic::IntoRequest<super::ListConnectionProfilesRequest>,
) -> Result<
tonic::Response<super::ListConnectionProfilesResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/ListConnectionProfiles",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn get_connection_profile(
&mut self,
request: impl tonic::IntoRequest<super::GetConnectionProfileRequest>,
) -> Result<tonic::Response<super::ConnectionProfile>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/GetConnectionProfile",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn create_connection_profile(
&mut self,
request: impl tonic::IntoRequest<super::CreateConnectionProfileRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/CreateConnectionProfile",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn update_connection_profile(
&mut self,
request: impl tonic::IntoRequest<super::UpdateConnectionProfileRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/UpdateConnectionProfile",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn delete_connection_profile(
&mut self,
request: impl tonic::IntoRequest<super::DeleteConnectionProfileRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/DeleteConnectionProfile",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn discover_connection_profile(
&mut self,
request: impl tonic::IntoRequest<super::DiscoverConnectionProfileRequest>,
) -> Result<
tonic::Response<super::DiscoverConnectionProfileResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/DiscoverConnectionProfile",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn list_streams(
&mut self,
request: impl tonic::IntoRequest<super::ListStreamsRequest>,
) -> Result<tonic::Response<super::ListStreamsResponse>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/ListStreams",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn get_stream(
&mut self,
request: impl tonic::IntoRequest<super::GetStreamRequest>,
) -> Result<tonic::Response<super::Stream>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/GetStream",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn create_stream(
&mut self,
request: impl tonic::IntoRequest<super::CreateStreamRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/CreateStream",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn update_stream(
&mut self,
request: impl tonic::IntoRequest<super::UpdateStreamRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/UpdateStream",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn delete_stream(
&mut self,
request: impl tonic::IntoRequest<super::DeleteStreamRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/DeleteStream",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn get_stream_object(
&mut self,
request: impl tonic::IntoRequest<super::GetStreamObjectRequest>,
) -> Result<tonic::Response<super::StreamObject>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/GetStreamObject",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn lookup_stream_object(
&mut self,
request: impl tonic::IntoRequest<super::LookupStreamObjectRequest>,
) -> Result<tonic::Response<super::StreamObject>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/LookupStreamObject",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn list_stream_objects(
&mut self,
request: impl tonic::IntoRequest<super::ListStreamObjectsRequest>,
) -> Result<tonic::Response<super::ListStreamObjectsResponse>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/ListStreamObjects",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn start_backfill_job(
&mut self,
request: impl tonic::IntoRequest<super::StartBackfillJobRequest>,
) -> Result<tonic::Response<super::StartBackfillJobResponse>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/StartBackfillJob",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn stop_backfill_job(
&mut self,
request: impl tonic::IntoRequest<super::StopBackfillJobRequest>,
) -> Result<tonic::Response<super::StopBackfillJobResponse>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/StopBackfillJob",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn fetch_static_ips(
&mut self,
request: impl tonic::IntoRequest<super::FetchStaticIpsRequest>,
) -> Result<tonic::Response<super::FetchStaticIpsResponse>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/FetchStaticIps",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn create_private_connection(
&mut self,
request: impl tonic::IntoRequest<super::CreatePrivateConnectionRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/CreatePrivateConnection",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn get_private_connection(
&mut self,
request: impl tonic::IntoRequest<super::GetPrivateConnectionRequest>,
) -> Result<tonic::Response<super::PrivateConnection>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/GetPrivateConnection",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn list_private_connections(
&mut self,
request: impl tonic::IntoRequest<super::ListPrivateConnectionsRequest>,
) -> Result<
tonic::Response<super::ListPrivateConnectionsResponse>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/ListPrivateConnections",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn delete_private_connection(
&mut self,
request: impl tonic::IntoRequest<super::DeletePrivateConnectionRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/DeletePrivateConnection",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn create_route(
&mut self,
request: impl tonic::IntoRequest<super::CreateRouteRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/CreateRoute",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn get_route(
&mut self,
request: impl tonic::IntoRequest<super::GetRouteRequest>,
) -> Result<tonic::Response<super::Route>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/GetRoute",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn list_routes(
&mut self,
request: impl tonic::IntoRequest<super::ListRoutesRequest>,
) -> Result<tonic::Response<super::ListRoutesResponse>, tonic::Status> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/ListRoutes",
);
self.inner.unary(request.into_request(), path, codec).await
}
pub async fn delete_route(
&mut self,
request: impl tonic::IntoRequest<super::DeleteRouteRequest>,
) -> Result<
tonic::Response<super::super::super::super::longrunning::Operation>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/google.cloud.datastream.v1.Datastream/DeleteRoute",
);
self.inner.unary(request.into_request(), path, codec).await
}
}
}