#[allow(missing_docs)] #[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
pub struct GetDataSourceOutput {
pub id: ::std::string::String,
pub status: ::std::option::Option<crate::types::DataSourceStatus>,
pub r#type: ::std::option::Option<::std::string::String>,
pub name: ::std::string::String,
pub description: ::std::option::Option<::std::string::String>,
pub domain_id: ::std::string::String,
pub project_id: ::std::string::String,
pub environment_id: ::std::option::Option<::std::string::String>,
pub connection_id: ::std::option::Option<::std::string::String>,
pub configuration: ::std::option::Option<crate::types::DataSourceConfigurationOutput>,
pub recommendation: ::std::option::Option<crate::types::RecommendationConfiguration>,
pub enable_setting: ::std::option::Option<crate::types::EnableSetting>,
pub publish_on_import: ::std::option::Option<bool>,
pub asset_forms_output: ::std::option::Option<::std::vec::Vec<crate::types::FormOutput>>,
pub schedule: ::std::option::Option<crate::types::ScheduleConfiguration>,
pub last_run_status: ::std::option::Option<crate::types::DataSourceRunStatus>,
pub last_run_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub last_run_error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
pub last_run_asset_count: ::std::option::Option<i32>,
pub error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
pub created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub updated_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub self_grant_status: ::std::option::Option<crate::types::SelfGrantStatusOutput>,
_request_id: Option<String>,
}
impl GetDataSourceOutput {
pub fn id(&self) -> &str {
use std::ops::Deref;
self.id.deref()
}
pub fn status(&self) -> ::std::option::Option<&crate::types::DataSourceStatus> {
self.status.as_ref()
}
pub fn r#type(&self) -> ::std::option::Option<&str> {
self.r#type.as_deref()
}
pub fn name(&self) -> &str {
use std::ops::Deref;
self.name.deref()
}
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
pub fn domain_id(&self) -> &str {
use std::ops::Deref;
self.domain_id.deref()
}
pub fn project_id(&self) -> &str {
use std::ops::Deref;
self.project_id.deref()
}
pub fn environment_id(&self) -> ::std::option::Option<&str> {
self.environment_id.as_deref()
}
pub fn connection_id(&self) -> ::std::option::Option<&str> {
self.connection_id.as_deref()
}
pub fn configuration(&self) -> ::std::option::Option<&crate::types::DataSourceConfigurationOutput> {
self.configuration.as_ref()
}
pub fn recommendation(&self) -> ::std::option::Option<&crate::types::RecommendationConfiguration> {
self.recommendation.as_ref()
}
pub fn enable_setting(&self) -> ::std::option::Option<&crate::types::EnableSetting> {
self.enable_setting.as_ref()
}
pub fn publish_on_import(&self) -> ::std::option::Option<bool> {
self.publish_on_import
}
pub fn asset_forms_output(&self) -> &[crate::types::FormOutput] {
self.asset_forms_output.as_deref().unwrap_or_default()
}
pub fn schedule(&self) -> ::std::option::Option<&crate::types::ScheduleConfiguration> {
self.schedule.as_ref()
}
pub fn last_run_status(&self) -> ::std::option::Option<&crate::types::DataSourceRunStatus> {
self.last_run_status.as_ref()
}
pub fn last_run_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.last_run_at.as_ref()
}
pub fn last_run_error_message(&self) -> ::std::option::Option<&crate::types::DataSourceErrorMessage> {
self.last_run_error_message.as_ref()
}
pub fn last_run_asset_count(&self) -> ::std::option::Option<i32> {
self.last_run_asset_count
}
pub fn error_message(&self) -> ::std::option::Option<&crate::types::DataSourceErrorMessage> {
self.error_message.as_ref()
}
pub fn created_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.created_at.as_ref()
}
pub fn updated_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.updated_at.as_ref()
}
pub fn self_grant_status(&self) -> ::std::option::Option<&crate::types::SelfGrantStatusOutput> {
self.self_grant_status.as_ref()
}
}
impl ::std::fmt::Debug for GetDataSourceOutput {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("GetDataSourceOutput");
formatter.field("id", &self.id);
formatter.field("status", &self.status);
formatter.field("r#type", &self.r#type);
formatter.field("name", &"*** Sensitive Data Redacted ***");
formatter.field("description", &"*** Sensitive Data Redacted ***");
formatter.field("domain_id", &self.domain_id);
formatter.field("project_id", &self.project_id);
formatter.field("environment_id", &self.environment_id);
formatter.field("connection_id", &self.connection_id);
formatter.field("configuration", &self.configuration);
formatter.field("recommendation", &self.recommendation);
formatter.field("enable_setting", &self.enable_setting);
formatter.field("publish_on_import", &self.publish_on_import);
formatter.field("asset_forms_output", &self.asset_forms_output);
formatter.field("schedule", &"*** Sensitive Data Redacted ***");
formatter.field("last_run_status", &self.last_run_status);
formatter.field("last_run_at", &self.last_run_at);
formatter.field("last_run_error_message", &self.last_run_error_message);
formatter.field("last_run_asset_count", &self.last_run_asset_count);
formatter.field("error_message", &self.error_message);
formatter.field("created_at", &self.created_at);
formatter.field("updated_at", &self.updated_at);
formatter.field("self_grant_status", &self.self_grant_status);
formatter.field("_request_id", &self._request_id);
formatter.finish()
}
}
impl ::aws_types::request_id::RequestId for GetDataSourceOutput {
fn request_id(&self) -> Option<&str> {
self._request_id.as_deref()
}
}
impl GetDataSourceOutput {
pub fn builder() -> crate::operation::get_data_source::builders::GetDataSourceOutputBuilder {
crate::operation::get_data_source::builders::GetDataSourceOutputBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
#[non_exhaustive]
pub struct GetDataSourceOutputBuilder {
pub(crate) id: ::std::option::Option<::std::string::String>,
pub(crate) status: ::std::option::Option<crate::types::DataSourceStatus>,
pub(crate) r#type: ::std::option::Option<::std::string::String>,
pub(crate) name: ::std::option::Option<::std::string::String>,
pub(crate) description: ::std::option::Option<::std::string::String>,
pub(crate) domain_id: ::std::option::Option<::std::string::String>,
pub(crate) project_id: ::std::option::Option<::std::string::String>,
pub(crate) environment_id: ::std::option::Option<::std::string::String>,
pub(crate) connection_id: ::std::option::Option<::std::string::String>,
pub(crate) configuration: ::std::option::Option<crate::types::DataSourceConfigurationOutput>,
pub(crate) recommendation: ::std::option::Option<crate::types::RecommendationConfiguration>,
pub(crate) enable_setting: ::std::option::Option<crate::types::EnableSetting>,
pub(crate) publish_on_import: ::std::option::Option<bool>,
pub(crate) asset_forms_output: ::std::option::Option<::std::vec::Vec<crate::types::FormOutput>>,
pub(crate) schedule: ::std::option::Option<crate::types::ScheduleConfiguration>,
pub(crate) last_run_status: ::std::option::Option<crate::types::DataSourceRunStatus>,
pub(crate) last_run_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) last_run_error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
pub(crate) last_run_asset_count: ::std::option::Option<i32>,
pub(crate) error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
pub(crate) created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) updated_at: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) self_grant_status: ::std::option::Option<crate::types::SelfGrantStatusOutput>,
_request_id: Option<String>,
}
impl GetDataSourceOutputBuilder {
pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.id = ::std::option::Option::Some(input.into());
self
}
pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.id = input;
self
}
pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
&self.id
}
pub fn status(mut self, input: crate::types::DataSourceStatus) -> Self {
self.status = ::std::option::Option::Some(input);
self
}
pub fn set_status(mut self, input: ::std::option::Option<crate::types::DataSourceStatus>) -> Self {
self.status = input;
self
}
pub fn get_status(&self) -> &::std::option::Option<crate::types::DataSourceStatus> {
&self.status
}
pub fn r#type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.r#type = ::std::option::Option::Some(input.into());
self
}
pub fn set_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.r#type = input;
self
}
pub fn get_type(&self) -> &::std::option::Option<::std::string::String> {
&self.r#type
}
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.name = ::std::option::Option::Some(input.into());
self
}
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.name = input;
self
}
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
&self.name
}
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.description = ::std::option::Option::Some(input.into());
self
}
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
pub fn domain_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.domain_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_domain_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.domain_id = input;
self
}
pub fn get_domain_id(&self) -> &::std::option::Option<::std::string::String> {
&self.domain_id
}
pub fn project_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.project_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_project_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.project_id = input;
self
}
pub fn get_project_id(&self) -> &::std::option::Option<::std::string::String> {
&self.project_id
}
pub fn environment_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.environment_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_environment_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.environment_id = input;
self
}
pub fn get_environment_id(&self) -> &::std::option::Option<::std::string::String> {
&self.environment_id
}
pub fn connection_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.connection_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_connection_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.connection_id = input;
self
}
pub fn get_connection_id(&self) -> &::std::option::Option<::std::string::String> {
&self.connection_id
}
pub fn configuration(mut self, input: crate::types::DataSourceConfigurationOutput) -> Self {
self.configuration = ::std::option::Option::Some(input);
self
}
pub fn set_configuration(mut self, input: ::std::option::Option<crate::types::DataSourceConfigurationOutput>) -> Self {
self.configuration = input;
self
}
pub fn get_configuration(&self) -> &::std::option::Option<crate::types::DataSourceConfigurationOutput> {
&self.configuration
}
pub fn recommendation(mut self, input: crate::types::RecommendationConfiguration) -> Self {
self.recommendation = ::std::option::Option::Some(input);
self
}
pub fn set_recommendation(mut self, input: ::std::option::Option<crate::types::RecommendationConfiguration>) -> Self {
self.recommendation = input;
self
}
pub fn get_recommendation(&self) -> &::std::option::Option<crate::types::RecommendationConfiguration> {
&self.recommendation
}
pub fn enable_setting(mut self, input: crate::types::EnableSetting) -> Self {
self.enable_setting = ::std::option::Option::Some(input);
self
}
pub fn set_enable_setting(mut self, input: ::std::option::Option<crate::types::EnableSetting>) -> Self {
self.enable_setting = input;
self
}
pub fn get_enable_setting(&self) -> &::std::option::Option<crate::types::EnableSetting> {
&self.enable_setting
}
pub fn publish_on_import(mut self, input: bool) -> Self {
self.publish_on_import = ::std::option::Option::Some(input);
self
}
pub fn set_publish_on_import(mut self, input: ::std::option::Option<bool>) -> Self {
self.publish_on_import = input;
self
}
pub fn get_publish_on_import(&self) -> &::std::option::Option<bool> {
&self.publish_on_import
}
pub fn asset_forms_output(mut self, input: crate::types::FormOutput) -> Self {
let mut v = self.asset_forms_output.unwrap_or_default();
v.push(input);
self.asset_forms_output = ::std::option::Option::Some(v);
self
}
pub fn set_asset_forms_output(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::FormOutput>>) -> Self {
self.asset_forms_output = input;
self
}
pub fn get_asset_forms_output(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::FormOutput>> {
&self.asset_forms_output
}
pub fn schedule(mut self, input: crate::types::ScheduleConfiguration) -> Self {
self.schedule = ::std::option::Option::Some(input);
self
}
pub fn set_schedule(mut self, input: ::std::option::Option<crate::types::ScheduleConfiguration>) -> Self {
self.schedule = input;
self
}
pub fn get_schedule(&self) -> &::std::option::Option<crate::types::ScheduleConfiguration> {
&self.schedule
}
pub fn last_run_status(mut self, input: crate::types::DataSourceRunStatus) -> Self {
self.last_run_status = ::std::option::Option::Some(input);
self
}
pub fn set_last_run_status(mut self, input: ::std::option::Option<crate::types::DataSourceRunStatus>) -> Self {
self.last_run_status = input;
self
}
pub fn get_last_run_status(&self) -> &::std::option::Option<crate::types::DataSourceRunStatus> {
&self.last_run_status
}
pub fn last_run_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.last_run_at = ::std::option::Option::Some(input);
self
}
pub fn set_last_run_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.last_run_at = input;
self
}
pub fn get_last_run_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.last_run_at
}
pub fn last_run_error_message(mut self, input: crate::types::DataSourceErrorMessage) -> Self {
self.last_run_error_message = ::std::option::Option::Some(input);
self
}
pub fn set_last_run_error_message(mut self, input: ::std::option::Option<crate::types::DataSourceErrorMessage>) -> Self {
self.last_run_error_message = input;
self
}
pub fn get_last_run_error_message(&self) -> &::std::option::Option<crate::types::DataSourceErrorMessage> {
&self.last_run_error_message
}
pub fn last_run_asset_count(mut self, input: i32) -> Self {
self.last_run_asset_count = ::std::option::Option::Some(input);
self
}
pub fn set_last_run_asset_count(mut self, input: ::std::option::Option<i32>) -> Self {
self.last_run_asset_count = input;
self
}
pub fn get_last_run_asset_count(&self) -> &::std::option::Option<i32> {
&self.last_run_asset_count
}
pub fn error_message(mut self, input: crate::types::DataSourceErrorMessage) -> Self {
self.error_message = ::std::option::Option::Some(input);
self
}
pub fn set_error_message(mut self, input: ::std::option::Option<crate::types::DataSourceErrorMessage>) -> Self {
self.error_message = input;
self
}
pub fn get_error_message(&self) -> &::std::option::Option<crate::types::DataSourceErrorMessage> {
&self.error_message
}
pub fn created_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.created_at = ::std::option::Option::Some(input);
self
}
pub fn set_created_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.created_at = input;
self
}
pub fn get_created_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.created_at
}
pub fn updated_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.updated_at = ::std::option::Option::Some(input);
self
}
pub fn set_updated_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.updated_at = input;
self
}
pub fn get_updated_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.updated_at
}
pub fn self_grant_status(mut self, input: crate::types::SelfGrantStatusOutput) -> Self {
self.self_grant_status = ::std::option::Option::Some(input);
self
}
pub fn set_self_grant_status(mut self, input: ::std::option::Option<crate::types::SelfGrantStatusOutput>) -> Self {
self.self_grant_status = input;
self
}
pub fn get_self_grant_status(&self) -> &::std::option::Option<crate::types::SelfGrantStatusOutput> {
&self.self_grant_status
}
pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
self._request_id = Some(request_id.into());
self
}
pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
self._request_id = request_id;
self
}
pub fn build(
self,
) -> ::std::result::Result<crate::operation::get_data_source::GetDataSourceOutput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::get_data_source::GetDataSourceOutput {
id: self.id.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"id",
"id was not specified but it is required when building GetDataSourceOutput",
)
})?,
status: self.status,
r#type: self.r#type,
name: self.name.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"name",
"name was not specified but it is required when building GetDataSourceOutput",
)
})?,
description: self.description,
domain_id: self.domain_id.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"domain_id",
"domain_id was not specified but it is required when building GetDataSourceOutput",
)
})?,
project_id: self.project_id.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"project_id",
"project_id was not specified but it is required when building GetDataSourceOutput",
)
})?,
environment_id: self.environment_id,
connection_id: self.connection_id,
configuration: self.configuration,
recommendation: self.recommendation,
enable_setting: self.enable_setting,
publish_on_import: self.publish_on_import,
asset_forms_output: self.asset_forms_output,
schedule: self.schedule,
last_run_status: self.last_run_status,
last_run_at: self.last_run_at,
last_run_error_message: self.last_run_error_message,
last_run_asset_count: self.last_run_asset_count,
error_message: self.error_message,
created_at: self.created_at,
updated_at: self.updated_at,
self_grant_status: self.self_grant_status,
_request_id: self._request_id,
})
}
}
impl ::std::fmt::Debug for GetDataSourceOutputBuilder {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("GetDataSourceOutputBuilder");
formatter.field("id", &self.id);
formatter.field("status", &self.status);
formatter.field("r#type", &self.r#type);
formatter.field("name", &"*** Sensitive Data Redacted ***");
formatter.field("description", &"*** Sensitive Data Redacted ***");
formatter.field("domain_id", &self.domain_id);
formatter.field("project_id", &self.project_id);
formatter.field("environment_id", &self.environment_id);
formatter.field("connection_id", &self.connection_id);
formatter.field("configuration", &self.configuration);
formatter.field("recommendation", &self.recommendation);
formatter.field("enable_setting", &self.enable_setting);
formatter.field("publish_on_import", &self.publish_on_import);
formatter.field("asset_forms_output", &self.asset_forms_output);
formatter.field("schedule", &"*** Sensitive Data Redacted ***");
formatter.field("last_run_status", &self.last_run_status);
formatter.field("last_run_at", &self.last_run_at);
formatter.field("last_run_error_message", &self.last_run_error_message);
formatter.field("last_run_asset_count", &self.last_run_asset_count);
formatter.field("error_message", &self.error_message);
formatter.field("created_at", &self.created_at);
formatter.field("updated_at", &self.updated_at);
formatter.field("self_grant_status", &self.self_grant_status);
formatter.field("_request_id", &self._request_id);
formatter.finish()
}
}