aws_sdk_macie2/operation/create_invitations/
_create_invitations_input.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct CreateInvitationsInput {
    /// <p>An array that lists Amazon Web Services account IDs, one for each account to send the invitation to.</p>
    pub account_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
    /// <p>Specifies whether to send the invitation as an email message. If this value is false, Amazon Macie sends the invitation (as an email message) to the email address that you specified for the recipient's account when you associated the account with your account. The default value is false.</p>
    pub disable_email_notification: ::std::option::Option<bool>,
    /// <p>Custom text to include in the email message that contains the invitation. The text can contain as many as 80 alphanumeric characters.</p>
    pub message: ::std::option::Option<::std::string::String>,
}
impl CreateInvitationsInput {
    /// <p>An array that lists Amazon Web Services account IDs, one for each account to send the invitation to.</p>
    ///
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.account_ids.is_none()`.
    pub fn account_ids(&self) -> &[::std::string::String] {
        self.account_ids.as_deref().unwrap_or_default()
    }
    /// <p>Specifies whether to send the invitation as an email message. If this value is false, Amazon Macie sends the invitation (as an email message) to the email address that you specified for the recipient's account when you associated the account with your account. The default value is false.</p>
    pub fn disable_email_notification(&self) -> ::std::option::Option<bool> {
        self.disable_email_notification
    }
    /// <p>Custom text to include in the email message that contains the invitation. The text can contain as many as 80 alphanumeric characters.</p>
    pub fn message(&self) -> ::std::option::Option<&str> {
        self.message.as_deref()
    }
}
impl CreateInvitationsInput {
    /// Creates a new builder-style object to manufacture [`CreateInvitationsInput`](crate::operation::create_invitations::CreateInvitationsInput).
    pub fn builder() -> crate::operation::create_invitations::builders::CreateInvitationsInputBuilder {
        crate::operation::create_invitations::builders::CreateInvitationsInputBuilder::default()
    }
}

/// A builder for [`CreateInvitationsInput`](crate::operation::create_invitations::CreateInvitationsInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct CreateInvitationsInputBuilder {
    pub(crate) account_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
    pub(crate) disable_email_notification: ::std::option::Option<bool>,
    pub(crate) message: ::std::option::Option<::std::string::String>,
}
impl CreateInvitationsInputBuilder {
    /// Appends an item to `account_ids`.
    ///
    /// To override the contents of this collection use [`set_account_ids`](Self::set_account_ids).
    ///
    /// <p>An array that lists Amazon Web Services account IDs, one for each account to send the invitation to.</p>
    pub fn account_ids(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        let mut v = self.account_ids.unwrap_or_default();
        v.push(input.into());
        self.account_ids = ::std::option::Option::Some(v);
        self
    }
    /// <p>An array that lists Amazon Web Services account IDs, one for each account to send the invitation to.</p>
    pub fn set_account_ids(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
        self.account_ids = input;
        self
    }
    /// <p>An array that lists Amazon Web Services account IDs, one for each account to send the invitation to.</p>
    pub fn get_account_ids(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
        &self.account_ids
    }
    /// <p>Specifies whether to send the invitation as an email message. If this value is false, Amazon Macie sends the invitation (as an email message) to the email address that you specified for the recipient's account when you associated the account with your account. The default value is false.</p>
    pub fn disable_email_notification(mut self, input: bool) -> Self {
        self.disable_email_notification = ::std::option::Option::Some(input);
        self
    }
    /// <p>Specifies whether to send the invitation as an email message. If this value is false, Amazon Macie sends the invitation (as an email message) to the email address that you specified for the recipient's account when you associated the account with your account. The default value is false.</p>
    pub fn set_disable_email_notification(mut self, input: ::std::option::Option<bool>) -> Self {
        self.disable_email_notification = input;
        self
    }
    /// <p>Specifies whether to send the invitation as an email message. If this value is false, Amazon Macie sends the invitation (as an email message) to the email address that you specified for the recipient's account when you associated the account with your account. The default value is false.</p>
    pub fn get_disable_email_notification(&self) -> &::std::option::Option<bool> {
        &self.disable_email_notification
    }
    /// <p>Custom text to include in the email message that contains the invitation. The text can contain as many as 80 alphanumeric characters.</p>
    pub fn message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.message = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>Custom text to include in the email message that contains the invitation. The text can contain as many as 80 alphanumeric characters.</p>
    pub fn set_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.message = input;
        self
    }
    /// <p>Custom text to include in the email message that contains the invitation. The text can contain as many as 80 alphanumeric characters.</p>
    pub fn get_message(&self) -> &::std::option::Option<::std::string::String> {
        &self.message
    }
    /// Consumes the builder and constructs a [`CreateInvitationsInput`](crate::operation::create_invitations::CreateInvitationsInput).
    pub fn build(
        self,
    ) -> ::std::result::Result<crate::operation::create_invitations::CreateInvitationsInput, ::aws_smithy_types::error::operation::BuildError> {
        ::std::result::Result::Ok(crate::operation::create_invitations::CreateInvitationsInput {
            account_ids: self.account_ids,
            disable_email_notification: self.disable_email_notification,
            message: self.message,
        })
    }
}