#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ValidationExceptionField {
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub message: std::option::Option<std::string::String>,
}
impl ValidationExceptionField {
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn message(&self) -> std::option::Option<&str> {
self.message.as_deref()
}
}
pub mod validation_exception_field {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) message: std::option::Option<std::string::String>,
}
impl Builder {
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn message(mut self, input: impl Into<std::string::String>) -> Self {
self.message = Some(input.into());
self
}
pub fn set_message(mut self, input: std::option::Option<std::string::String>) -> Self {
self.message = input;
self
}
pub fn build(self) -> crate::model::ValidationExceptionField {
crate::model::ValidationExceptionField {
name: self.name,
message: self.message,
}
}
}
}
impl ValidationExceptionField {
pub fn builder() -> crate::model::validation_exception_field::Builder {
crate::model::validation_exception_field::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ValidationExceptionReason {
#[allow(missing_docs)] FieldValidationFailed,
#[allow(missing_docs)] InvalidConfiguration,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ValidationExceptionReason {
fn from(s: &str) -> Self {
match s {
"FIELD_VALIDATION_FAILED" => ValidationExceptionReason::FieldValidationFailed,
"INVALID_CONFIGURATION" => ValidationExceptionReason::InvalidConfiguration,
other => ValidationExceptionReason::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for ValidationExceptionReason {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ValidationExceptionReason::from(s))
}
}
impl ValidationExceptionReason {
pub fn as_str(&self) -> &str {
match self {
ValidationExceptionReason::FieldValidationFailed => "FIELD_VALIDATION_FAILED",
ValidationExceptionReason::InvalidConfiguration => "INVALID_CONFIGURATION",
ValidationExceptionReason::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["FIELD_VALIDATION_FAILED", "INVALID_CONFIGURATION"]
}
}
impl AsRef<str> for ValidationExceptionReason {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ResourceType {
#[allow(missing_docs)] Collaboration,
#[allow(missing_docs)] ConfiguredTable,
#[allow(missing_docs)] ConfiguredTableAssociation,
#[allow(missing_docs)] Membership,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ResourceType {
fn from(s: &str) -> Self {
match s {
"COLLABORATION" => ResourceType::Collaboration,
"CONFIGURED_TABLE" => ResourceType::ConfiguredTable,
"CONFIGURED_TABLE_ASSOCIATION" => ResourceType::ConfiguredTableAssociation,
"MEMBERSHIP" => ResourceType::Membership,
other => ResourceType::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for ResourceType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ResourceType::from(s))
}
}
impl ResourceType {
pub fn as_str(&self) -> &str {
match self {
ResourceType::Collaboration => "COLLABORATION",
ResourceType::ConfiguredTable => "CONFIGURED_TABLE",
ResourceType::ConfiguredTableAssociation => "CONFIGURED_TABLE_ASSOCIATION",
ResourceType::Membership => "MEMBERSHIP",
ResourceType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"COLLABORATION",
"CONFIGURED_TABLE",
"CONFIGURED_TABLE_ASSOCIATION",
"MEMBERSHIP",
]
}
}
impl AsRef<str> for ResourceType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ConflictExceptionReason {
#[allow(missing_docs)] AlreadyExists,
#[allow(missing_docs)] InvalidState,
#[allow(missing_docs)] SubresourcesExist,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ConflictExceptionReason {
fn from(s: &str) -> Self {
match s {
"ALREADY_EXISTS" => ConflictExceptionReason::AlreadyExists,
"INVALID_STATE" => ConflictExceptionReason::InvalidState,
"SUBRESOURCES_EXIST" => ConflictExceptionReason::SubresourcesExist,
other => ConflictExceptionReason::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for ConflictExceptionReason {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ConflictExceptionReason::from(s))
}
}
impl ConflictExceptionReason {
pub fn as_str(&self) -> &str {
match self {
ConflictExceptionReason::AlreadyExists => "ALREADY_EXISTS",
ConflictExceptionReason::InvalidState => "INVALID_STATE",
ConflictExceptionReason::SubresourcesExist => "SUBRESOURCES_EXIST",
ConflictExceptionReason::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["ALREADY_EXISTS", "INVALID_STATE", "SUBRESOURCES_EXIST"]
}
}
impl AsRef<str> for ConflictExceptionReason {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum AccessDeniedExceptionReason {
#[allow(missing_docs)] InsufficientPermissions,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for AccessDeniedExceptionReason {
fn from(s: &str) -> Self {
match s {
"INSUFFICIENT_PERMISSIONS" => AccessDeniedExceptionReason::InsufficientPermissions,
other => AccessDeniedExceptionReason::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for AccessDeniedExceptionReason {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(AccessDeniedExceptionReason::from(s))
}
}
impl AccessDeniedExceptionReason {
pub fn as_str(&self) -> &str {
match self {
AccessDeniedExceptionReason::InsufficientPermissions => "INSUFFICIENT_PERMISSIONS",
AccessDeniedExceptionReason::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["INSUFFICIENT_PERMISSIONS"]
}
}
impl AsRef<str> for AccessDeniedExceptionReason {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq)]
pub struct ProtectedQuery {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub sql_parameters: std::option::Option<crate::model::ProtectedQuerySqlParameters>,
#[doc(hidden)]
pub status: std::option::Option<crate::model::ProtectedQueryStatus>,
#[doc(hidden)]
pub result_configuration: std::option::Option<crate::model::ProtectedQueryResultConfiguration>,
#[doc(hidden)]
pub statistics: std::option::Option<crate::model::ProtectedQueryStatistics>,
#[doc(hidden)]
pub result: std::option::Option<crate::model::ProtectedQueryResult>,
#[doc(hidden)]
pub error: std::option::Option<crate::model::ProtectedQueryError>,
}
impl ProtectedQuery {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn sql_parameters(
&self,
) -> std::option::Option<&crate::model::ProtectedQuerySqlParameters> {
self.sql_parameters.as_ref()
}
pub fn status(&self) -> std::option::Option<&crate::model::ProtectedQueryStatus> {
self.status.as_ref()
}
pub fn result_configuration(
&self,
) -> std::option::Option<&crate::model::ProtectedQueryResultConfiguration> {
self.result_configuration.as_ref()
}
pub fn statistics(&self) -> std::option::Option<&crate::model::ProtectedQueryStatistics> {
self.statistics.as_ref()
}
pub fn result(&self) -> std::option::Option<&crate::model::ProtectedQueryResult> {
self.result.as_ref()
}
pub fn error(&self) -> std::option::Option<&crate::model::ProtectedQueryError> {
self.error.as_ref()
}
}
impl std::fmt::Debug for ProtectedQuery {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("ProtectedQuery");
formatter.field("id", &self.id);
formatter.field("membership_id", &self.membership_id);
formatter.field("membership_arn", &self.membership_arn);
formatter.field("create_time", &self.create_time);
formatter.field("sql_parameters", &"*** Sensitive Data Redacted ***");
formatter.field("status", &self.status);
formatter.field("result_configuration", &self.result_configuration);
formatter.field("statistics", &self.statistics);
formatter.field("result", &self.result);
formatter.field("error", &self.error);
formatter.finish()
}
}
pub mod protected_query {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) sql_parameters: std::option::Option<crate::model::ProtectedQuerySqlParameters>,
pub(crate) status: std::option::Option<crate::model::ProtectedQueryStatus>,
pub(crate) result_configuration:
std::option::Option<crate::model::ProtectedQueryResultConfiguration>,
pub(crate) statistics: std::option::Option<crate::model::ProtectedQueryStatistics>,
pub(crate) result: std::option::Option<crate::model::ProtectedQueryResult>,
pub(crate) error: std::option::Option<crate::model::ProtectedQueryError>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn sql_parameters(mut self, input: crate::model::ProtectedQuerySqlParameters) -> Self {
self.sql_parameters = Some(input);
self
}
pub fn set_sql_parameters(
mut self,
input: std::option::Option<crate::model::ProtectedQuerySqlParameters>,
) -> Self {
self.sql_parameters = input;
self
}
pub fn status(mut self, input: crate::model::ProtectedQueryStatus) -> Self {
self.status = Some(input);
self
}
pub fn set_status(
mut self,
input: std::option::Option<crate::model::ProtectedQueryStatus>,
) -> Self {
self.status = input;
self
}
pub fn result_configuration(
mut self,
input: crate::model::ProtectedQueryResultConfiguration,
) -> Self {
self.result_configuration = Some(input);
self
}
pub fn set_result_configuration(
mut self,
input: std::option::Option<crate::model::ProtectedQueryResultConfiguration>,
) -> Self {
self.result_configuration = input;
self
}
pub fn statistics(mut self, input: crate::model::ProtectedQueryStatistics) -> Self {
self.statistics = Some(input);
self
}
pub fn set_statistics(
mut self,
input: std::option::Option<crate::model::ProtectedQueryStatistics>,
) -> Self {
self.statistics = input;
self
}
pub fn result(mut self, input: crate::model::ProtectedQueryResult) -> Self {
self.result = Some(input);
self
}
pub fn set_result(
mut self,
input: std::option::Option<crate::model::ProtectedQueryResult>,
) -> Self {
self.result = input;
self
}
pub fn error(mut self, input: crate::model::ProtectedQueryError) -> Self {
self.error = Some(input);
self
}
pub fn set_error(
mut self,
input: std::option::Option<crate::model::ProtectedQueryError>,
) -> Self {
self.error = input;
self
}
pub fn build(self) -> crate::model::ProtectedQuery {
crate::model::ProtectedQuery {
id: self.id,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
create_time: self.create_time,
sql_parameters: self.sql_parameters,
status: self.status,
result_configuration: self.result_configuration,
statistics: self.statistics,
result: self.result,
error: self.error,
}
}
}
impl std::fmt::Debug for Builder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("Builder");
formatter.field("id", &self.id);
formatter.field("membership_id", &self.membership_id);
formatter.field("membership_arn", &self.membership_arn);
formatter.field("create_time", &self.create_time);
formatter.field("sql_parameters", &"*** Sensitive Data Redacted ***");
formatter.field("status", &self.status);
formatter.field("result_configuration", &self.result_configuration);
formatter.field("statistics", &self.statistics);
formatter.field("result", &self.result);
formatter.field("error", &self.error);
formatter.finish()
}
}
}
impl ProtectedQuery {
pub fn builder() -> crate::model::protected_query::Builder {
crate::model::protected_query::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQueryError {
#[doc(hidden)]
pub message: std::option::Option<std::string::String>,
#[doc(hidden)]
pub code: std::option::Option<std::string::String>,
}
impl ProtectedQueryError {
pub fn message(&self) -> std::option::Option<&str> {
self.message.as_deref()
}
pub fn code(&self) -> std::option::Option<&str> {
self.code.as_deref()
}
}
pub mod protected_query_error {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) message: std::option::Option<std::string::String>,
pub(crate) code: std::option::Option<std::string::String>,
}
impl Builder {
pub fn message(mut self, input: impl Into<std::string::String>) -> Self {
self.message = Some(input.into());
self
}
pub fn set_message(mut self, input: std::option::Option<std::string::String>) -> Self {
self.message = input;
self
}
pub fn code(mut self, input: impl Into<std::string::String>) -> Self {
self.code = Some(input.into());
self
}
pub fn set_code(mut self, input: std::option::Option<std::string::String>) -> Self {
self.code = input;
self
}
pub fn build(self) -> crate::model::ProtectedQueryError {
crate::model::ProtectedQueryError {
message: self.message,
code: self.code,
}
}
}
}
impl ProtectedQueryError {
pub fn builder() -> crate::model::protected_query_error::Builder {
crate::model::protected_query_error::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQueryResult {
#[doc(hidden)]
pub output: std::option::Option<crate::model::ProtectedQueryOutput>,
}
impl ProtectedQueryResult {
pub fn output(&self) -> std::option::Option<&crate::model::ProtectedQueryOutput> {
self.output.as_ref()
}
}
pub mod protected_query_result {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) output: std::option::Option<crate::model::ProtectedQueryOutput>,
}
impl Builder {
pub fn output(mut self, input: crate::model::ProtectedQueryOutput) -> Self {
self.output = Some(input);
self
}
pub fn set_output(
mut self,
input: std::option::Option<crate::model::ProtectedQueryOutput>,
) -> Self {
self.output = input;
self
}
pub fn build(self) -> crate::model::ProtectedQueryResult {
crate::model::ProtectedQueryResult {
output: self.output,
}
}
}
}
impl ProtectedQueryResult {
pub fn builder() -> crate::model::protected_query_result::Builder {
crate::model::protected_query_result::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum ProtectedQueryOutput {
S3(crate::model::ProtectedQueryS3Output),
#[non_exhaustive]
Unknown,
}
impl ProtectedQueryOutput {
#[allow(irrefutable_let_patterns)]
pub fn as_s3(&self) -> std::result::Result<&crate::model::ProtectedQueryS3Output, &Self> {
if let ProtectedQueryOutput::S3(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_s3(&self) -> bool {
self.as_s3().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQueryS3Output {
#[doc(hidden)]
pub location: std::option::Option<std::string::String>,
}
impl ProtectedQueryS3Output {
pub fn location(&self) -> std::option::Option<&str> {
self.location.as_deref()
}
}
pub mod protected_query_s3_output {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) location: std::option::Option<std::string::String>,
}
impl Builder {
pub fn location(mut self, input: impl Into<std::string::String>) -> Self {
self.location = Some(input.into());
self
}
pub fn set_location(mut self, input: std::option::Option<std::string::String>) -> Self {
self.location = input;
self
}
pub fn build(self) -> crate::model::ProtectedQueryS3Output {
crate::model::ProtectedQueryS3Output {
location: self.location,
}
}
}
}
impl ProtectedQueryS3Output {
pub fn builder() -> crate::model::protected_query_s3_output::Builder {
crate::model::protected_query_s3_output::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQueryStatistics {
#[doc(hidden)]
pub total_duration_in_millis: std::option::Option<i64>,
}
impl ProtectedQueryStatistics {
pub fn total_duration_in_millis(&self) -> std::option::Option<i64> {
self.total_duration_in_millis
}
}
pub mod protected_query_statistics {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) total_duration_in_millis: std::option::Option<i64>,
}
impl Builder {
pub fn total_duration_in_millis(mut self, input: i64) -> Self {
self.total_duration_in_millis = Some(input);
self
}
pub fn set_total_duration_in_millis(mut self, input: std::option::Option<i64>) -> Self {
self.total_duration_in_millis = input;
self
}
pub fn build(self) -> crate::model::ProtectedQueryStatistics {
crate::model::ProtectedQueryStatistics {
total_duration_in_millis: self.total_duration_in_millis,
}
}
}
}
impl ProtectedQueryStatistics {
pub fn builder() -> crate::model::protected_query_statistics::Builder {
crate::model::protected_query_statistics::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQueryResultConfiguration {
#[doc(hidden)]
pub output_configuration: std::option::Option<crate::model::ProtectedQueryOutputConfiguration>,
}
impl ProtectedQueryResultConfiguration {
pub fn output_configuration(
&self,
) -> std::option::Option<&crate::model::ProtectedQueryOutputConfiguration> {
self.output_configuration.as_ref()
}
}
pub mod protected_query_result_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) output_configuration:
std::option::Option<crate::model::ProtectedQueryOutputConfiguration>,
}
impl Builder {
pub fn output_configuration(
mut self,
input: crate::model::ProtectedQueryOutputConfiguration,
) -> Self {
self.output_configuration = Some(input);
self
}
pub fn set_output_configuration(
mut self,
input: std::option::Option<crate::model::ProtectedQueryOutputConfiguration>,
) -> Self {
self.output_configuration = input;
self
}
pub fn build(self) -> crate::model::ProtectedQueryResultConfiguration {
crate::model::ProtectedQueryResultConfiguration {
output_configuration: self.output_configuration,
}
}
}
}
impl ProtectedQueryResultConfiguration {
pub fn builder() -> crate::model::protected_query_result_configuration::Builder {
crate::model::protected_query_result_configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum ProtectedQueryOutputConfiguration {
S3(crate::model::ProtectedQueryS3OutputConfiguration),
#[non_exhaustive]
Unknown,
}
impl ProtectedQueryOutputConfiguration {
#[allow(irrefutable_let_patterns)]
pub fn as_s3(
&self,
) -> std::result::Result<&crate::model::ProtectedQueryS3OutputConfiguration, &Self> {
if let ProtectedQueryOutputConfiguration::S3(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_s3(&self) -> bool {
self.as_s3().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQueryS3OutputConfiguration {
#[doc(hidden)]
pub result_format: std::option::Option<crate::model::ResultFormat>,
#[doc(hidden)]
pub bucket: std::option::Option<std::string::String>,
#[doc(hidden)]
pub key_prefix: std::option::Option<std::string::String>,
}
impl ProtectedQueryS3OutputConfiguration {
pub fn result_format(&self) -> std::option::Option<&crate::model::ResultFormat> {
self.result_format.as_ref()
}
pub fn bucket(&self) -> std::option::Option<&str> {
self.bucket.as_deref()
}
pub fn key_prefix(&self) -> std::option::Option<&str> {
self.key_prefix.as_deref()
}
}
pub mod protected_query_s3_output_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) result_format: std::option::Option<crate::model::ResultFormat>,
pub(crate) bucket: std::option::Option<std::string::String>,
pub(crate) key_prefix: std::option::Option<std::string::String>,
}
impl Builder {
pub fn result_format(mut self, input: crate::model::ResultFormat) -> Self {
self.result_format = Some(input);
self
}
pub fn set_result_format(
mut self,
input: std::option::Option<crate::model::ResultFormat>,
) -> Self {
self.result_format = input;
self
}
pub fn bucket(mut self, input: impl Into<std::string::String>) -> Self {
self.bucket = Some(input.into());
self
}
pub fn set_bucket(mut self, input: std::option::Option<std::string::String>) -> Self {
self.bucket = input;
self
}
pub fn key_prefix(mut self, input: impl Into<std::string::String>) -> Self {
self.key_prefix = Some(input.into());
self
}
pub fn set_key_prefix(mut self, input: std::option::Option<std::string::String>) -> Self {
self.key_prefix = input;
self
}
pub fn build(self) -> crate::model::ProtectedQueryS3OutputConfiguration {
crate::model::ProtectedQueryS3OutputConfiguration {
result_format: self.result_format,
bucket: self.bucket,
key_prefix: self.key_prefix,
}
}
}
}
impl ProtectedQueryS3OutputConfiguration {
pub fn builder() -> crate::model::protected_query_s3_output_configuration::Builder {
crate::model::protected_query_s3_output_configuration::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ResultFormat {
#[allow(missing_docs)] Csv,
#[allow(missing_docs)] Parquet,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ResultFormat {
fn from(s: &str) -> Self {
match s {
"CSV" => ResultFormat::Csv,
"PARQUET" => ResultFormat::Parquet,
other => ResultFormat::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for ResultFormat {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ResultFormat::from(s))
}
}
impl ResultFormat {
pub fn as_str(&self) -> &str {
match self {
ResultFormat::Csv => "CSV",
ResultFormat::Parquet => "PARQUET",
ResultFormat::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["CSV", "PARQUET"]
}
}
impl AsRef<str> for ResultFormat {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ProtectedQueryStatus {
#[allow(missing_docs)] Cancelled,
#[allow(missing_docs)] Cancelling,
#[allow(missing_docs)] Failed,
#[allow(missing_docs)] Started,
#[allow(missing_docs)] Submitted,
#[allow(missing_docs)] Success,
#[allow(missing_docs)] TimedOut,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ProtectedQueryStatus {
fn from(s: &str) -> Self {
match s {
"CANCELLED" => ProtectedQueryStatus::Cancelled,
"CANCELLING" => ProtectedQueryStatus::Cancelling,
"FAILED" => ProtectedQueryStatus::Failed,
"STARTED" => ProtectedQueryStatus::Started,
"SUBMITTED" => ProtectedQueryStatus::Submitted,
"SUCCESS" => ProtectedQueryStatus::Success,
"TIMED_OUT" => ProtectedQueryStatus::TimedOut,
other => {
ProtectedQueryStatus::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for ProtectedQueryStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ProtectedQueryStatus::from(s))
}
}
impl ProtectedQueryStatus {
pub fn as_str(&self) -> &str {
match self {
ProtectedQueryStatus::Cancelled => "CANCELLED",
ProtectedQueryStatus::Cancelling => "CANCELLING",
ProtectedQueryStatus::Failed => "FAILED",
ProtectedQueryStatus::Started => "STARTED",
ProtectedQueryStatus::Submitted => "SUBMITTED",
ProtectedQueryStatus::Success => "SUCCESS",
ProtectedQueryStatus::TimedOut => "TIMED_OUT",
ProtectedQueryStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"CANCELLED",
"CANCELLING",
"FAILED",
"STARTED",
"SUBMITTED",
"SUCCESS",
"TIMED_OUT",
]
}
}
impl AsRef<str> for ProtectedQueryStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq)]
pub struct ProtectedQuerySqlParameters {
#[doc(hidden)]
pub query_string: std::option::Option<std::string::String>,
}
impl ProtectedQuerySqlParameters {
pub fn query_string(&self) -> std::option::Option<&str> {
self.query_string.as_deref()
}
}
impl std::fmt::Debug for ProtectedQuerySqlParameters {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("ProtectedQuerySqlParameters");
formatter.field("query_string", &"*** Sensitive Data Redacted ***");
formatter.finish()
}
}
pub mod protected_query_sql_parameters {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default)]
pub struct Builder {
pub(crate) query_string: std::option::Option<std::string::String>,
}
impl Builder {
pub fn query_string(mut self, input: impl Into<std::string::String>) -> Self {
self.query_string = Some(input.into());
self
}
pub fn set_query_string(mut self, input: std::option::Option<std::string::String>) -> Self {
self.query_string = input;
self
}
pub fn build(self) -> crate::model::ProtectedQuerySqlParameters {
crate::model::ProtectedQuerySqlParameters {
query_string: self.query_string,
}
}
}
impl std::fmt::Debug for Builder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("Builder");
formatter.field("query_string", &"*** Sensitive Data Redacted ***");
formatter.finish()
}
}
}
impl ProtectedQuerySqlParameters {
pub fn builder() -> crate::model::protected_query_sql_parameters::Builder {
crate::model::protected_query_sql_parameters::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum TargetProtectedQueryStatus {
#[allow(missing_docs)] Cancelled,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for TargetProtectedQueryStatus {
fn from(s: &str) -> Self {
match s {
"CANCELLED" => TargetProtectedQueryStatus::Cancelled,
other => TargetProtectedQueryStatus::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for TargetProtectedQueryStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(TargetProtectedQueryStatus::from(s))
}
}
impl TargetProtectedQueryStatus {
pub fn as_str(&self) -> &str {
match self {
TargetProtectedQueryStatus::Cancelled => "CANCELLED",
TargetProtectedQueryStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["CANCELLED"]
}
}
impl AsRef<str> for TargetProtectedQueryStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ProtectedQueryType {
#[allow(missing_docs)] Sql,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ProtectedQueryType {
fn from(s: &str) -> Self {
match s {
"SQL" => ProtectedQueryType::Sql,
other => {
ProtectedQueryType::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for ProtectedQueryType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ProtectedQueryType::from(s))
}
}
impl ProtectedQueryType {
pub fn as_str(&self) -> &str {
match self {
ProtectedQueryType::Sql => "SQL",
ProtectedQueryType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["SQL"]
}
}
impl AsRef<str> for ProtectedQueryType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ProtectedQuerySummary {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub status: std::option::Option<crate::model::ProtectedQueryStatus>,
}
impl ProtectedQuerySummary {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn status(&self) -> std::option::Option<&crate::model::ProtectedQueryStatus> {
self.status.as_ref()
}
}
pub mod protected_query_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) status: std::option::Option<crate::model::ProtectedQueryStatus>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn status(mut self, input: crate::model::ProtectedQueryStatus) -> Self {
self.status = Some(input);
self
}
pub fn set_status(
mut self,
input: std::option::Option<crate::model::ProtectedQueryStatus>,
) -> Self {
self.status = input;
self
}
pub fn build(self) -> crate::model::ProtectedQuerySummary {
crate::model::ProtectedQuerySummary {
id: self.id,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
create_time: self.create_time,
status: self.status,
}
}
}
}
impl ProtectedQuerySummary {
pub fn builder() -> crate::model::protected_query_summary::Builder {
crate::model::protected_query_summary::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct MembershipSummary {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_creator_account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_creator_display_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub status: std::option::Option<crate::model::MembershipStatus>,
#[doc(hidden)]
pub member_abilities: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
}
impl MembershipSummary {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn collaboration_arn(&self) -> std::option::Option<&str> {
self.collaboration_arn.as_deref()
}
pub fn collaboration_id(&self) -> std::option::Option<&str> {
self.collaboration_id.as_deref()
}
pub fn collaboration_creator_account_id(&self) -> std::option::Option<&str> {
self.collaboration_creator_account_id.as_deref()
}
pub fn collaboration_creator_display_name(&self) -> std::option::Option<&str> {
self.collaboration_creator_display_name.as_deref()
}
pub fn collaboration_name(&self) -> std::option::Option<&str> {
self.collaboration_name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn status(&self) -> std::option::Option<&crate::model::MembershipStatus> {
self.status.as_ref()
}
pub fn member_abilities(&self) -> std::option::Option<&[crate::model::MemberAbility]> {
self.member_abilities.as_deref()
}
}
pub mod membership_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) collaboration_arn: std::option::Option<std::string::String>,
pub(crate) collaboration_id: std::option::Option<std::string::String>,
pub(crate) collaboration_creator_account_id: std::option::Option<std::string::String>,
pub(crate) collaboration_creator_display_name: std::option::Option<std::string::String>,
pub(crate) collaboration_name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) status: std::option::Option<crate::model::MembershipStatus>,
pub(crate) member_abilities:
std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn collaboration_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_arn = Some(input.into());
self
}
pub fn set_collaboration_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_arn = input;
self
}
pub fn collaboration_id(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_id = Some(input.into());
self
}
pub fn set_collaboration_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_id = input;
self
}
pub fn collaboration_creator_account_id(
mut self,
input: impl Into<std::string::String>,
) -> Self {
self.collaboration_creator_account_id = Some(input.into());
self
}
pub fn set_collaboration_creator_account_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_creator_account_id = input;
self
}
pub fn collaboration_creator_display_name(
mut self,
input: impl Into<std::string::String>,
) -> Self {
self.collaboration_creator_display_name = Some(input.into());
self
}
pub fn set_collaboration_creator_display_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_creator_display_name = input;
self
}
pub fn collaboration_name(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_name = Some(input.into());
self
}
pub fn set_collaboration_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn status(mut self, input: crate::model::MembershipStatus) -> Self {
self.status = Some(input);
self
}
pub fn set_status(
mut self,
input: std::option::Option<crate::model::MembershipStatus>,
) -> Self {
self.status = input;
self
}
pub fn member_abilities(mut self, input: crate::model::MemberAbility) -> Self {
let mut v = self.member_abilities.unwrap_or_default();
v.push(input);
self.member_abilities = Some(v);
self
}
pub fn set_member_abilities(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
) -> Self {
self.member_abilities = input;
self
}
pub fn build(self) -> crate::model::MembershipSummary {
crate::model::MembershipSummary {
id: self.id,
arn: self.arn,
collaboration_arn: self.collaboration_arn,
collaboration_id: self.collaboration_id,
collaboration_creator_account_id: self.collaboration_creator_account_id,
collaboration_creator_display_name: self.collaboration_creator_display_name,
collaboration_name: self.collaboration_name,
create_time: self.create_time,
update_time: self.update_time,
status: self.status,
member_abilities: self.member_abilities,
}
}
}
}
impl MembershipSummary {
pub fn builder() -> crate::model::membership_summary::Builder {
crate::model::membership_summary::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum MemberAbility {
#[allow(missing_docs)] CanQuery,
#[allow(missing_docs)] CanReceiveResults,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for MemberAbility {
fn from(s: &str) -> Self {
match s {
"CAN_QUERY" => MemberAbility::CanQuery,
"CAN_RECEIVE_RESULTS" => MemberAbility::CanReceiveResults,
other => MemberAbility::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for MemberAbility {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(MemberAbility::from(s))
}
}
impl MemberAbility {
pub fn as_str(&self) -> &str {
match self {
MemberAbility::CanQuery => "CAN_QUERY",
MemberAbility::CanReceiveResults => "CAN_RECEIVE_RESULTS",
MemberAbility::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["CAN_QUERY", "CAN_RECEIVE_RESULTS"]
}
}
impl AsRef<str> for MemberAbility {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum MembershipStatus {
#[allow(missing_docs)] Active,
#[allow(missing_docs)] CollaborationDeleted,
#[allow(missing_docs)] Removed,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for MembershipStatus {
fn from(s: &str) -> Self {
match s {
"ACTIVE" => MembershipStatus::Active,
"COLLABORATION_DELETED" => MembershipStatus::CollaborationDeleted,
"REMOVED" => MembershipStatus::Removed,
other => MembershipStatus::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for MembershipStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(MembershipStatus::from(s))
}
}
impl MembershipStatus {
pub fn as_str(&self) -> &str {
match self {
MembershipStatus::Active => "ACTIVE",
MembershipStatus::CollaborationDeleted => "COLLABORATION_DELETED",
MembershipStatus::Removed => "REMOVED",
MembershipStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["ACTIVE", "COLLABORATION_DELETED", "REMOVED"]
}
}
impl AsRef<str> for MembershipStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Membership {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_creator_account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_creator_display_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub status: std::option::Option<crate::model::MembershipStatus>,
#[doc(hidden)]
pub member_abilities: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
#[doc(hidden)]
pub query_log_status: std::option::Option<crate::model::MembershipQueryLogStatus>,
}
impl Membership {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn collaboration_arn(&self) -> std::option::Option<&str> {
self.collaboration_arn.as_deref()
}
pub fn collaboration_id(&self) -> std::option::Option<&str> {
self.collaboration_id.as_deref()
}
pub fn collaboration_creator_account_id(&self) -> std::option::Option<&str> {
self.collaboration_creator_account_id.as_deref()
}
pub fn collaboration_creator_display_name(&self) -> std::option::Option<&str> {
self.collaboration_creator_display_name.as_deref()
}
pub fn collaboration_name(&self) -> std::option::Option<&str> {
self.collaboration_name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn status(&self) -> std::option::Option<&crate::model::MembershipStatus> {
self.status.as_ref()
}
pub fn member_abilities(&self) -> std::option::Option<&[crate::model::MemberAbility]> {
self.member_abilities.as_deref()
}
pub fn query_log_status(&self) -> std::option::Option<&crate::model::MembershipQueryLogStatus> {
self.query_log_status.as_ref()
}
}
pub mod membership {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) collaboration_arn: std::option::Option<std::string::String>,
pub(crate) collaboration_id: std::option::Option<std::string::String>,
pub(crate) collaboration_creator_account_id: std::option::Option<std::string::String>,
pub(crate) collaboration_creator_display_name: std::option::Option<std::string::String>,
pub(crate) collaboration_name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) status: std::option::Option<crate::model::MembershipStatus>,
pub(crate) member_abilities:
std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
pub(crate) query_log_status: std::option::Option<crate::model::MembershipQueryLogStatus>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn collaboration_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_arn = Some(input.into());
self
}
pub fn set_collaboration_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_arn = input;
self
}
pub fn collaboration_id(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_id = Some(input.into());
self
}
pub fn set_collaboration_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_id = input;
self
}
pub fn collaboration_creator_account_id(
mut self,
input: impl Into<std::string::String>,
) -> Self {
self.collaboration_creator_account_id = Some(input.into());
self
}
pub fn set_collaboration_creator_account_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_creator_account_id = input;
self
}
pub fn collaboration_creator_display_name(
mut self,
input: impl Into<std::string::String>,
) -> Self {
self.collaboration_creator_display_name = Some(input.into());
self
}
pub fn set_collaboration_creator_display_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_creator_display_name = input;
self
}
pub fn collaboration_name(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_name = Some(input.into());
self
}
pub fn set_collaboration_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn status(mut self, input: crate::model::MembershipStatus) -> Self {
self.status = Some(input);
self
}
pub fn set_status(
mut self,
input: std::option::Option<crate::model::MembershipStatus>,
) -> Self {
self.status = input;
self
}
pub fn member_abilities(mut self, input: crate::model::MemberAbility) -> Self {
let mut v = self.member_abilities.unwrap_or_default();
v.push(input);
self.member_abilities = Some(v);
self
}
pub fn set_member_abilities(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
) -> Self {
self.member_abilities = input;
self
}
pub fn query_log_status(mut self, input: crate::model::MembershipQueryLogStatus) -> Self {
self.query_log_status = Some(input);
self
}
pub fn set_query_log_status(
mut self,
input: std::option::Option<crate::model::MembershipQueryLogStatus>,
) -> Self {
self.query_log_status = input;
self
}
pub fn build(self) -> crate::model::Membership {
crate::model::Membership {
id: self.id,
arn: self.arn,
collaboration_arn: self.collaboration_arn,
collaboration_id: self.collaboration_id,
collaboration_creator_account_id: self.collaboration_creator_account_id,
collaboration_creator_display_name: self.collaboration_creator_display_name,
collaboration_name: self.collaboration_name,
create_time: self.create_time,
update_time: self.update_time,
status: self.status,
member_abilities: self.member_abilities,
query_log_status: self.query_log_status,
}
}
}
}
impl Membership {
pub fn builder() -> crate::model::membership::Builder {
crate::model::membership::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum MembershipQueryLogStatus {
#[allow(missing_docs)] Disabled,
#[allow(missing_docs)] Enabled,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for MembershipQueryLogStatus {
fn from(s: &str) -> Self {
match s {
"DISABLED" => MembershipQueryLogStatus::Disabled,
"ENABLED" => MembershipQueryLogStatus::Enabled,
other => MembershipQueryLogStatus::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for MembershipQueryLogStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(MembershipQueryLogStatus::from(s))
}
}
impl MembershipQueryLogStatus {
pub fn as_str(&self) -> &str {
match self {
MembershipQueryLogStatus::Disabled => "DISABLED",
MembershipQueryLogStatus::Enabled => "ENABLED",
MembershipQueryLogStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["DISABLED", "ENABLED"]
}
}
impl AsRef<str> for MembershipQueryLogStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ConfiguredTableAnalysisRule {
#[doc(hidden)]
pub configured_table_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub configured_table_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub policy: std::option::Option<crate::model::ConfiguredTableAnalysisRulePolicy>,
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::ConfiguredTableAnalysisRuleType>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
}
impl ConfiguredTableAnalysisRule {
pub fn configured_table_id(&self) -> std::option::Option<&str> {
self.configured_table_id.as_deref()
}
pub fn configured_table_arn(&self) -> std::option::Option<&str> {
self.configured_table_arn.as_deref()
}
pub fn policy(&self) -> std::option::Option<&crate::model::ConfiguredTableAnalysisRulePolicy> {
self.policy.as_ref()
}
pub fn r#type(&self) -> std::option::Option<&crate::model::ConfiguredTableAnalysisRuleType> {
self.r#type.as_ref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
}
pub mod configured_table_analysis_rule {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) configured_table_id: std::option::Option<std::string::String>,
pub(crate) configured_table_arn: std::option::Option<std::string::String>,
pub(crate) policy: std::option::Option<crate::model::ConfiguredTableAnalysisRulePolicy>,
pub(crate) r#type: std::option::Option<crate::model::ConfiguredTableAnalysisRuleType>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
}
impl Builder {
pub fn configured_table_id(mut self, input: impl Into<std::string::String>) -> Self {
self.configured_table_id = Some(input.into());
self
}
pub fn set_configured_table_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.configured_table_id = input;
self
}
pub fn configured_table_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.configured_table_arn = Some(input.into());
self
}
pub fn set_configured_table_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.configured_table_arn = input;
self
}
pub fn policy(mut self, input: crate::model::ConfiguredTableAnalysisRulePolicy) -> Self {
self.policy = Some(input);
self
}
pub fn set_policy(
mut self,
input: std::option::Option<crate::model::ConfiguredTableAnalysisRulePolicy>,
) -> Self {
self.policy = input;
self
}
pub fn r#type(mut self, input: crate::model::ConfiguredTableAnalysisRuleType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(
mut self,
input: std::option::Option<crate::model::ConfiguredTableAnalysisRuleType>,
) -> Self {
self.r#type = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn build(self) -> crate::model::ConfiguredTableAnalysisRule {
crate::model::ConfiguredTableAnalysisRule {
configured_table_id: self.configured_table_id,
configured_table_arn: self.configured_table_arn,
policy: self.policy,
r#type: self.r#type,
create_time: self.create_time,
update_time: self.update_time,
}
}
}
}
impl ConfiguredTableAnalysisRule {
pub fn builder() -> crate::model::configured_table_analysis_rule::Builder {
crate::model::configured_table_analysis_rule::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ConfiguredTableAnalysisRuleType {
#[allow(missing_docs)] Aggregation,
#[allow(missing_docs)] List,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ConfiguredTableAnalysisRuleType {
fn from(s: &str) -> Self {
match s {
"AGGREGATION" => ConfiguredTableAnalysisRuleType::Aggregation,
"LIST" => ConfiguredTableAnalysisRuleType::List,
other => ConfiguredTableAnalysisRuleType::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for ConfiguredTableAnalysisRuleType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ConfiguredTableAnalysisRuleType::from(s))
}
}
impl ConfiguredTableAnalysisRuleType {
pub fn as_str(&self) -> &str {
match self {
ConfiguredTableAnalysisRuleType::Aggregation => "AGGREGATION",
ConfiguredTableAnalysisRuleType::List => "LIST",
ConfiguredTableAnalysisRuleType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["AGGREGATION", "LIST"]
}
}
impl AsRef<str> for ConfiguredTableAnalysisRuleType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum ConfiguredTableAnalysisRulePolicy {
V1(crate::model::ConfiguredTableAnalysisRulePolicyV1),
#[non_exhaustive]
Unknown,
}
impl ConfiguredTableAnalysisRulePolicy {
#[allow(irrefutable_let_patterns)]
pub fn as_v1(
&self,
) -> std::result::Result<&crate::model::ConfiguredTableAnalysisRulePolicyV1, &Self> {
if let ConfiguredTableAnalysisRulePolicy::V1(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_v1(&self) -> bool {
self.as_v1().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum ConfiguredTableAnalysisRulePolicyV1 {
Aggregation(crate::model::AnalysisRuleAggregation),
List(crate::model::AnalysisRuleList),
#[non_exhaustive]
Unknown,
}
impl ConfiguredTableAnalysisRulePolicyV1 {
pub fn as_aggregation(
&self,
) -> std::result::Result<&crate::model::AnalysisRuleAggregation, &Self> {
if let ConfiguredTableAnalysisRulePolicyV1::Aggregation(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_aggregation(&self) -> bool {
self.as_aggregation().is_ok()
}
pub fn as_list(&self) -> std::result::Result<&crate::model::AnalysisRuleList, &Self> {
if let ConfiguredTableAnalysisRulePolicyV1::List(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_list(&self) -> bool {
self.as_list().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct AnalysisRuleAggregation {
#[doc(hidden)]
pub aggregate_columns: std::option::Option<std::vec::Vec<crate::model::AggregateColumn>>,
#[doc(hidden)]
pub join_columns: std::option::Option<std::vec::Vec<std::string::String>>,
#[doc(hidden)]
pub join_required: std::option::Option<crate::model::JoinRequiredOption>,
#[doc(hidden)]
pub dimension_columns: std::option::Option<std::vec::Vec<std::string::String>>,
#[doc(hidden)]
pub scalar_functions: std::option::Option<std::vec::Vec<crate::model::ScalarFunctions>>,
#[doc(hidden)]
pub output_constraints: std::option::Option<std::vec::Vec<crate::model::AggregationConstraint>>,
}
impl AnalysisRuleAggregation {
pub fn aggregate_columns(&self) -> std::option::Option<&[crate::model::AggregateColumn]> {
self.aggregate_columns.as_deref()
}
pub fn join_columns(&self) -> std::option::Option<&[std::string::String]> {
self.join_columns.as_deref()
}
pub fn join_required(&self) -> std::option::Option<&crate::model::JoinRequiredOption> {
self.join_required.as_ref()
}
pub fn dimension_columns(&self) -> std::option::Option<&[std::string::String]> {
self.dimension_columns.as_deref()
}
pub fn scalar_functions(&self) -> std::option::Option<&[crate::model::ScalarFunctions]> {
self.scalar_functions.as_deref()
}
pub fn output_constraints(
&self,
) -> std::option::Option<&[crate::model::AggregationConstraint]> {
self.output_constraints.as_deref()
}
}
pub mod analysis_rule_aggregation {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) aggregate_columns:
std::option::Option<std::vec::Vec<crate::model::AggregateColumn>>,
pub(crate) join_columns: std::option::Option<std::vec::Vec<std::string::String>>,
pub(crate) join_required: std::option::Option<crate::model::JoinRequiredOption>,
pub(crate) dimension_columns: std::option::Option<std::vec::Vec<std::string::String>>,
pub(crate) scalar_functions:
std::option::Option<std::vec::Vec<crate::model::ScalarFunctions>>,
pub(crate) output_constraints:
std::option::Option<std::vec::Vec<crate::model::AggregationConstraint>>,
}
impl Builder {
pub fn aggregate_columns(mut self, input: crate::model::AggregateColumn) -> Self {
let mut v = self.aggregate_columns.unwrap_or_default();
v.push(input);
self.aggregate_columns = Some(v);
self
}
pub fn set_aggregate_columns(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::AggregateColumn>>,
) -> Self {
self.aggregate_columns = input;
self
}
pub fn join_columns(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.join_columns.unwrap_or_default();
v.push(input.into());
self.join_columns = Some(v);
self
}
pub fn set_join_columns(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.join_columns = input;
self
}
pub fn join_required(mut self, input: crate::model::JoinRequiredOption) -> Self {
self.join_required = Some(input);
self
}
pub fn set_join_required(
mut self,
input: std::option::Option<crate::model::JoinRequiredOption>,
) -> Self {
self.join_required = input;
self
}
pub fn dimension_columns(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.dimension_columns.unwrap_or_default();
v.push(input.into());
self.dimension_columns = Some(v);
self
}
pub fn set_dimension_columns(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.dimension_columns = input;
self
}
pub fn scalar_functions(mut self, input: crate::model::ScalarFunctions) -> Self {
let mut v = self.scalar_functions.unwrap_or_default();
v.push(input);
self.scalar_functions = Some(v);
self
}
pub fn set_scalar_functions(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::ScalarFunctions>>,
) -> Self {
self.scalar_functions = input;
self
}
pub fn output_constraints(mut self, input: crate::model::AggregationConstraint) -> Self {
let mut v = self.output_constraints.unwrap_or_default();
v.push(input);
self.output_constraints = Some(v);
self
}
pub fn set_output_constraints(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::AggregationConstraint>>,
) -> Self {
self.output_constraints = input;
self
}
pub fn build(self) -> crate::model::AnalysisRuleAggregation {
crate::model::AnalysisRuleAggregation {
aggregate_columns: self.aggregate_columns,
join_columns: self.join_columns,
join_required: self.join_required,
dimension_columns: self.dimension_columns,
scalar_functions: self.scalar_functions,
output_constraints: self.output_constraints,
}
}
}
}
impl AnalysisRuleAggregation {
pub fn builder() -> crate::model::analysis_rule_aggregation::Builder {
crate::model::analysis_rule_aggregation::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct AggregationConstraint {
#[doc(hidden)]
pub column_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub minimum: std::option::Option<i32>,
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::AggregationType>,
}
impl AggregationConstraint {
pub fn column_name(&self) -> std::option::Option<&str> {
self.column_name.as_deref()
}
pub fn minimum(&self) -> std::option::Option<i32> {
self.minimum
}
pub fn r#type(&self) -> std::option::Option<&crate::model::AggregationType> {
self.r#type.as_ref()
}
}
pub mod aggregation_constraint {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) column_name: std::option::Option<std::string::String>,
pub(crate) minimum: std::option::Option<i32>,
pub(crate) r#type: std::option::Option<crate::model::AggregationType>,
}
impl Builder {
pub fn column_name(mut self, input: impl Into<std::string::String>) -> Self {
self.column_name = Some(input.into());
self
}
pub fn set_column_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.column_name = input;
self
}
pub fn minimum(mut self, input: i32) -> Self {
self.minimum = Some(input);
self
}
pub fn set_minimum(mut self, input: std::option::Option<i32>) -> Self {
self.minimum = input;
self
}
pub fn r#type(mut self, input: crate::model::AggregationType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(
mut self,
input: std::option::Option<crate::model::AggregationType>,
) -> Self {
self.r#type = input;
self
}
pub fn build(self) -> crate::model::AggregationConstraint {
crate::model::AggregationConstraint {
column_name: self.column_name,
minimum: self.minimum,
r#type: self.r#type,
}
}
}
}
impl AggregationConstraint {
pub fn builder() -> crate::model::aggregation_constraint::Builder {
crate::model::aggregation_constraint::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum AggregationType {
#[allow(missing_docs)] CountDistinct,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for AggregationType {
fn from(s: &str) -> Self {
match s {
"COUNT_DISTINCT" => AggregationType::CountDistinct,
other => AggregationType::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for AggregationType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(AggregationType::from(s))
}
}
impl AggregationType {
pub fn as_str(&self) -> &str {
match self {
AggregationType::CountDistinct => "COUNT_DISTINCT",
AggregationType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["COUNT_DISTINCT"]
}
}
impl AsRef<str> for AggregationType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ScalarFunctions {
#[allow(missing_docs)] Abs,
#[allow(missing_docs)] Cast,
#[allow(missing_docs)] Ceiling,
#[allow(missing_docs)] Coalesce,
#[allow(missing_docs)] Floor,
#[allow(missing_docs)] Ln,
#[allow(missing_docs)] Log,
#[allow(missing_docs)] Lower,
#[allow(missing_docs)] Round,
#[allow(missing_docs)] Rtrim,
#[allow(missing_docs)] Sqrt,
#[allow(missing_docs)] Trunc,
#[allow(missing_docs)] Upper,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ScalarFunctions {
fn from(s: &str) -> Self {
match s {
"ABS" => ScalarFunctions::Abs,
"CAST" => ScalarFunctions::Cast,
"CEILING" => ScalarFunctions::Ceiling,
"COALESCE" => ScalarFunctions::Coalesce,
"FLOOR" => ScalarFunctions::Floor,
"LN" => ScalarFunctions::Ln,
"LOG" => ScalarFunctions::Log,
"LOWER" => ScalarFunctions::Lower,
"ROUND" => ScalarFunctions::Round,
"RTRIM" => ScalarFunctions::Rtrim,
"SQRT" => ScalarFunctions::Sqrt,
"TRUNC" => ScalarFunctions::Trunc,
"UPPER" => ScalarFunctions::Upper,
other => ScalarFunctions::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for ScalarFunctions {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ScalarFunctions::from(s))
}
}
impl ScalarFunctions {
pub fn as_str(&self) -> &str {
match self {
ScalarFunctions::Abs => "ABS",
ScalarFunctions::Cast => "CAST",
ScalarFunctions::Ceiling => "CEILING",
ScalarFunctions::Coalesce => "COALESCE",
ScalarFunctions::Floor => "FLOOR",
ScalarFunctions::Ln => "LN",
ScalarFunctions::Log => "LOG",
ScalarFunctions::Lower => "LOWER",
ScalarFunctions::Round => "ROUND",
ScalarFunctions::Rtrim => "RTRIM",
ScalarFunctions::Sqrt => "SQRT",
ScalarFunctions::Trunc => "TRUNC",
ScalarFunctions::Upper => "UPPER",
ScalarFunctions::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"ABS", "CAST", "CEILING", "COALESCE", "FLOOR", "LN", "LOG", "LOWER", "ROUND", "RTRIM",
"SQRT", "TRUNC", "UPPER",
]
}
}
impl AsRef<str> for ScalarFunctions {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum JoinRequiredOption {
#[allow(missing_docs)] QueryRunner,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for JoinRequiredOption {
fn from(s: &str) -> Self {
match s {
"QUERY_RUNNER" => JoinRequiredOption::QueryRunner,
other => {
JoinRequiredOption::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for JoinRequiredOption {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(JoinRequiredOption::from(s))
}
}
impl JoinRequiredOption {
pub fn as_str(&self) -> &str {
match self {
JoinRequiredOption::QueryRunner => "QUERY_RUNNER",
JoinRequiredOption::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["QUERY_RUNNER"]
}
}
impl AsRef<str> for JoinRequiredOption {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct AggregateColumn {
#[doc(hidden)]
pub column_names: std::option::Option<std::vec::Vec<std::string::String>>,
#[doc(hidden)]
pub function: std::option::Option<crate::model::AggregateFunctionName>,
}
impl AggregateColumn {
pub fn column_names(&self) -> std::option::Option<&[std::string::String]> {
self.column_names.as_deref()
}
pub fn function(&self) -> std::option::Option<&crate::model::AggregateFunctionName> {
self.function.as_ref()
}
}
pub mod aggregate_column {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) column_names: std::option::Option<std::vec::Vec<std::string::String>>,
pub(crate) function: std::option::Option<crate::model::AggregateFunctionName>,
}
impl Builder {
pub fn column_names(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.column_names.unwrap_or_default();
v.push(input.into());
self.column_names = Some(v);
self
}
pub fn set_column_names(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.column_names = input;
self
}
pub fn function(mut self, input: crate::model::AggregateFunctionName) -> Self {
self.function = Some(input);
self
}
pub fn set_function(
mut self,
input: std::option::Option<crate::model::AggregateFunctionName>,
) -> Self {
self.function = input;
self
}
pub fn build(self) -> crate::model::AggregateColumn {
crate::model::AggregateColumn {
column_names: self.column_names,
function: self.function,
}
}
}
}
impl AggregateColumn {
pub fn builder() -> crate::model::aggregate_column::Builder {
crate::model::aggregate_column::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum AggregateFunctionName {
#[allow(missing_docs)] Avg,
#[allow(missing_docs)] Count,
#[allow(missing_docs)] CountDistinct,
#[allow(missing_docs)] Sum,
#[allow(missing_docs)] SumDistinct,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for AggregateFunctionName {
fn from(s: &str) -> Self {
match s {
"AVG" => AggregateFunctionName::Avg,
"COUNT" => AggregateFunctionName::Count,
"COUNT_DISTINCT" => AggregateFunctionName::CountDistinct,
"SUM" => AggregateFunctionName::Sum,
"SUM_DISTINCT" => AggregateFunctionName::SumDistinct,
other => {
AggregateFunctionName::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for AggregateFunctionName {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(AggregateFunctionName::from(s))
}
}
impl AggregateFunctionName {
pub fn as_str(&self) -> &str {
match self {
AggregateFunctionName::Avg => "AVG",
AggregateFunctionName::Count => "COUNT",
AggregateFunctionName::CountDistinct => "COUNT_DISTINCT",
AggregateFunctionName::Sum => "SUM",
AggregateFunctionName::SumDistinct => "SUM_DISTINCT",
AggregateFunctionName::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["AVG", "COUNT", "COUNT_DISTINCT", "SUM", "SUM_DISTINCT"]
}
}
impl AsRef<str> for AggregateFunctionName {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct AnalysisRuleList {
#[doc(hidden)]
pub join_columns: std::option::Option<std::vec::Vec<std::string::String>>,
#[doc(hidden)]
pub list_columns: std::option::Option<std::vec::Vec<std::string::String>>,
}
impl AnalysisRuleList {
pub fn join_columns(&self) -> std::option::Option<&[std::string::String]> {
self.join_columns.as_deref()
}
pub fn list_columns(&self) -> std::option::Option<&[std::string::String]> {
self.list_columns.as_deref()
}
}
pub mod analysis_rule_list {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) join_columns: std::option::Option<std::vec::Vec<std::string::String>>,
pub(crate) list_columns: std::option::Option<std::vec::Vec<std::string::String>>,
}
impl Builder {
pub fn join_columns(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.join_columns.unwrap_or_default();
v.push(input.into());
self.join_columns = Some(v);
self
}
pub fn set_join_columns(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.join_columns = input;
self
}
pub fn list_columns(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.list_columns.unwrap_or_default();
v.push(input.into());
self.list_columns = Some(v);
self
}
pub fn set_list_columns(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.list_columns = input;
self
}
pub fn build(self) -> crate::model::AnalysisRuleList {
crate::model::AnalysisRuleList {
join_columns: self.join_columns,
list_columns: self.list_columns,
}
}
}
}
impl AnalysisRuleList {
pub fn builder() -> crate::model::analysis_rule_list::Builder {
crate::model::analysis_rule_list::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ConfiguredTableSummary {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub analysis_rule_types:
std::option::Option<std::vec::Vec<crate::model::ConfiguredTableAnalysisRuleType>>,
#[doc(hidden)]
pub analysis_method: std::option::Option<crate::model::AnalysisMethod>,
}
impl ConfiguredTableSummary {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn analysis_rule_types(
&self,
) -> std::option::Option<&[crate::model::ConfiguredTableAnalysisRuleType]> {
self.analysis_rule_types.as_deref()
}
pub fn analysis_method(&self) -> std::option::Option<&crate::model::AnalysisMethod> {
self.analysis_method.as_ref()
}
}
pub mod configured_table_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) analysis_rule_types:
std::option::Option<std::vec::Vec<crate::model::ConfiguredTableAnalysisRuleType>>,
pub(crate) analysis_method: std::option::Option<crate::model::AnalysisMethod>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn analysis_rule_types(
mut self,
input: crate::model::ConfiguredTableAnalysisRuleType,
) -> Self {
let mut v = self.analysis_rule_types.unwrap_or_default();
v.push(input);
self.analysis_rule_types = Some(v);
self
}
pub fn set_analysis_rule_types(
mut self,
input: std::option::Option<
std::vec::Vec<crate::model::ConfiguredTableAnalysisRuleType>,
>,
) -> Self {
self.analysis_rule_types = input;
self
}
pub fn analysis_method(mut self, input: crate::model::AnalysisMethod) -> Self {
self.analysis_method = Some(input);
self
}
pub fn set_analysis_method(
mut self,
input: std::option::Option<crate::model::AnalysisMethod>,
) -> Self {
self.analysis_method = input;
self
}
pub fn build(self) -> crate::model::ConfiguredTableSummary {
crate::model::ConfiguredTableSummary {
id: self.id,
arn: self.arn,
name: self.name,
create_time: self.create_time,
update_time: self.update_time,
analysis_rule_types: self.analysis_rule_types,
analysis_method: self.analysis_method,
}
}
}
}
impl ConfiguredTableSummary {
pub fn builder() -> crate::model::configured_table_summary::Builder {
crate::model::configured_table_summary::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum AnalysisMethod {
#[allow(missing_docs)] DirectQuery,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for AnalysisMethod {
fn from(s: &str) -> Self {
match s {
"DIRECT_QUERY" => AnalysisMethod::DirectQuery,
other => AnalysisMethod::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for AnalysisMethod {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(AnalysisMethod::from(s))
}
}
impl AnalysisMethod {
pub fn as_str(&self) -> &str {
match self {
AnalysisMethod::DirectQuery => "DIRECT_QUERY",
AnalysisMethod::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["DIRECT_QUERY"]
}
}
impl AsRef<str> for AnalysisMethod {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ConfiguredTable {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub description: std::option::Option<std::string::String>,
#[doc(hidden)]
pub table_reference: std::option::Option<crate::model::TableReference>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub analysis_rule_types:
std::option::Option<std::vec::Vec<crate::model::ConfiguredTableAnalysisRuleType>>,
#[doc(hidden)]
pub analysis_method: std::option::Option<crate::model::AnalysisMethod>,
#[doc(hidden)]
pub allowed_columns: std::option::Option<std::vec::Vec<std::string::String>>,
}
impl ConfiguredTable {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn description(&self) -> std::option::Option<&str> {
self.description.as_deref()
}
pub fn table_reference(&self) -> std::option::Option<&crate::model::TableReference> {
self.table_reference.as_ref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn analysis_rule_types(
&self,
) -> std::option::Option<&[crate::model::ConfiguredTableAnalysisRuleType]> {
self.analysis_rule_types.as_deref()
}
pub fn analysis_method(&self) -> std::option::Option<&crate::model::AnalysisMethod> {
self.analysis_method.as_ref()
}
pub fn allowed_columns(&self) -> std::option::Option<&[std::string::String]> {
self.allowed_columns.as_deref()
}
}
pub mod configured_table {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: 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) table_reference: std::option::Option<crate::model::TableReference>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) analysis_rule_types:
std::option::Option<std::vec::Vec<crate::model::ConfiguredTableAnalysisRuleType>>,
pub(crate) analysis_method: std::option::Option<crate::model::AnalysisMethod>,
pub(crate) allowed_columns: std::option::Option<std::vec::Vec<std::string::String>>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn description(mut self, input: impl Into<std::string::String>) -> Self {
self.description = Some(input.into());
self
}
pub fn set_description(mut self, input: std::option::Option<std::string::String>) -> Self {
self.description = input;
self
}
pub fn table_reference(mut self, input: crate::model::TableReference) -> Self {
self.table_reference = Some(input);
self
}
pub fn set_table_reference(
mut self,
input: std::option::Option<crate::model::TableReference>,
) -> Self {
self.table_reference = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn analysis_rule_types(
mut self,
input: crate::model::ConfiguredTableAnalysisRuleType,
) -> Self {
let mut v = self.analysis_rule_types.unwrap_or_default();
v.push(input);
self.analysis_rule_types = Some(v);
self
}
pub fn set_analysis_rule_types(
mut self,
input: std::option::Option<
std::vec::Vec<crate::model::ConfiguredTableAnalysisRuleType>,
>,
) -> Self {
self.analysis_rule_types = input;
self
}
pub fn analysis_method(mut self, input: crate::model::AnalysisMethod) -> Self {
self.analysis_method = Some(input);
self
}
pub fn set_analysis_method(
mut self,
input: std::option::Option<crate::model::AnalysisMethod>,
) -> Self {
self.analysis_method = input;
self
}
pub fn allowed_columns(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.allowed_columns.unwrap_or_default();
v.push(input.into());
self.allowed_columns = Some(v);
self
}
pub fn set_allowed_columns(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.allowed_columns = input;
self
}
pub fn build(self) -> crate::model::ConfiguredTable {
crate::model::ConfiguredTable {
id: self.id,
arn: self.arn,
name: self.name,
description: self.description,
table_reference: self.table_reference,
create_time: self.create_time,
update_time: self.update_time,
analysis_rule_types: self.analysis_rule_types,
analysis_method: self.analysis_method,
allowed_columns: self.allowed_columns,
}
}
}
}
impl ConfiguredTable {
pub fn builder() -> crate::model::configured_table::Builder {
crate::model::configured_table::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum TableReference {
Glue(crate::model::GlueTableReference),
#[non_exhaustive]
Unknown,
}
impl TableReference {
#[allow(irrefutable_let_patterns)]
pub fn as_glue(&self) -> std::result::Result<&crate::model::GlueTableReference, &Self> {
if let TableReference::Glue(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_glue(&self) -> bool {
self.as_glue().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct GlueTableReference {
#[doc(hidden)]
pub table_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub database_name: std::option::Option<std::string::String>,
}
impl GlueTableReference {
pub fn table_name(&self) -> std::option::Option<&str> {
self.table_name.as_deref()
}
pub fn database_name(&self) -> std::option::Option<&str> {
self.database_name.as_deref()
}
}
pub mod glue_table_reference {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) table_name: std::option::Option<std::string::String>,
pub(crate) database_name: std::option::Option<std::string::String>,
}
impl Builder {
pub fn table_name(mut self, input: impl Into<std::string::String>) -> Self {
self.table_name = Some(input.into());
self
}
pub fn set_table_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.table_name = input;
self
}
pub fn database_name(mut self, input: impl Into<std::string::String>) -> Self {
self.database_name = Some(input.into());
self
}
pub fn set_database_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.database_name = input;
self
}
pub fn build(self) -> crate::model::GlueTableReference {
crate::model::GlueTableReference {
table_name: self.table_name,
database_name: self.database_name,
}
}
}
}
impl GlueTableReference {
pub fn builder() -> crate::model::glue_table_reference::Builder {
crate::model::glue_table_reference::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ConfiguredTableAssociationSummary {
#[doc(hidden)]
pub configured_table_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
}
impl ConfiguredTableAssociationSummary {
pub fn configured_table_id(&self) -> std::option::Option<&str> {
self.configured_table_id.as_deref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
}
pub mod configured_table_association_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) configured_table_id: std::option::Option<std::string::String>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
}
impl Builder {
pub fn configured_table_id(mut self, input: impl Into<std::string::String>) -> Self {
self.configured_table_id = Some(input.into());
self
}
pub fn set_configured_table_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.configured_table_id = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn build(self) -> crate::model::ConfiguredTableAssociationSummary {
crate::model::ConfiguredTableAssociationSummary {
configured_table_id: self.configured_table_id,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
name: self.name,
create_time: self.create_time,
update_time: self.update_time,
id: self.id,
arn: self.arn,
}
}
}
}
impl ConfiguredTableAssociationSummary {
pub fn builder() -> crate::model::configured_table_association_summary::Builder {
crate::model::configured_table_association_summary::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ConfiguredTableAssociation {
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub configured_table_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub configured_table_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub role_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub description: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
}
impl ConfiguredTableAssociation {
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn configured_table_id(&self) -> std::option::Option<&str> {
self.configured_table_id.as_deref()
}
pub fn configured_table_arn(&self) -> std::option::Option<&str> {
self.configured_table_arn.as_deref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
pub fn role_arn(&self) -> std::option::Option<&str> {
self.role_arn.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn description(&self) -> std::option::Option<&str> {
self.description.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
}
pub mod configured_table_association {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) configured_table_id: std::option::Option<std::string::String>,
pub(crate) configured_table_arn: std::option::Option<std::string::String>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
pub(crate) role_arn: 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) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
}
impl Builder {
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn configured_table_id(mut self, input: impl Into<std::string::String>) -> Self {
self.configured_table_id = Some(input.into());
self
}
pub fn set_configured_table_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.configured_table_id = input;
self
}
pub fn configured_table_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.configured_table_arn = Some(input.into());
self
}
pub fn set_configured_table_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.configured_table_arn = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn role_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.role_arn = Some(input.into());
self
}
pub fn set_role_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.role_arn = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn description(mut self, input: impl Into<std::string::String>) -> Self {
self.description = Some(input.into());
self
}
pub fn set_description(mut self, input: std::option::Option<std::string::String>) -> Self {
self.description = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn build(self) -> crate::model::ConfiguredTableAssociation {
crate::model::ConfiguredTableAssociation {
arn: self.arn,
id: self.id,
configured_table_id: self.configured_table_id,
configured_table_arn: self.configured_table_arn,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
role_arn: self.role_arn,
name: self.name,
description: self.description,
create_time: self.create_time,
update_time: self.update_time,
}
}
}
}
impl ConfiguredTableAssociation {
pub fn builder() -> crate::model::configured_table_association::Builder {
crate::model::configured_table_association::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct SchemaSummary {
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::SchemaType>,
#[doc(hidden)]
pub creator_account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub collaboration_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub analysis_rule_types: std::option::Option<std::vec::Vec<crate::model::AnalysisRuleType>>,
#[doc(hidden)]
pub analysis_method: std::option::Option<crate::model::AnalysisMethod>,
}
impl SchemaSummary {
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn r#type(&self) -> std::option::Option<&crate::model::SchemaType> {
self.r#type.as_ref()
}
pub fn creator_account_id(&self) -> std::option::Option<&str> {
self.creator_account_id.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn collaboration_id(&self) -> std::option::Option<&str> {
self.collaboration_id.as_deref()
}
pub fn collaboration_arn(&self) -> std::option::Option<&str> {
self.collaboration_arn.as_deref()
}
pub fn analysis_rule_types(&self) -> std::option::Option<&[crate::model::AnalysisRuleType]> {
self.analysis_rule_types.as_deref()
}
pub fn analysis_method(&self) -> std::option::Option<&crate::model::AnalysisMethod> {
self.analysis_method.as_ref()
}
}
pub mod schema_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) r#type: std::option::Option<crate::model::SchemaType>,
pub(crate) creator_account_id: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) collaboration_id: std::option::Option<std::string::String>,
pub(crate) collaboration_arn: std::option::Option<std::string::String>,
pub(crate) analysis_rule_types:
std::option::Option<std::vec::Vec<crate::model::AnalysisRuleType>>,
pub(crate) analysis_method: std::option::Option<crate::model::AnalysisMethod>,
}
impl Builder {
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn r#type(mut self, input: crate::model::SchemaType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(mut self, input: std::option::Option<crate::model::SchemaType>) -> Self {
self.r#type = input;
self
}
pub fn creator_account_id(mut self, input: impl Into<std::string::String>) -> Self {
self.creator_account_id = Some(input.into());
self
}
pub fn set_creator_account_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.creator_account_id = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn collaboration_id(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_id = Some(input.into());
self
}
pub fn set_collaboration_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_id = input;
self
}
pub fn collaboration_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_arn = Some(input.into());
self
}
pub fn set_collaboration_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_arn = input;
self
}
pub fn analysis_rule_types(mut self, input: crate::model::AnalysisRuleType) -> Self {
let mut v = self.analysis_rule_types.unwrap_or_default();
v.push(input);
self.analysis_rule_types = Some(v);
self
}
pub fn set_analysis_rule_types(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::AnalysisRuleType>>,
) -> Self {
self.analysis_rule_types = input;
self
}
pub fn analysis_method(mut self, input: crate::model::AnalysisMethod) -> Self {
self.analysis_method = Some(input);
self
}
pub fn set_analysis_method(
mut self,
input: std::option::Option<crate::model::AnalysisMethod>,
) -> Self {
self.analysis_method = input;
self
}
pub fn build(self) -> crate::model::SchemaSummary {
crate::model::SchemaSummary {
name: self.name,
r#type: self.r#type,
creator_account_id: self.creator_account_id,
create_time: self.create_time,
update_time: self.update_time,
collaboration_id: self.collaboration_id,
collaboration_arn: self.collaboration_arn,
analysis_rule_types: self.analysis_rule_types,
analysis_method: self.analysis_method,
}
}
}
}
impl SchemaSummary {
pub fn builder() -> crate::model::schema_summary::Builder {
crate::model::schema_summary::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum AnalysisRuleType {
#[allow(missing_docs)] Aggregation,
#[allow(missing_docs)] List,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for AnalysisRuleType {
fn from(s: &str) -> Self {
match s {
"AGGREGATION" => AnalysisRuleType::Aggregation,
"LIST" => AnalysisRuleType::List,
other => AnalysisRuleType::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for AnalysisRuleType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(AnalysisRuleType::from(s))
}
}
impl AnalysisRuleType {
pub fn as_str(&self) -> &str {
match self {
AnalysisRuleType::Aggregation => "AGGREGATION",
AnalysisRuleType::List => "LIST",
AnalysisRuleType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["AGGREGATION", "LIST"]
}
}
impl AsRef<str> for AnalysisRuleType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum SchemaType {
#[allow(missing_docs)] Table,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for SchemaType {
fn from(s: &str) -> Self {
match s {
"TABLE" => SchemaType::Table,
other => SchemaType::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for SchemaType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(SchemaType::from(s))
}
}
impl SchemaType {
pub fn as_str(&self) -> &str {
match self {
SchemaType::Table => "TABLE",
SchemaType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["TABLE"]
}
}
impl AsRef<str> for SchemaType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct MemberSummary {
#[doc(hidden)]
pub account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub status: std::option::Option<crate::model::MemberStatus>,
#[doc(hidden)]
pub display_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub abilities: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
}
impl MemberSummary {
pub fn account_id(&self) -> std::option::Option<&str> {
self.account_id.as_deref()
}
pub fn status(&self) -> std::option::Option<&crate::model::MemberStatus> {
self.status.as_ref()
}
pub fn display_name(&self) -> std::option::Option<&str> {
self.display_name.as_deref()
}
pub fn abilities(&self) -> std::option::Option<&[crate::model::MemberAbility]> {
self.abilities.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
}
pub mod member_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) account_id: std::option::Option<std::string::String>,
pub(crate) status: std::option::Option<crate::model::MemberStatus>,
pub(crate) display_name: std::option::Option<std::string::String>,
pub(crate) abilities: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
}
impl Builder {
pub fn account_id(mut self, input: impl Into<std::string::String>) -> Self {
self.account_id = Some(input.into());
self
}
pub fn set_account_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.account_id = input;
self
}
pub fn status(mut self, input: crate::model::MemberStatus) -> Self {
self.status = Some(input);
self
}
pub fn set_status(
mut self,
input: std::option::Option<crate::model::MemberStatus>,
) -> Self {
self.status = input;
self
}
pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
self.display_name = Some(input.into());
self
}
pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.display_name = input;
self
}
pub fn abilities(mut self, input: crate::model::MemberAbility) -> Self {
let mut v = self.abilities.unwrap_or_default();
v.push(input);
self.abilities = Some(v);
self
}
pub fn set_abilities(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
) -> Self {
self.abilities = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn build(self) -> crate::model::MemberSummary {
crate::model::MemberSummary {
account_id: self.account_id,
status: self.status,
display_name: self.display_name,
abilities: self.abilities,
create_time: self.create_time,
update_time: self.update_time,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
}
}
}
}
impl MemberSummary {
pub fn builder() -> crate::model::member_summary::Builder {
crate::model::member_summary::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum MemberStatus {
#[allow(missing_docs)] Active,
#[allow(missing_docs)] Invited,
#[allow(missing_docs)] Left,
#[allow(missing_docs)] Removed,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for MemberStatus {
fn from(s: &str) -> Self {
match s {
"ACTIVE" => MemberStatus::Active,
"INVITED" => MemberStatus::Invited,
"LEFT" => MemberStatus::Left,
"REMOVED" => MemberStatus::Removed,
other => MemberStatus::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for MemberStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(MemberStatus::from(s))
}
}
impl MemberStatus {
pub fn as_str(&self) -> &str {
match self {
MemberStatus::Active => "ACTIVE",
MemberStatus::Invited => "INVITED",
MemberStatus::Left => "LEFT",
MemberStatus::Removed => "REMOVED",
MemberStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["ACTIVE", "INVITED", "LEFT", "REMOVED"]
}
}
impl AsRef<str> for MemberStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct AnalysisRule {
#[doc(hidden)]
pub collaboration_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::AnalysisRuleType>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub policy: std::option::Option<crate::model::AnalysisRulePolicy>,
}
impl AnalysisRule {
pub fn collaboration_id(&self) -> std::option::Option<&str> {
self.collaboration_id.as_deref()
}
pub fn r#type(&self) -> std::option::Option<&crate::model::AnalysisRuleType> {
self.r#type.as_ref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn policy(&self) -> std::option::Option<&crate::model::AnalysisRulePolicy> {
self.policy.as_ref()
}
}
pub mod analysis_rule {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) collaboration_id: std::option::Option<std::string::String>,
pub(crate) r#type: std::option::Option<crate::model::AnalysisRuleType>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) policy: std::option::Option<crate::model::AnalysisRulePolicy>,
}
impl Builder {
pub fn collaboration_id(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_id = Some(input.into());
self
}
pub fn set_collaboration_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_id = input;
self
}
pub fn r#type(mut self, input: crate::model::AnalysisRuleType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(
mut self,
input: std::option::Option<crate::model::AnalysisRuleType>,
) -> Self {
self.r#type = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn policy(mut self, input: crate::model::AnalysisRulePolicy) -> Self {
self.policy = Some(input);
self
}
pub fn set_policy(
mut self,
input: std::option::Option<crate::model::AnalysisRulePolicy>,
) -> Self {
self.policy = input;
self
}
pub fn build(self) -> crate::model::AnalysisRule {
crate::model::AnalysisRule {
collaboration_id: self.collaboration_id,
r#type: self.r#type,
name: self.name,
create_time: self.create_time,
update_time: self.update_time,
policy: self.policy,
}
}
}
}
impl AnalysisRule {
pub fn builder() -> crate::model::analysis_rule::Builder {
crate::model::analysis_rule::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum AnalysisRulePolicy {
V1(crate::model::AnalysisRulePolicyV1),
#[non_exhaustive]
Unknown,
}
impl AnalysisRulePolicy {
#[allow(irrefutable_let_patterns)]
pub fn as_v1(&self) -> std::result::Result<&crate::model::AnalysisRulePolicyV1, &Self> {
if let AnalysisRulePolicy::V1(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_v1(&self) -> bool {
self.as_v1().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum AnalysisRulePolicyV1 {
Aggregation(crate::model::AnalysisRuleAggregation),
List(crate::model::AnalysisRuleList),
#[non_exhaustive]
Unknown,
}
impl AnalysisRulePolicyV1 {
pub fn as_aggregation(
&self,
) -> std::result::Result<&crate::model::AnalysisRuleAggregation, &Self> {
if let AnalysisRulePolicyV1::Aggregation(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_aggregation(&self) -> bool {
self.as_aggregation().is_ok()
}
pub fn as_list(&self) -> std::result::Result<&crate::model::AnalysisRuleList, &Self> {
if let AnalysisRulePolicyV1::List(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_list(&self) -> bool {
self.as_list().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Schema {
#[doc(hidden)]
pub columns: std::option::Option<std::vec::Vec<crate::model::Column>>,
#[doc(hidden)]
pub partition_keys: std::option::Option<std::vec::Vec<crate::model::Column>>,
#[doc(hidden)]
pub analysis_rule_types: std::option::Option<std::vec::Vec<crate::model::AnalysisRuleType>>,
#[doc(hidden)]
pub analysis_method: std::option::Option<crate::model::AnalysisMethod>,
#[doc(hidden)]
pub creator_account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub collaboration_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub description: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::SchemaType>,
}
impl Schema {
pub fn columns(&self) -> std::option::Option<&[crate::model::Column]> {
self.columns.as_deref()
}
pub fn partition_keys(&self) -> std::option::Option<&[crate::model::Column]> {
self.partition_keys.as_deref()
}
pub fn analysis_rule_types(&self) -> std::option::Option<&[crate::model::AnalysisRuleType]> {
self.analysis_rule_types.as_deref()
}
pub fn analysis_method(&self) -> std::option::Option<&crate::model::AnalysisMethod> {
self.analysis_method.as_ref()
}
pub fn creator_account_id(&self) -> std::option::Option<&str> {
self.creator_account_id.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn collaboration_id(&self) -> std::option::Option<&str> {
self.collaboration_id.as_deref()
}
pub fn collaboration_arn(&self) -> std::option::Option<&str> {
self.collaboration_arn.as_deref()
}
pub fn description(&self) -> std::option::Option<&str> {
self.description.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn r#type(&self) -> std::option::Option<&crate::model::SchemaType> {
self.r#type.as_ref()
}
}
pub mod schema {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) columns: std::option::Option<std::vec::Vec<crate::model::Column>>,
pub(crate) partition_keys: std::option::Option<std::vec::Vec<crate::model::Column>>,
pub(crate) analysis_rule_types:
std::option::Option<std::vec::Vec<crate::model::AnalysisRuleType>>,
pub(crate) analysis_method: std::option::Option<crate::model::AnalysisMethod>,
pub(crate) creator_account_id: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) collaboration_id: std::option::Option<std::string::String>,
pub(crate) collaboration_arn: std::option::Option<std::string::String>,
pub(crate) description: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) r#type: std::option::Option<crate::model::SchemaType>,
}
impl Builder {
pub fn columns(mut self, input: crate::model::Column) -> Self {
let mut v = self.columns.unwrap_or_default();
v.push(input);
self.columns = Some(v);
self
}
pub fn set_columns(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::Column>>,
) -> Self {
self.columns = input;
self
}
pub fn partition_keys(mut self, input: crate::model::Column) -> Self {
let mut v = self.partition_keys.unwrap_or_default();
v.push(input);
self.partition_keys = Some(v);
self
}
pub fn set_partition_keys(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::Column>>,
) -> Self {
self.partition_keys = input;
self
}
pub fn analysis_rule_types(mut self, input: crate::model::AnalysisRuleType) -> Self {
let mut v = self.analysis_rule_types.unwrap_or_default();
v.push(input);
self.analysis_rule_types = Some(v);
self
}
pub fn set_analysis_rule_types(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::AnalysisRuleType>>,
) -> Self {
self.analysis_rule_types = input;
self
}
pub fn analysis_method(mut self, input: crate::model::AnalysisMethod) -> Self {
self.analysis_method = Some(input);
self
}
pub fn set_analysis_method(
mut self,
input: std::option::Option<crate::model::AnalysisMethod>,
) -> Self {
self.analysis_method = input;
self
}
pub fn creator_account_id(mut self, input: impl Into<std::string::String>) -> Self {
self.creator_account_id = Some(input.into());
self
}
pub fn set_creator_account_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.creator_account_id = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn collaboration_id(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_id = Some(input.into());
self
}
pub fn set_collaboration_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_id = input;
self
}
pub fn collaboration_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.collaboration_arn = Some(input.into());
self
}
pub fn set_collaboration_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.collaboration_arn = input;
self
}
pub fn description(mut self, input: impl Into<std::string::String>) -> Self {
self.description = Some(input.into());
self
}
pub fn set_description(mut self, input: std::option::Option<std::string::String>) -> Self {
self.description = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn r#type(mut self, input: crate::model::SchemaType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(mut self, input: std::option::Option<crate::model::SchemaType>) -> Self {
self.r#type = input;
self
}
pub fn build(self) -> crate::model::Schema {
crate::model::Schema {
columns: self.columns,
partition_keys: self.partition_keys,
analysis_rule_types: self.analysis_rule_types,
analysis_method: self.analysis_method,
creator_account_id: self.creator_account_id,
name: self.name,
collaboration_id: self.collaboration_id,
collaboration_arn: self.collaboration_arn,
description: self.description,
create_time: self.create_time,
update_time: self.update_time,
r#type: self.r#type,
}
}
}
}
impl Schema {
pub fn builder() -> crate::model::schema::Builder {
crate::model::schema::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Column {
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub r#type: std::option::Option<std::string::String>,
}
impl Column {
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn r#type(&self) -> std::option::Option<&str> {
self.r#type.as_deref()
}
}
pub mod column {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) r#type: std::option::Option<std::string::String>,
}
impl Builder {
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn r#type(mut self, input: impl Into<std::string::String>) -> Self {
self.r#type = 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 build(self) -> crate::model::Column {
crate::model::Column {
name: self.name,
r#type: self.r#type,
}
}
}
}
impl Column {
pub fn builder() -> crate::model::column::Builder {
crate::model::column::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct BatchGetSchemaError {
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub code: std::option::Option<std::string::String>,
#[doc(hidden)]
pub message: std::option::Option<std::string::String>,
}
impl BatchGetSchemaError {
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn code(&self) -> std::option::Option<&str> {
self.code.as_deref()
}
pub fn message(&self) -> std::option::Option<&str> {
self.message.as_deref()
}
}
pub mod batch_get_schema_error {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) code: std::option::Option<std::string::String>,
pub(crate) message: std::option::Option<std::string::String>,
}
impl Builder {
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn code(mut self, input: impl Into<std::string::String>) -> Self {
self.code = Some(input.into());
self
}
pub fn set_code(mut self, input: std::option::Option<std::string::String>) -> Self {
self.code = input;
self
}
pub fn message(mut self, input: impl Into<std::string::String>) -> Self {
self.message = Some(input.into());
self
}
pub fn set_message(mut self, input: std::option::Option<std::string::String>) -> Self {
self.message = input;
self
}
pub fn build(self) -> crate::model::BatchGetSchemaError {
crate::model::BatchGetSchemaError {
name: self.name,
code: self.code,
message: self.message,
}
}
}
}
impl BatchGetSchemaError {
pub fn builder() -> crate::model::batch_get_schema_error::Builder {
crate::model::batch_get_schema_error::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct CollaborationSummary {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub creator_account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub creator_display_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub member_status: std::option::Option<crate::model::MemberStatus>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
}
impl CollaborationSummary {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn creator_account_id(&self) -> std::option::Option<&str> {
self.creator_account_id.as_deref()
}
pub fn creator_display_name(&self) -> std::option::Option<&str> {
self.creator_display_name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn member_status(&self) -> std::option::Option<&crate::model::MemberStatus> {
self.member_status.as_ref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
}
pub mod collaboration_summary {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) creator_account_id: std::option::Option<std::string::String>,
pub(crate) creator_display_name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) member_status: std::option::Option<crate::model::MemberStatus>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn creator_account_id(mut self, input: impl Into<std::string::String>) -> Self {
self.creator_account_id = Some(input.into());
self
}
pub fn set_creator_account_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.creator_account_id = input;
self
}
pub fn creator_display_name(mut self, input: impl Into<std::string::String>) -> Self {
self.creator_display_name = Some(input.into());
self
}
pub fn set_creator_display_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.creator_display_name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn member_status(mut self, input: crate::model::MemberStatus) -> Self {
self.member_status = Some(input);
self
}
pub fn set_member_status(
mut self,
input: std::option::Option<crate::model::MemberStatus>,
) -> Self {
self.member_status = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn build(self) -> crate::model::CollaborationSummary {
crate::model::CollaborationSummary {
id: self.id,
arn: self.arn,
name: self.name,
creator_account_id: self.creator_account_id,
creator_display_name: self.creator_display_name,
create_time: self.create_time,
update_time: self.update_time,
member_status: self.member_status,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
}
}
}
}
impl CollaborationSummary {
pub fn builder() -> crate::model::collaboration_summary::Builder {
crate::model::collaboration_summary::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum FilterableMemberStatus {
#[allow(missing_docs)] Active,
#[allow(missing_docs)] Invited,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for FilterableMemberStatus {
fn from(s: &str) -> Self {
match s {
"ACTIVE" => FilterableMemberStatus::Active,
"INVITED" => FilterableMemberStatus::Invited,
other => {
FilterableMemberStatus::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for FilterableMemberStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(FilterableMemberStatus::from(s))
}
}
impl FilterableMemberStatus {
pub fn as_str(&self) -> &str {
match self {
FilterableMemberStatus::Active => "ACTIVE",
FilterableMemberStatus::Invited => "INVITED",
FilterableMemberStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["ACTIVE", "INVITED"]
}
}
impl AsRef<str> for FilterableMemberStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Collaboration {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub description: std::option::Option<std::string::String>,
#[doc(hidden)]
pub creator_account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub creator_display_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub create_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub update_time: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub member_status: std::option::Option<crate::model::MemberStatus>,
#[doc(hidden)]
pub membership_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub membership_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub data_encryption_metadata: std::option::Option<crate::model::DataEncryptionMetadata>,
#[doc(hidden)]
pub query_log_status: std::option::Option<crate::model::CollaborationQueryLogStatus>,
}
impl Collaboration {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn description(&self) -> std::option::Option<&str> {
self.description.as_deref()
}
pub fn creator_account_id(&self) -> std::option::Option<&str> {
self.creator_account_id.as_deref()
}
pub fn creator_display_name(&self) -> std::option::Option<&str> {
self.creator_display_name.as_deref()
}
pub fn create_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.create_time.as_ref()
}
pub fn update_time(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.update_time.as_ref()
}
pub fn member_status(&self) -> std::option::Option<&crate::model::MemberStatus> {
self.member_status.as_ref()
}
pub fn membership_id(&self) -> std::option::Option<&str> {
self.membership_id.as_deref()
}
pub fn membership_arn(&self) -> std::option::Option<&str> {
self.membership_arn.as_deref()
}
pub fn data_encryption_metadata(
&self,
) -> std::option::Option<&crate::model::DataEncryptionMetadata> {
self.data_encryption_metadata.as_ref()
}
pub fn query_log_status(
&self,
) -> std::option::Option<&crate::model::CollaborationQueryLogStatus> {
self.query_log_status.as_ref()
}
}
pub mod collaboration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: 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) creator_account_id: std::option::Option<std::string::String>,
pub(crate) creator_display_name: std::option::Option<std::string::String>,
pub(crate) create_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) update_time: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) member_status: std::option::Option<crate::model::MemberStatus>,
pub(crate) membership_id: std::option::Option<std::string::String>,
pub(crate) membership_arn: std::option::Option<std::string::String>,
pub(crate) data_encryption_metadata:
std::option::Option<crate::model::DataEncryptionMetadata>,
pub(crate) query_log_status: std::option::Option<crate::model::CollaborationQueryLogStatus>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn description(mut self, input: impl Into<std::string::String>) -> Self {
self.description = Some(input.into());
self
}
pub fn set_description(mut self, input: std::option::Option<std::string::String>) -> Self {
self.description = input;
self
}
pub fn creator_account_id(mut self, input: impl Into<std::string::String>) -> Self {
self.creator_account_id = Some(input.into());
self
}
pub fn set_creator_account_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.creator_account_id = input;
self
}
pub fn creator_display_name(mut self, input: impl Into<std::string::String>) -> Self {
self.creator_display_name = Some(input.into());
self
}
pub fn set_creator_display_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.creator_display_name = input;
self
}
pub fn create_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.create_time = Some(input);
self
}
pub fn set_create_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.create_time = input;
self
}
pub fn update_time(mut self, input: aws_smithy_types::DateTime) -> Self {
self.update_time = Some(input);
self
}
pub fn set_update_time(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.update_time = input;
self
}
pub fn member_status(mut self, input: crate::model::MemberStatus) -> Self {
self.member_status = Some(input);
self
}
pub fn set_member_status(
mut self,
input: std::option::Option<crate::model::MemberStatus>,
) -> Self {
self.member_status = input;
self
}
pub fn membership_id(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_id = Some(input.into());
self
}
pub fn set_membership_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_id = input;
self
}
pub fn membership_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.membership_arn = Some(input.into());
self
}
pub fn set_membership_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.membership_arn = input;
self
}
pub fn data_encryption_metadata(
mut self,
input: crate::model::DataEncryptionMetadata,
) -> Self {
self.data_encryption_metadata = Some(input);
self
}
pub fn set_data_encryption_metadata(
mut self,
input: std::option::Option<crate::model::DataEncryptionMetadata>,
) -> Self {
self.data_encryption_metadata = input;
self
}
pub fn query_log_status(
mut self,
input: crate::model::CollaborationQueryLogStatus,
) -> Self {
self.query_log_status = Some(input);
self
}
pub fn set_query_log_status(
mut self,
input: std::option::Option<crate::model::CollaborationQueryLogStatus>,
) -> Self {
self.query_log_status = input;
self
}
pub fn build(self) -> crate::model::Collaboration {
crate::model::Collaboration {
id: self.id,
arn: self.arn,
name: self.name,
description: self.description,
creator_account_id: self.creator_account_id,
creator_display_name: self.creator_display_name,
create_time: self.create_time,
update_time: self.update_time,
member_status: self.member_status,
membership_id: self.membership_id,
membership_arn: self.membership_arn,
data_encryption_metadata: self.data_encryption_metadata,
query_log_status: self.query_log_status,
}
}
}
}
impl Collaboration {
pub fn builder() -> crate::model::collaboration::Builder {
crate::model::collaboration::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum CollaborationQueryLogStatus {
#[allow(missing_docs)] Disabled,
#[allow(missing_docs)] Enabled,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for CollaborationQueryLogStatus {
fn from(s: &str) -> Self {
match s {
"DISABLED" => CollaborationQueryLogStatus::Disabled,
"ENABLED" => CollaborationQueryLogStatus::Enabled,
other => CollaborationQueryLogStatus::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for CollaborationQueryLogStatus {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(CollaborationQueryLogStatus::from(s))
}
}
impl CollaborationQueryLogStatus {
pub fn as_str(&self) -> &str {
match self {
CollaborationQueryLogStatus::Disabled => "DISABLED",
CollaborationQueryLogStatus::Enabled => "ENABLED",
CollaborationQueryLogStatus::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["DISABLED", "ENABLED"]
}
}
impl AsRef<str> for CollaborationQueryLogStatus {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct DataEncryptionMetadata {
#[doc(hidden)]
pub allow_cleartext: std::option::Option<bool>,
#[doc(hidden)]
pub allow_duplicates: std::option::Option<bool>,
#[doc(hidden)]
pub allow_joins_on_columns_with_different_names: std::option::Option<bool>,
#[doc(hidden)]
pub preserve_nulls: std::option::Option<bool>,
}
impl DataEncryptionMetadata {
pub fn allow_cleartext(&self) -> std::option::Option<bool> {
self.allow_cleartext
}
pub fn allow_duplicates(&self) -> std::option::Option<bool> {
self.allow_duplicates
}
pub fn allow_joins_on_columns_with_different_names(&self) -> std::option::Option<bool> {
self.allow_joins_on_columns_with_different_names
}
pub fn preserve_nulls(&self) -> std::option::Option<bool> {
self.preserve_nulls
}
}
pub mod data_encryption_metadata {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) allow_cleartext: std::option::Option<bool>,
pub(crate) allow_duplicates: std::option::Option<bool>,
pub(crate) allow_joins_on_columns_with_different_names: std::option::Option<bool>,
pub(crate) preserve_nulls: std::option::Option<bool>,
}
impl Builder {
pub fn allow_cleartext(mut self, input: bool) -> Self {
self.allow_cleartext = Some(input);
self
}
pub fn set_allow_cleartext(mut self, input: std::option::Option<bool>) -> Self {
self.allow_cleartext = input;
self
}
pub fn allow_duplicates(mut self, input: bool) -> Self {
self.allow_duplicates = Some(input);
self
}
pub fn set_allow_duplicates(mut self, input: std::option::Option<bool>) -> Self {
self.allow_duplicates = input;
self
}
pub fn allow_joins_on_columns_with_different_names(mut self, input: bool) -> Self {
self.allow_joins_on_columns_with_different_names = Some(input);
self
}
pub fn set_allow_joins_on_columns_with_different_names(
mut self,
input: std::option::Option<bool>,
) -> Self {
self.allow_joins_on_columns_with_different_names = input;
self
}
pub fn preserve_nulls(mut self, input: bool) -> Self {
self.preserve_nulls = Some(input);
self
}
pub fn set_preserve_nulls(mut self, input: std::option::Option<bool>) -> Self {
self.preserve_nulls = input;
self
}
pub fn build(self) -> crate::model::DataEncryptionMetadata {
crate::model::DataEncryptionMetadata {
allow_cleartext: self.allow_cleartext,
allow_duplicates: self.allow_duplicates,
allow_joins_on_columns_with_different_names: self
.allow_joins_on_columns_with_different_names,
preserve_nulls: self.preserve_nulls,
}
}
}
}
impl DataEncryptionMetadata {
pub fn builder() -> crate::model::data_encryption_metadata::Builder {
crate::model::data_encryption_metadata::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct MemberSpecification {
#[doc(hidden)]
pub account_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub member_abilities: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
#[doc(hidden)]
pub display_name: std::option::Option<std::string::String>,
}
impl MemberSpecification {
pub fn account_id(&self) -> std::option::Option<&str> {
self.account_id.as_deref()
}
pub fn member_abilities(&self) -> std::option::Option<&[crate::model::MemberAbility]> {
self.member_abilities.as_deref()
}
pub fn display_name(&self) -> std::option::Option<&str> {
self.display_name.as_deref()
}
}
pub mod member_specification {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) account_id: std::option::Option<std::string::String>,
pub(crate) member_abilities:
std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
pub(crate) display_name: std::option::Option<std::string::String>,
}
impl Builder {
pub fn account_id(mut self, input: impl Into<std::string::String>) -> Self {
self.account_id = Some(input.into());
self
}
pub fn set_account_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.account_id = input;
self
}
pub fn member_abilities(mut self, input: crate::model::MemberAbility) -> Self {
let mut v = self.member_abilities.unwrap_or_default();
v.push(input);
self.member_abilities = Some(v);
self
}
pub fn set_member_abilities(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::MemberAbility>>,
) -> Self {
self.member_abilities = input;
self
}
pub fn display_name(mut self, input: impl Into<std::string::String>) -> Self {
self.display_name = Some(input.into());
self
}
pub fn set_display_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.display_name = input;
self
}
pub fn build(self) -> crate::model::MemberSpecification {
crate::model::MemberSpecification {
account_id: self.account_id,
member_abilities: self.member_abilities,
display_name: self.display_name,
}
}
}
}
impl MemberSpecification {
pub fn builder() -> crate::model::member_specification::Builder {
crate::model::member_specification::Builder::default()
}
}