aws_sdk_securityir/operation/update_membership/
_update_membership_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
5pub struct UpdateMembershipInput {
6    /// <p>Required element for UpdateMembership to identify the membership to update.</p>
7    pub membership_id: ::std::option::Option<::std::string::String>,
8    /// <p>Optional element for UpdateMembership to update the membership name.</p>
9    pub membership_name: ::std::option::Option<::std::string::String>,
10    /// <p>Optional element for UpdateMembership to update the membership name.</p>
11    pub incident_response_team: ::std::option::Option<::std::vec::Vec<crate::types::IncidentResponder>>,
12    /// <p>Optional element for UpdateMembership to enable or disable opt-in features for the service.</p>
13    pub opt_in_features: ::std::option::Option<::std::vec::Vec<crate::types::OptInFeature>>,
14}
15impl UpdateMembershipInput {
16    /// <p>Required element for UpdateMembership to identify the membership to update.</p>
17    pub fn membership_id(&self) -> ::std::option::Option<&str> {
18        self.membership_id.as_deref()
19    }
20    /// <p>Optional element for UpdateMembership to update the membership name.</p>
21    pub fn membership_name(&self) -> ::std::option::Option<&str> {
22        self.membership_name.as_deref()
23    }
24    /// <p>Optional element for UpdateMembership to update the membership name.</p>
25    ///
26    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.incident_response_team.is_none()`.
27    pub fn incident_response_team(&self) -> &[crate::types::IncidentResponder] {
28        self.incident_response_team.as_deref().unwrap_or_default()
29    }
30    /// <p>Optional element for UpdateMembership to enable or disable opt-in features for the service.</p>
31    ///
32    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.opt_in_features.is_none()`.
33    pub fn opt_in_features(&self) -> &[crate::types::OptInFeature] {
34        self.opt_in_features.as_deref().unwrap_or_default()
35    }
36}
37impl ::std::fmt::Debug for UpdateMembershipInput {
38    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
39        let mut formatter = f.debug_struct("UpdateMembershipInput");
40        formatter.field("membership_id", &self.membership_id);
41        formatter.field("membership_name", &"*** Sensitive Data Redacted ***");
42        formatter.field("incident_response_team", &self.incident_response_team);
43        formatter.field("opt_in_features", &self.opt_in_features);
44        formatter.finish()
45    }
46}
47impl UpdateMembershipInput {
48    /// Creates a new builder-style object to manufacture [`UpdateMembershipInput`](crate::operation::update_membership::UpdateMembershipInput).
49    pub fn builder() -> crate::operation::update_membership::builders::UpdateMembershipInputBuilder {
50        crate::operation::update_membership::builders::UpdateMembershipInputBuilder::default()
51    }
52}
53
54/// A builder for [`UpdateMembershipInput`](crate::operation::update_membership::UpdateMembershipInput).
55#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
56#[non_exhaustive]
57pub struct UpdateMembershipInputBuilder {
58    pub(crate) membership_id: ::std::option::Option<::std::string::String>,
59    pub(crate) membership_name: ::std::option::Option<::std::string::String>,
60    pub(crate) incident_response_team: ::std::option::Option<::std::vec::Vec<crate::types::IncidentResponder>>,
61    pub(crate) opt_in_features: ::std::option::Option<::std::vec::Vec<crate::types::OptInFeature>>,
62}
63impl UpdateMembershipInputBuilder {
64    /// <p>Required element for UpdateMembership to identify the membership to update.</p>
65    /// This field is required.
66    pub fn membership_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
67        self.membership_id = ::std::option::Option::Some(input.into());
68        self
69    }
70    /// <p>Required element for UpdateMembership to identify the membership to update.</p>
71    pub fn set_membership_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
72        self.membership_id = input;
73        self
74    }
75    /// <p>Required element for UpdateMembership to identify the membership to update.</p>
76    pub fn get_membership_id(&self) -> &::std::option::Option<::std::string::String> {
77        &self.membership_id
78    }
79    /// <p>Optional element for UpdateMembership to update the membership name.</p>
80    pub fn membership_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
81        self.membership_name = ::std::option::Option::Some(input.into());
82        self
83    }
84    /// <p>Optional element for UpdateMembership to update the membership name.</p>
85    pub fn set_membership_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
86        self.membership_name = input;
87        self
88    }
89    /// <p>Optional element for UpdateMembership to update the membership name.</p>
90    pub fn get_membership_name(&self) -> &::std::option::Option<::std::string::String> {
91        &self.membership_name
92    }
93    /// Appends an item to `incident_response_team`.
94    ///
95    /// To override the contents of this collection use [`set_incident_response_team`](Self::set_incident_response_team).
96    ///
97    /// <p>Optional element for UpdateMembership to update the membership name.</p>
98    pub fn incident_response_team(mut self, input: crate::types::IncidentResponder) -> Self {
99        let mut v = self.incident_response_team.unwrap_or_default();
100        v.push(input);
101        self.incident_response_team = ::std::option::Option::Some(v);
102        self
103    }
104    /// <p>Optional element for UpdateMembership to update the membership name.</p>
105    pub fn set_incident_response_team(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::IncidentResponder>>) -> Self {
106        self.incident_response_team = input;
107        self
108    }
109    /// <p>Optional element for UpdateMembership to update the membership name.</p>
110    pub fn get_incident_response_team(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::IncidentResponder>> {
111        &self.incident_response_team
112    }
113    /// Appends an item to `opt_in_features`.
114    ///
115    /// To override the contents of this collection use [`set_opt_in_features`](Self::set_opt_in_features).
116    ///
117    /// <p>Optional element for UpdateMembership to enable or disable opt-in features for the service.</p>
118    pub fn opt_in_features(mut self, input: crate::types::OptInFeature) -> Self {
119        let mut v = self.opt_in_features.unwrap_or_default();
120        v.push(input);
121        self.opt_in_features = ::std::option::Option::Some(v);
122        self
123    }
124    /// <p>Optional element for UpdateMembership to enable or disable opt-in features for the service.</p>
125    pub fn set_opt_in_features(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OptInFeature>>) -> Self {
126        self.opt_in_features = input;
127        self
128    }
129    /// <p>Optional element for UpdateMembership to enable or disable opt-in features for the service.</p>
130    pub fn get_opt_in_features(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OptInFeature>> {
131        &self.opt_in_features
132    }
133    /// Consumes the builder and constructs a [`UpdateMembershipInput`](crate::operation::update_membership::UpdateMembershipInput).
134    pub fn build(
135        self,
136    ) -> ::std::result::Result<crate::operation::update_membership::UpdateMembershipInput, ::aws_smithy_types::error::operation::BuildError> {
137        ::std::result::Result::Ok(crate::operation::update_membership::UpdateMembershipInput {
138            membership_id: self.membership_id,
139            membership_name: self.membership_name,
140            incident_response_team: self.incident_response_team,
141            opt_in_features: self.opt_in_features,
142        })
143    }
144}
145impl ::std::fmt::Debug for UpdateMembershipInputBuilder {
146    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
147        let mut formatter = f.debug_struct("UpdateMembershipInputBuilder");
148        formatter.field("membership_id", &self.membership_id);
149        formatter.field("membership_name", &"*** Sensitive Data Redacted ***");
150        formatter.field("incident_response_team", &self.incident_response_team);
151        formatter.field("opt_in_features", &self.opt_in_features);
152        formatter.finish()
153    }
154}