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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.

/// <p>Contains a summary of a component. This is a read-only data type that is returned by <code>ListComponents</code>.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct ComponentSummary {
    /// <p>The unique ID of the Amplify app associated with the component.</p>
    pub app_id: ::std::option::Option<::std::string::String>,
    /// <p>The name of the backend environment that is a part of the Amplify app.</p>
    pub environment_name: ::std::option::Option<::std::string::String>,
    /// <p>The unique ID of the component.</p>
    pub id: ::std::option::Option<::std::string::String>,
    /// <p>The name of the component.</p>
    pub name: ::std::option::Option<::std::string::String>,
    /// <p>The component type.</p>
    pub component_type: ::std::option::Option<::std::string::String>,
}
impl ComponentSummary {
    /// <p>The unique ID of the Amplify app associated with the component.</p>
    pub fn app_id(&self) -> ::std::option::Option<&str> {
        self.app_id.as_deref()
    }
    /// <p>The name of the backend environment that is a part of the Amplify app.</p>
    pub fn environment_name(&self) -> ::std::option::Option<&str> {
        self.environment_name.as_deref()
    }
    /// <p>The unique ID of the component.</p>
    pub fn id(&self) -> ::std::option::Option<&str> {
        self.id.as_deref()
    }
    /// <p>The name of the component.</p>
    pub fn name(&self) -> ::std::option::Option<&str> {
        self.name.as_deref()
    }
    /// <p>The component type.</p>
    pub fn component_type(&self) -> ::std::option::Option<&str> {
        self.component_type.as_deref()
    }
}
impl ComponentSummary {
    /// Creates a new builder-style object to manufacture [`ComponentSummary`](crate::types::ComponentSummary).
    pub fn builder() -> crate::types::builders::ComponentSummaryBuilder {
        crate::types::builders::ComponentSummaryBuilder::default()
    }
}

/// A builder for [`ComponentSummary`](crate::types::ComponentSummary).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct ComponentSummaryBuilder {
    pub(crate) app_id: ::std::option::Option<::std::string::String>,
    pub(crate) environment_name: ::std::option::Option<::std::string::String>,
    pub(crate) id: ::std::option::Option<::std::string::String>,
    pub(crate) name: ::std::option::Option<::std::string::String>,
    pub(crate) component_type: ::std::option::Option<::std::string::String>,
}
impl ComponentSummaryBuilder {
    /// <p>The unique ID of the Amplify app associated with the component.</p>
    pub fn app_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.app_id = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The unique ID of the Amplify app associated with the component.</p>
    pub fn set_app_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.app_id = input;
        self
    }
    /// <p>The unique ID of the Amplify app associated with the component.</p>
    pub fn get_app_id(&self) -> &::std::option::Option<::std::string::String> {
        &self.app_id
    }
    /// <p>The name of the backend environment that is a part of the Amplify app.</p>
    pub fn environment_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.environment_name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The name of the backend environment that is a part of the Amplify app.</p>
    pub fn set_environment_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.environment_name = input;
        self
    }
    /// <p>The name of the backend environment that is a part of the Amplify app.</p>
    pub fn get_environment_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.environment_name
    }
    /// <p>The unique ID of the component.</p>
    pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.id = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The unique ID of the component.</p>
    pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.id = input;
        self
    }
    /// <p>The unique ID of the component.</p>
    pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
        &self.id
    }
    /// <p>The name of the component.</p>
    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The name of the component.</p>
    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.name = input;
        self
    }
    /// <p>The name of the component.</p>
    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.name
    }
    /// <p>The component type.</p>
    pub fn component_type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.component_type = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The component type.</p>
    pub fn set_component_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.component_type = input;
        self
    }
    /// <p>The component type.</p>
    pub fn get_component_type(&self) -> &::std::option::Option<::std::string::String> {
        &self.component_type
    }
    /// Consumes the builder and constructs a [`ComponentSummary`](crate::types::ComponentSummary).
    pub fn build(self) -> crate::types::ComponentSummary {
        crate::types::ComponentSummary {
            app_id: self.app_id,
            environment_name: self.environment_name,
            id: self.id,
            name: self.name,
            component_type: self.component_type,
        }
    }
}