Skip to main content

aws_sdk_migrationhubstrategy/types/
_application_component_detail.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Contains detailed information about an application component.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct ApplicationComponentDetail {
7    /// <p>The ID of the application component.</p>
8    pub id: ::std::option::Option<::std::string::String>,
9    /// <p>The name of application component.</p>
10    pub name: ::std::option::Option<::std::string::String>,
11    /// <p>The top recommendation set for the application component.</p>
12    pub recommendation_set: ::std::option::Option<crate::types::RecommendationSet>,
13    /// <p>The status of analysis, if the application component has source code or an associated database.</p>
14    pub analysis_status: ::std::option::Option<crate::types::SrcCodeOrDbAnalysisStatus>,
15    /// <p>A detailed description of the analysis status and any failure message.</p>
16    pub status_message: ::std::option::Option<::std::string::String>,
17    /// <p>A list of anti-pattern severity summaries.</p>
18    pub list_antipattern_severity_summary: ::std::option::Option<::std::vec::Vec<crate::types::AntipatternSeveritySummary>>,
19    /// <p>Configuration details for the database associated with the application component.</p>
20    pub database_config_detail: ::std::option::Option<crate::types::DatabaseConfigDetail>,
21    /// <p>Details about the source code repository associated with the application component.</p>
22    pub source_code_repositories: ::std::option::Option<::std::vec::Vec<crate::types::SourceCodeRepository>>,
23    /// <p>The type of application component.</p>
24    pub app_type: ::std::option::Option<crate::types::AppType>,
25    /// <p>The application component subtype.</p>
26    pub resource_sub_type: ::std::option::Option<crate::types::ResourceSubType>,
27    /// <p>Indicates whether the application component has been included for server recommendation or not.</p>
28    pub inclusion_status: ::std::option::Option<crate::types::InclusionStatus>,
29    /// <p>The S3 bucket name and the Amazon S3 key name for the anti-pattern report.</p>
30    pub antipattern_report_s3_object: ::std::option::Option<crate::types::S3Object>,
31    /// <p>The status of the anti-pattern report generation.</p>
32    pub antipattern_report_status: ::std::option::Option<crate::types::AntipatternReportStatus>,
33    /// <p>The status message for the anti-pattern.</p>
34    pub antipattern_report_status_message: ::std::option::Option<::std::string::String>,
35    /// <p>OS version.</p>
36    pub os_version: ::std::option::Option<::std::string::String>,
37    /// <p>OS driver.</p>
38    pub os_driver: ::std::option::Option<::std::string::String>,
39    /// <p>The timestamp of when the application component was assessed.</p>
40    pub last_analyzed_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
41    /// <p>The ID of the server that the application component is running on.</p>
42    pub associated_server_id: ::std::option::Option<::std::string::String>,
43    /// <p>Set to true if the application component is running on multiple servers.</p>
44    pub more_server_association_exists: ::std::option::Option<bool>,
45    /// <p>The status of the application unit.</p>
46    pub runtime_status: ::std::option::Option<crate::types::RuntimeAnalysisStatus>,
47    /// <p>The status message for the application unit.</p>
48    pub runtime_status_message: ::std::option::Option<::std::string::String>,
49    /// <p>The error in the analysis of the source code or database.</p>
50    pub app_unit_error: ::std::option::Option<crate::types::AppUnitError>,
51    /// <p>A list of the analysis results.</p>
52    pub result_list: ::std::option::Option<::std::vec::Vec<crate::types::Result>>,
53}
54impl ApplicationComponentDetail {
55    /// <p>The ID of the application component.</p>
56    pub fn id(&self) -> ::std::option::Option<&str> {
57        self.id.as_deref()
58    }
59    /// <p>The name of application component.</p>
60    pub fn name(&self) -> ::std::option::Option<&str> {
61        self.name.as_deref()
62    }
63    /// <p>The top recommendation set for the application component.</p>
64    pub fn recommendation_set(&self) -> ::std::option::Option<&crate::types::RecommendationSet> {
65        self.recommendation_set.as_ref()
66    }
67    /// <p>The status of analysis, if the application component has source code or an associated database.</p>
68    pub fn analysis_status(&self) -> ::std::option::Option<&crate::types::SrcCodeOrDbAnalysisStatus> {
69        self.analysis_status.as_ref()
70    }
71    /// <p>A detailed description of the analysis status and any failure message.</p>
72    pub fn status_message(&self) -> ::std::option::Option<&str> {
73        self.status_message.as_deref()
74    }
75    /// <p>A list of anti-pattern severity summaries.</p>
76    ///
77    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.list_antipattern_severity_summary.is_none()`.
78    pub fn list_antipattern_severity_summary(&self) -> &[crate::types::AntipatternSeveritySummary] {
79        self.list_antipattern_severity_summary.as_deref().unwrap_or_default()
80    }
81    /// <p>Configuration details for the database associated with the application component.</p>
82    pub fn database_config_detail(&self) -> ::std::option::Option<&crate::types::DatabaseConfigDetail> {
83        self.database_config_detail.as_ref()
84    }
85    /// <p>Details about the source code repository associated with the application component.</p>
86    ///
87    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.source_code_repositories.is_none()`.
88    pub fn source_code_repositories(&self) -> &[crate::types::SourceCodeRepository] {
89        self.source_code_repositories.as_deref().unwrap_or_default()
90    }
91    /// <p>The type of application component.</p>
92    pub fn app_type(&self) -> ::std::option::Option<&crate::types::AppType> {
93        self.app_type.as_ref()
94    }
95    /// <p>The application component subtype.</p>
96    pub fn resource_sub_type(&self) -> ::std::option::Option<&crate::types::ResourceSubType> {
97        self.resource_sub_type.as_ref()
98    }
99    /// <p>Indicates whether the application component has been included for server recommendation or not.</p>
100    pub fn inclusion_status(&self) -> ::std::option::Option<&crate::types::InclusionStatus> {
101        self.inclusion_status.as_ref()
102    }
103    /// <p>The S3 bucket name and the Amazon S3 key name for the anti-pattern report.</p>
104    pub fn antipattern_report_s3_object(&self) -> ::std::option::Option<&crate::types::S3Object> {
105        self.antipattern_report_s3_object.as_ref()
106    }
107    /// <p>The status of the anti-pattern report generation.</p>
108    pub fn antipattern_report_status(&self) -> ::std::option::Option<&crate::types::AntipatternReportStatus> {
109        self.antipattern_report_status.as_ref()
110    }
111    /// <p>The status message for the anti-pattern.</p>
112    pub fn antipattern_report_status_message(&self) -> ::std::option::Option<&str> {
113        self.antipattern_report_status_message.as_deref()
114    }
115    /// <p>OS version.</p>
116    pub fn os_version(&self) -> ::std::option::Option<&str> {
117        self.os_version.as_deref()
118    }
119    /// <p>OS driver.</p>
120    pub fn os_driver(&self) -> ::std::option::Option<&str> {
121        self.os_driver.as_deref()
122    }
123    /// <p>The timestamp of when the application component was assessed.</p>
124    pub fn last_analyzed_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
125        self.last_analyzed_timestamp.as_ref()
126    }
127    /// <p>The ID of the server that the application component is running on.</p>
128    pub fn associated_server_id(&self) -> ::std::option::Option<&str> {
129        self.associated_server_id.as_deref()
130    }
131    /// <p>Set to true if the application component is running on multiple servers.</p>
132    pub fn more_server_association_exists(&self) -> ::std::option::Option<bool> {
133        self.more_server_association_exists
134    }
135    /// <p>The status of the application unit.</p>
136    pub fn runtime_status(&self) -> ::std::option::Option<&crate::types::RuntimeAnalysisStatus> {
137        self.runtime_status.as_ref()
138    }
139    /// <p>The status message for the application unit.</p>
140    pub fn runtime_status_message(&self) -> ::std::option::Option<&str> {
141        self.runtime_status_message.as_deref()
142    }
143    /// <p>The error in the analysis of the source code or database.</p>
144    pub fn app_unit_error(&self) -> ::std::option::Option<&crate::types::AppUnitError> {
145        self.app_unit_error.as_ref()
146    }
147    /// <p>A list of the analysis results.</p>
148    ///
149    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.result_list.is_none()`.
150    pub fn result_list(&self) -> &[crate::types::Result] {
151        self.result_list.as_deref().unwrap_or_default()
152    }
153}
154impl ApplicationComponentDetail {
155    /// Creates a new builder-style object to manufacture [`ApplicationComponentDetail`](crate::types::ApplicationComponentDetail).
156    pub fn builder() -> crate::types::builders::ApplicationComponentDetailBuilder {
157        crate::types::builders::ApplicationComponentDetailBuilder::default()
158    }
159}
160
161/// A builder for [`ApplicationComponentDetail`](crate::types::ApplicationComponentDetail).
162#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
163#[non_exhaustive]
164pub struct ApplicationComponentDetailBuilder {
165    pub(crate) id: ::std::option::Option<::std::string::String>,
166    pub(crate) name: ::std::option::Option<::std::string::String>,
167    pub(crate) recommendation_set: ::std::option::Option<crate::types::RecommendationSet>,
168    pub(crate) analysis_status: ::std::option::Option<crate::types::SrcCodeOrDbAnalysisStatus>,
169    pub(crate) status_message: ::std::option::Option<::std::string::String>,
170    pub(crate) list_antipattern_severity_summary: ::std::option::Option<::std::vec::Vec<crate::types::AntipatternSeveritySummary>>,
171    pub(crate) database_config_detail: ::std::option::Option<crate::types::DatabaseConfigDetail>,
172    pub(crate) source_code_repositories: ::std::option::Option<::std::vec::Vec<crate::types::SourceCodeRepository>>,
173    pub(crate) app_type: ::std::option::Option<crate::types::AppType>,
174    pub(crate) resource_sub_type: ::std::option::Option<crate::types::ResourceSubType>,
175    pub(crate) inclusion_status: ::std::option::Option<crate::types::InclusionStatus>,
176    pub(crate) antipattern_report_s3_object: ::std::option::Option<crate::types::S3Object>,
177    pub(crate) antipattern_report_status: ::std::option::Option<crate::types::AntipatternReportStatus>,
178    pub(crate) antipattern_report_status_message: ::std::option::Option<::std::string::String>,
179    pub(crate) os_version: ::std::option::Option<::std::string::String>,
180    pub(crate) os_driver: ::std::option::Option<::std::string::String>,
181    pub(crate) last_analyzed_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
182    pub(crate) associated_server_id: ::std::option::Option<::std::string::String>,
183    pub(crate) more_server_association_exists: ::std::option::Option<bool>,
184    pub(crate) runtime_status: ::std::option::Option<crate::types::RuntimeAnalysisStatus>,
185    pub(crate) runtime_status_message: ::std::option::Option<::std::string::String>,
186    pub(crate) app_unit_error: ::std::option::Option<crate::types::AppUnitError>,
187    pub(crate) result_list: ::std::option::Option<::std::vec::Vec<crate::types::Result>>,
188}
189impl ApplicationComponentDetailBuilder {
190    /// <p>The ID of the application component.</p>
191    pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
192        self.id = ::std::option::Option::Some(input.into());
193        self
194    }
195    /// <p>The ID of the application component.</p>
196    pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
197        self.id = input;
198        self
199    }
200    /// <p>The ID of the application component.</p>
201    pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
202        &self.id
203    }
204    /// <p>The name of application component.</p>
205    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
206        self.name = ::std::option::Option::Some(input.into());
207        self
208    }
209    /// <p>The name of application component.</p>
210    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
211        self.name = input;
212        self
213    }
214    /// <p>The name of application component.</p>
215    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
216        &self.name
217    }
218    /// <p>The top recommendation set for the application component.</p>
219    pub fn recommendation_set(mut self, input: crate::types::RecommendationSet) -> Self {
220        self.recommendation_set = ::std::option::Option::Some(input);
221        self
222    }
223    /// <p>The top recommendation set for the application component.</p>
224    pub fn set_recommendation_set(mut self, input: ::std::option::Option<crate::types::RecommendationSet>) -> Self {
225        self.recommendation_set = input;
226        self
227    }
228    /// <p>The top recommendation set for the application component.</p>
229    pub fn get_recommendation_set(&self) -> &::std::option::Option<crate::types::RecommendationSet> {
230        &self.recommendation_set
231    }
232    /// <p>The status of analysis, if the application component has source code or an associated database.</p>
233    pub fn analysis_status(mut self, input: crate::types::SrcCodeOrDbAnalysisStatus) -> Self {
234        self.analysis_status = ::std::option::Option::Some(input);
235        self
236    }
237    /// <p>The status of analysis, if the application component has source code or an associated database.</p>
238    pub fn set_analysis_status(mut self, input: ::std::option::Option<crate::types::SrcCodeOrDbAnalysisStatus>) -> Self {
239        self.analysis_status = input;
240        self
241    }
242    /// <p>The status of analysis, if the application component has source code or an associated database.</p>
243    pub fn get_analysis_status(&self) -> &::std::option::Option<crate::types::SrcCodeOrDbAnalysisStatus> {
244        &self.analysis_status
245    }
246    /// <p>A detailed description of the analysis status and any failure message.</p>
247    pub fn status_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
248        self.status_message = ::std::option::Option::Some(input.into());
249        self
250    }
251    /// <p>A detailed description of the analysis status and any failure message.</p>
252    pub fn set_status_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
253        self.status_message = input;
254        self
255    }
256    /// <p>A detailed description of the analysis status and any failure message.</p>
257    pub fn get_status_message(&self) -> &::std::option::Option<::std::string::String> {
258        &self.status_message
259    }
260    /// Appends an item to `list_antipattern_severity_summary`.
261    ///
262    /// To override the contents of this collection use [`set_list_antipattern_severity_summary`](Self::set_list_antipattern_severity_summary).
263    ///
264    /// <p>A list of anti-pattern severity summaries.</p>
265    pub fn list_antipattern_severity_summary(mut self, input: crate::types::AntipatternSeveritySummary) -> Self {
266        let mut v = self.list_antipattern_severity_summary.unwrap_or_default();
267        v.push(input);
268        self.list_antipattern_severity_summary = ::std::option::Option::Some(v);
269        self
270    }
271    /// <p>A list of anti-pattern severity summaries.</p>
272    pub fn set_list_antipattern_severity_summary(
273        mut self,
274        input: ::std::option::Option<::std::vec::Vec<crate::types::AntipatternSeveritySummary>>,
275    ) -> Self {
276        self.list_antipattern_severity_summary = input;
277        self
278    }
279    /// <p>A list of anti-pattern severity summaries.</p>
280    pub fn get_list_antipattern_severity_summary(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AntipatternSeveritySummary>> {
281        &self.list_antipattern_severity_summary
282    }
283    /// <p>Configuration details for the database associated with the application component.</p>
284    pub fn database_config_detail(mut self, input: crate::types::DatabaseConfigDetail) -> Self {
285        self.database_config_detail = ::std::option::Option::Some(input);
286        self
287    }
288    /// <p>Configuration details for the database associated with the application component.</p>
289    pub fn set_database_config_detail(mut self, input: ::std::option::Option<crate::types::DatabaseConfigDetail>) -> Self {
290        self.database_config_detail = input;
291        self
292    }
293    /// <p>Configuration details for the database associated with the application component.</p>
294    pub fn get_database_config_detail(&self) -> &::std::option::Option<crate::types::DatabaseConfigDetail> {
295        &self.database_config_detail
296    }
297    /// Appends an item to `source_code_repositories`.
298    ///
299    /// To override the contents of this collection use [`set_source_code_repositories`](Self::set_source_code_repositories).
300    ///
301    /// <p>Details about the source code repository associated with the application component.</p>
302    pub fn source_code_repositories(mut self, input: crate::types::SourceCodeRepository) -> Self {
303        let mut v = self.source_code_repositories.unwrap_or_default();
304        v.push(input);
305        self.source_code_repositories = ::std::option::Option::Some(v);
306        self
307    }
308    /// <p>Details about the source code repository associated with the application component.</p>
309    pub fn set_source_code_repositories(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::SourceCodeRepository>>) -> Self {
310        self.source_code_repositories = input;
311        self
312    }
313    /// <p>Details about the source code repository associated with the application component.</p>
314    pub fn get_source_code_repositories(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::SourceCodeRepository>> {
315        &self.source_code_repositories
316    }
317    /// <p>The type of application component.</p>
318    pub fn app_type(mut self, input: crate::types::AppType) -> Self {
319        self.app_type = ::std::option::Option::Some(input);
320        self
321    }
322    /// <p>The type of application component.</p>
323    pub fn set_app_type(mut self, input: ::std::option::Option<crate::types::AppType>) -> Self {
324        self.app_type = input;
325        self
326    }
327    /// <p>The type of application component.</p>
328    pub fn get_app_type(&self) -> &::std::option::Option<crate::types::AppType> {
329        &self.app_type
330    }
331    /// <p>The application component subtype.</p>
332    pub fn resource_sub_type(mut self, input: crate::types::ResourceSubType) -> Self {
333        self.resource_sub_type = ::std::option::Option::Some(input);
334        self
335    }
336    /// <p>The application component subtype.</p>
337    pub fn set_resource_sub_type(mut self, input: ::std::option::Option<crate::types::ResourceSubType>) -> Self {
338        self.resource_sub_type = input;
339        self
340    }
341    /// <p>The application component subtype.</p>
342    pub fn get_resource_sub_type(&self) -> &::std::option::Option<crate::types::ResourceSubType> {
343        &self.resource_sub_type
344    }
345    /// <p>Indicates whether the application component has been included for server recommendation or not.</p>
346    pub fn inclusion_status(mut self, input: crate::types::InclusionStatus) -> Self {
347        self.inclusion_status = ::std::option::Option::Some(input);
348        self
349    }
350    /// <p>Indicates whether the application component has been included for server recommendation or not.</p>
351    pub fn set_inclusion_status(mut self, input: ::std::option::Option<crate::types::InclusionStatus>) -> Self {
352        self.inclusion_status = input;
353        self
354    }
355    /// <p>Indicates whether the application component has been included for server recommendation or not.</p>
356    pub fn get_inclusion_status(&self) -> &::std::option::Option<crate::types::InclusionStatus> {
357        &self.inclusion_status
358    }
359    /// <p>The S3 bucket name and the Amazon S3 key name for the anti-pattern report.</p>
360    pub fn antipattern_report_s3_object(mut self, input: crate::types::S3Object) -> Self {
361        self.antipattern_report_s3_object = ::std::option::Option::Some(input);
362        self
363    }
364    /// <p>The S3 bucket name and the Amazon S3 key name for the anti-pattern report.</p>
365    pub fn set_antipattern_report_s3_object(mut self, input: ::std::option::Option<crate::types::S3Object>) -> Self {
366        self.antipattern_report_s3_object = input;
367        self
368    }
369    /// <p>The S3 bucket name and the Amazon S3 key name for the anti-pattern report.</p>
370    pub fn get_antipattern_report_s3_object(&self) -> &::std::option::Option<crate::types::S3Object> {
371        &self.antipattern_report_s3_object
372    }
373    /// <p>The status of the anti-pattern report generation.</p>
374    pub fn antipattern_report_status(mut self, input: crate::types::AntipatternReportStatus) -> Self {
375        self.antipattern_report_status = ::std::option::Option::Some(input);
376        self
377    }
378    /// <p>The status of the anti-pattern report generation.</p>
379    pub fn set_antipattern_report_status(mut self, input: ::std::option::Option<crate::types::AntipatternReportStatus>) -> Self {
380        self.antipattern_report_status = input;
381        self
382    }
383    /// <p>The status of the anti-pattern report generation.</p>
384    pub fn get_antipattern_report_status(&self) -> &::std::option::Option<crate::types::AntipatternReportStatus> {
385        &self.antipattern_report_status
386    }
387    /// <p>The status message for the anti-pattern.</p>
388    pub fn antipattern_report_status_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
389        self.antipattern_report_status_message = ::std::option::Option::Some(input.into());
390        self
391    }
392    /// <p>The status message for the anti-pattern.</p>
393    pub fn set_antipattern_report_status_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
394        self.antipattern_report_status_message = input;
395        self
396    }
397    /// <p>The status message for the anti-pattern.</p>
398    pub fn get_antipattern_report_status_message(&self) -> &::std::option::Option<::std::string::String> {
399        &self.antipattern_report_status_message
400    }
401    /// <p>OS version.</p>
402    pub fn os_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
403        self.os_version = ::std::option::Option::Some(input.into());
404        self
405    }
406    /// <p>OS version.</p>
407    pub fn set_os_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
408        self.os_version = input;
409        self
410    }
411    /// <p>OS version.</p>
412    pub fn get_os_version(&self) -> &::std::option::Option<::std::string::String> {
413        &self.os_version
414    }
415    /// <p>OS driver.</p>
416    pub fn os_driver(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
417        self.os_driver = ::std::option::Option::Some(input.into());
418        self
419    }
420    /// <p>OS driver.</p>
421    pub fn set_os_driver(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
422        self.os_driver = input;
423        self
424    }
425    /// <p>OS driver.</p>
426    pub fn get_os_driver(&self) -> &::std::option::Option<::std::string::String> {
427        &self.os_driver
428    }
429    /// <p>The timestamp of when the application component was assessed.</p>
430    pub fn last_analyzed_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
431        self.last_analyzed_timestamp = ::std::option::Option::Some(input);
432        self
433    }
434    /// <p>The timestamp of when the application component was assessed.</p>
435    pub fn set_last_analyzed_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
436        self.last_analyzed_timestamp = input;
437        self
438    }
439    /// <p>The timestamp of when the application component was assessed.</p>
440    pub fn get_last_analyzed_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
441        &self.last_analyzed_timestamp
442    }
443    /// <p>The ID of the server that the application component is running on.</p>
444    pub fn associated_server_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
445        self.associated_server_id = ::std::option::Option::Some(input.into());
446        self
447    }
448    /// <p>The ID of the server that the application component is running on.</p>
449    pub fn set_associated_server_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
450        self.associated_server_id = input;
451        self
452    }
453    /// <p>The ID of the server that the application component is running on.</p>
454    pub fn get_associated_server_id(&self) -> &::std::option::Option<::std::string::String> {
455        &self.associated_server_id
456    }
457    /// <p>Set to true if the application component is running on multiple servers.</p>
458    pub fn more_server_association_exists(mut self, input: bool) -> Self {
459        self.more_server_association_exists = ::std::option::Option::Some(input);
460        self
461    }
462    /// <p>Set to true if the application component is running on multiple servers.</p>
463    pub fn set_more_server_association_exists(mut self, input: ::std::option::Option<bool>) -> Self {
464        self.more_server_association_exists = input;
465        self
466    }
467    /// <p>Set to true if the application component is running on multiple servers.</p>
468    pub fn get_more_server_association_exists(&self) -> &::std::option::Option<bool> {
469        &self.more_server_association_exists
470    }
471    /// <p>The status of the application unit.</p>
472    pub fn runtime_status(mut self, input: crate::types::RuntimeAnalysisStatus) -> Self {
473        self.runtime_status = ::std::option::Option::Some(input);
474        self
475    }
476    /// <p>The status of the application unit.</p>
477    pub fn set_runtime_status(mut self, input: ::std::option::Option<crate::types::RuntimeAnalysisStatus>) -> Self {
478        self.runtime_status = input;
479        self
480    }
481    /// <p>The status of the application unit.</p>
482    pub fn get_runtime_status(&self) -> &::std::option::Option<crate::types::RuntimeAnalysisStatus> {
483        &self.runtime_status
484    }
485    /// <p>The status message for the application unit.</p>
486    pub fn runtime_status_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
487        self.runtime_status_message = ::std::option::Option::Some(input.into());
488        self
489    }
490    /// <p>The status message for the application unit.</p>
491    pub fn set_runtime_status_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
492        self.runtime_status_message = input;
493        self
494    }
495    /// <p>The status message for the application unit.</p>
496    pub fn get_runtime_status_message(&self) -> &::std::option::Option<::std::string::String> {
497        &self.runtime_status_message
498    }
499    /// <p>The error in the analysis of the source code or database.</p>
500    pub fn app_unit_error(mut self, input: crate::types::AppUnitError) -> Self {
501        self.app_unit_error = ::std::option::Option::Some(input);
502        self
503    }
504    /// <p>The error in the analysis of the source code or database.</p>
505    pub fn set_app_unit_error(mut self, input: ::std::option::Option<crate::types::AppUnitError>) -> Self {
506        self.app_unit_error = input;
507        self
508    }
509    /// <p>The error in the analysis of the source code or database.</p>
510    pub fn get_app_unit_error(&self) -> &::std::option::Option<crate::types::AppUnitError> {
511        &self.app_unit_error
512    }
513    /// Appends an item to `result_list`.
514    ///
515    /// To override the contents of this collection use [`set_result_list`](Self::set_result_list).
516    ///
517    /// <p>A list of the analysis results.</p>
518    pub fn result_list(mut self, input: crate::types::Result) -> Self {
519        let mut v = self.result_list.unwrap_or_default();
520        v.push(input);
521        self.result_list = ::std::option::Option::Some(v);
522        self
523    }
524    /// <p>A list of the analysis results.</p>
525    pub fn set_result_list(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Result>>) -> Self {
526        self.result_list = input;
527        self
528    }
529    /// <p>A list of the analysis results.</p>
530    pub fn get_result_list(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Result>> {
531        &self.result_list
532    }
533    /// Consumes the builder and constructs a [`ApplicationComponentDetail`](crate::types::ApplicationComponentDetail).
534    pub fn build(self) -> crate::types::ApplicationComponentDetail {
535        crate::types::ApplicationComponentDetail {
536            id: self.id,
537            name: self.name,
538            recommendation_set: self.recommendation_set,
539            analysis_status: self.analysis_status,
540            status_message: self.status_message,
541            list_antipattern_severity_summary: self.list_antipattern_severity_summary,
542            database_config_detail: self.database_config_detail,
543            source_code_repositories: self.source_code_repositories,
544            app_type: self.app_type,
545            resource_sub_type: self.resource_sub_type,
546            inclusion_status: self.inclusion_status,
547            antipattern_report_s3_object: self.antipattern_report_s3_object,
548            antipattern_report_status: self.antipattern_report_status,
549            antipattern_report_status_message: self.antipattern_report_status_message,
550            os_version: self.os_version,
551            os_driver: self.os_driver,
552            last_analyzed_timestamp: self.last_analyzed_timestamp,
553            associated_server_id: self.associated_server_id,
554            more_server_association_exists: self.more_server_association_exists,
555            runtime_status: self.runtime_status,
556            runtime_status_message: self.runtime_status_message,
557            app_unit_error: self.app_unit_error,
558            result_list: self.result_list,
559        }
560    }
561}