#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Source {
#[doc(hidden)]
pub config_type: std::option::Option<crate::types::ConfigCapabilityType>,
#[doc(hidden)]
pub config_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub config_details: std::option::Option<crate::types::ConfigDetails>,
#[doc(hidden)]
pub dataflow_source_region: std::option::Option<std::string::String>,
}
impl Source {
pub fn config_type(&self) -> std::option::Option<&crate::types::ConfigCapabilityType> {
self.config_type.as_ref()
}
pub fn config_id(&self) -> std::option::Option<&str> {
self.config_id.as_deref()
}
pub fn config_details(&self) -> std::option::Option<&crate::types::ConfigDetails> {
self.config_details.as_ref()
}
pub fn dataflow_source_region(&self) -> std::option::Option<&str> {
self.dataflow_source_region.as_deref()
}
}
impl Source {
pub fn builder() -> crate::types::builders::SourceBuilder {
crate::types::builders::SourceBuilder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct SourceBuilder {
pub(crate) config_type: std::option::Option<crate::types::ConfigCapabilityType>,
pub(crate) config_id: std::option::Option<std::string::String>,
pub(crate) config_details: std::option::Option<crate::types::ConfigDetails>,
pub(crate) dataflow_source_region: std::option::Option<std::string::String>,
}
impl SourceBuilder {
pub fn config_type(mut self, input: crate::types::ConfigCapabilityType) -> Self {
self.config_type = Some(input);
self
}
pub fn set_config_type(
mut self,
input: std::option::Option<crate::types::ConfigCapabilityType>,
) -> Self {
self.config_type = input;
self
}
pub fn config_id(mut self, input: impl Into<std::string::String>) -> Self {
self.config_id = Some(input.into());
self
}
pub fn set_config_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.config_id = input;
self
}
pub fn config_details(mut self, input: crate::types::ConfigDetails) -> Self {
self.config_details = Some(input);
self
}
pub fn set_config_details(
mut self,
input: std::option::Option<crate::types::ConfigDetails>,
) -> Self {
self.config_details = input;
self
}
pub fn dataflow_source_region(mut self, input: impl Into<std::string::String>) -> Self {
self.dataflow_source_region = Some(input.into());
self
}
pub fn set_dataflow_source_region(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.dataflow_source_region = input;
self
}
pub fn build(self) -> crate::types::Source {
crate::types::Source {
config_type: self.config_type,
config_id: self.config_id,
config_details: self.config_details,
dataflow_source_region: self.dataflow_source_region,
}
}
}