// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT. ///

A structure that stores metadata for a kdb user.

#[non_exhaustive] #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)] pub struct KxUser { ///

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

pub user_arn: ::std::option::Option<::std::string::String>, ///

A unique identifier for the user.

pub user_name: ::std::option::Option<::std::string::String>, ///

The IAM role ARN that is associated with the user.

pub iam_role: ::std::option::Option<::std::string::String>, ///

The timestamp at which the kdb user was created.

pub create_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>, ///

The timestamp at which the kdb user was updated.

pub update_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>, } impl KxUser { ///

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

pub fn user_arn(&self) -> ::std::option::Option<&str> { self.user_arn.as_deref() } ///

A unique identifier for the user.

pub fn user_name(&self) -> ::std::option::Option<&str> { self.user_name.as_deref() } ///

The IAM role ARN that is associated with the user.

pub fn iam_role(&self) -> ::std::option::Option<&str> { self.iam_role.as_deref() } ///

The timestamp at which the kdb user was created.

pub fn create_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> { self.create_timestamp.as_ref() } ///

The timestamp at which the kdb user was updated.

pub fn update_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> { self.update_timestamp.as_ref() } } impl KxUser { /// Creates a new builder-style object to manufacture [`KxUser`](crate::types::KxUser). pub fn builder() -> crate::types::builders::KxUserBuilder { crate::types::builders::KxUserBuilder::default() } } /// A builder for [`KxUser`](crate::types::KxUser). #[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)] #[non_exhaustive] pub struct KxUserBuilder { pub(crate) user_arn: ::std::option::Option<::std::string::String>, pub(crate) user_name: ::std::option::Option<::std::string::String>, pub(crate) iam_role: ::std::option::Option<::std::string::String>, pub(crate) create_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>, pub(crate) update_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>, } impl KxUserBuilder { ///

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

pub fn user_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.user_arn = ::std::option::Option::Some(input.into()); self } ///

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

pub fn set_user_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.user_arn = input; self } ///

The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see IAM Identifiers in the IAM User Guide.

pub fn get_user_arn(&self) -> &::std::option::Option<::std::string::String> { &self.user_arn } ///

A unique identifier for the user.

pub fn user_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.user_name = ::std::option::Option::Some(input.into()); self } ///

A unique identifier for the user.

pub fn set_user_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.user_name = input; self } ///

A unique identifier for the user.

pub fn get_user_name(&self) -> &::std::option::Option<::std::string::String> { &self.user_name } ///

The IAM role ARN that is associated with the user.

pub fn iam_role(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self { self.iam_role = ::std::option::Option::Some(input.into()); self } ///

The IAM role ARN that is associated with the user.

pub fn set_iam_role(mut self, input: ::std::option::Option<::std::string::String>) -> Self { self.iam_role = input; self } ///

The IAM role ARN that is associated with the user.

pub fn get_iam_role(&self) -> &::std::option::Option<::std::string::String> { &self.iam_role } ///

The timestamp at which the kdb user was created.

pub fn create_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self { self.create_timestamp = ::std::option::Option::Some(input); self } ///

The timestamp at which the kdb user was created.

pub fn set_create_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self { self.create_timestamp = input; self } ///

The timestamp at which the kdb user was created.

pub fn get_create_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> { &self.create_timestamp } ///

The timestamp at which the kdb user was updated.

pub fn update_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self { self.update_timestamp = ::std::option::Option::Some(input); self } ///

The timestamp at which the kdb user was updated.

pub fn set_update_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self { self.update_timestamp = input; self } ///

The timestamp at which the kdb user was updated.

pub fn get_update_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> { &self.update_timestamp } /// Consumes the builder and constructs a [`KxUser`](crate::types::KxUser). pub fn build(self) -> crate::types::KxUser { crate::types::KxUser { user_arn: self.user_arn, user_name: self.user_name, iam_role: self.iam_role, create_timestamp: self.create_timestamp, update_timestamp: self.update_timestamp, } } }