aws_sdk_quicksight/operation/update_analysis/
_update_analysis_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, ::std::fmt::Debug)]
5pub struct UpdateAnalysisInput {
6    /// <p>The ID of the Amazon Web Services account that contains the analysis that you're updating.</p>
7    pub aws_account_id: ::std::option::Option<::std::string::String>,
8    /// <p>The ID for the analysis that you're updating. This ID displays in the URL of the analysis.</p>
9    pub analysis_id: ::std::option::Option<::std::string::String>,
10    /// <p>A descriptive name for the analysis that you're updating. This name displays for the analysis in the QuickSight console.</p>
11    pub name: ::std::option::Option<::std::string::String>,
12    /// <p>The parameter names and override values that you want to use. An analysis can have any parameter type, and some parameters might accept multiple values.</p>
13    pub parameters: ::std::option::Option<crate::types::Parameters>,
14    /// <p>A source entity to use for the analysis that you're updating. This metadata structure contains details that describe a source template and one or more datasets.</p>
15    pub source_entity: ::std::option::Option<crate::types::AnalysisSourceEntity>,
16    /// <p>The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.</p>
17    pub theme_arn: ::std::option::Option<::std::string::String>,
18    /// <p>The definition of an analysis.</p>
19    /// <p>A definition is the data model of all features in a Dashboard, Template, or Analysis.</p>
20    pub definition: ::std::option::Option<crate::types::AnalysisDefinition>,
21    /// <p>The option to relax the validation needed to update an analysis with definition objects. This skips the validation step for specific errors.</p>
22    pub validation_strategy: ::std::option::Option<crate::types::ValidationStrategy>,
23}
24impl UpdateAnalysisInput {
25    /// <p>The ID of the Amazon Web Services account that contains the analysis that you're updating.</p>
26    pub fn aws_account_id(&self) -> ::std::option::Option<&str> {
27        self.aws_account_id.as_deref()
28    }
29    /// <p>The ID for the analysis that you're updating. This ID displays in the URL of the analysis.</p>
30    pub fn analysis_id(&self) -> ::std::option::Option<&str> {
31        self.analysis_id.as_deref()
32    }
33    /// <p>A descriptive name for the analysis that you're updating. This name displays for the analysis in the QuickSight console.</p>
34    pub fn name(&self) -> ::std::option::Option<&str> {
35        self.name.as_deref()
36    }
37    /// <p>The parameter names and override values that you want to use. An analysis can have any parameter type, and some parameters might accept multiple values.</p>
38    pub fn parameters(&self) -> ::std::option::Option<&crate::types::Parameters> {
39        self.parameters.as_ref()
40    }
41    /// <p>A source entity to use for the analysis that you're updating. This metadata structure contains details that describe a source template and one or more datasets.</p>
42    pub fn source_entity(&self) -> ::std::option::Option<&crate::types::AnalysisSourceEntity> {
43        self.source_entity.as_ref()
44    }
45    /// <p>The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.</p>
46    pub fn theme_arn(&self) -> ::std::option::Option<&str> {
47        self.theme_arn.as_deref()
48    }
49    /// <p>The definition of an analysis.</p>
50    /// <p>A definition is the data model of all features in a Dashboard, Template, or Analysis.</p>
51    pub fn definition(&self) -> ::std::option::Option<&crate::types::AnalysisDefinition> {
52        self.definition.as_ref()
53    }
54    /// <p>The option to relax the validation needed to update an analysis with definition objects. This skips the validation step for specific errors.</p>
55    pub fn validation_strategy(&self) -> ::std::option::Option<&crate::types::ValidationStrategy> {
56        self.validation_strategy.as_ref()
57    }
58}
59impl UpdateAnalysisInput {
60    /// Creates a new builder-style object to manufacture [`UpdateAnalysisInput`](crate::operation::update_analysis::UpdateAnalysisInput).
61    pub fn builder() -> crate::operation::update_analysis::builders::UpdateAnalysisInputBuilder {
62        crate::operation::update_analysis::builders::UpdateAnalysisInputBuilder::default()
63    }
64}
65
66/// A builder for [`UpdateAnalysisInput`](crate::operation::update_analysis::UpdateAnalysisInput).
67#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
68#[non_exhaustive]
69pub struct UpdateAnalysisInputBuilder {
70    pub(crate) aws_account_id: ::std::option::Option<::std::string::String>,
71    pub(crate) analysis_id: ::std::option::Option<::std::string::String>,
72    pub(crate) name: ::std::option::Option<::std::string::String>,
73    pub(crate) parameters: ::std::option::Option<crate::types::Parameters>,
74    pub(crate) source_entity: ::std::option::Option<crate::types::AnalysisSourceEntity>,
75    pub(crate) theme_arn: ::std::option::Option<::std::string::String>,
76    pub(crate) definition: ::std::option::Option<crate::types::AnalysisDefinition>,
77    pub(crate) validation_strategy: ::std::option::Option<crate::types::ValidationStrategy>,
78}
79impl UpdateAnalysisInputBuilder {
80    /// <p>The ID of the Amazon Web Services account that contains the analysis that you're updating.</p>
81    /// This field is required.
82    pub fn aws_account_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
83        self.aws_account_id = ::std::option::Option::Some(input.into());
84        self
85    }
86    /// <p>The ID of the Amazon Web Services account that contains the analysis that you're updating.</p>
87    pub fn set_aws_account_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
88        self.aws_account_id = input;
89        self
90    }
91    /// <p>The ID of the Amazon Web Services account that contains the analysis that you're updating.</p>
92    pub fn get_aws_account_id(&self) -> &::std::option::Option<::std::string::String> {
93        &self.aws_account_id
94    }
95    /// <p>The ID for the analysis that you're updating. This ID displays in the URL of the analysis.</p>
96    /// This field is required.
97    pub fn analysis_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
98        self.analysis_id = ::std::option::Option::Some(input.into());
99        self
100    }
101    /// <p>The ID for the analysis that you're updating. This ID displays in the URL of the analysis.</p>
102    pub fn set_analysis_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
103        self.analysis_id = input;
104        self
105    }
106    /// <p>The ID for the analysis that you're updating. This ID displays in the URL of the analysis.</p>
107    pub fn get_analysis_id(&self) -> &::std::option::Option<::std::string::String> {
108        &self.analysis_id
109    }
110    /// <p>A descriptive name for the analysis that you're updating. This name displays for the analysis in the QuickSight console.</p>
111    /// This field is required.
112    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
113        self.name = ::std::option::Option::Some(input.into());
114        self
115    }
116    /// <p>A descriptive name for the analysis that you're updating. This name displays for the analysis in the QuickSight console.</p>
117    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
118        self.name = input;
119        self
120    }
121    /// <p>A descriptive name for the analysis that you're updating. This name displays for the analysis in the QuickSight console.</p>
122    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
123        &self.name
124    }
125    /// <p>The parameter names and override values that you want to use. An analysis can have any parameter type, and some parameters might accept multiple values.</p>
126    pub fn parameters(mut self, input: crate::types::Parameters) -> Self {
127        self.parameters = ::std::option::Option::Some(input);
128        self
129    }
130    /// <p>The parameter names and override values that you want to use. An analysis can have any parameter type, and some parameters might accept multiple values.</p>
131    pub fn set_parameters(mut self, input: ::std::option::Option<crate::types::Parameters>) -> Self {
132        self.parameters = input;
133        self
134    }
135    /// <p>The parameter names and override values that you want to use. An analysis can have any parameter type, and some parameters might accept multiple values.</p>
136    pub fn get_parameters(&self) -> &::std::option::Option<crate::types::Parameters> {
137        &self.parameters
138    }
139    /// <p>A source entity to use for the analysis that you're updating. This metadata structure contains details that describe a source template and one or more datasets.</p>
140    pub fn source_entity(mut self, input: crate::types::AnalysisSourceEntity) -> Self {
141        self.source_entity = ::std::option::Option::Some(input);
142        self
143    }
144    /// <p>A source entity to use for the analysis that you're updating. This metadata structure contains details that describe a source template and one or more datasets.</p>
145    pub fn set_source_entity(mut self, input: ::std::option::Option<crate::types::AnalysisSourceEntity>) -> Self {
146        self.source_entity = input;
147        self
148    }
149    /// <p>A source entity to use for the analysis that you're updating. This metadata structure contains details that describe a source template and one or more datasets.</p>
150    pub fn get_source_entity(&self) -> &::std::option::Option<crate::types::AnalysisSourceEntity> {
151        &self.source_entity
152    }
153    /// <p>The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.</p>
154    pub fn theme_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
155        self.theme_arn = ::std::option::Option::Some(input.into());
156        self
157    }
158    /// <p>The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.</p>
159    pub fn set_theme_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
160        self.theme_arn = input;
161        self
162    }
163    /// <p>The Amazon Resource Name (ARN) for the theme to apply to the analysis that you're creating. To see the theme in the QuickSight console, make sure that you have access to it.</p>
164    pub fn get_theme_arn(&self) -> &::std::option::Option<::std::string::String> {
165        &self.theme_arn
166    }
167    /// <p>The definition of an analysis.</p>
168    /// <p>A definition is the data model of all features in a Dashboard, Template, or Analysis.</p>
169    pub fn definition(mut self, input: crate::types::AnalysisDefinition) -> Self {
170        self.definition = ::std::option::Option::Some(input);
171        self
172    }
173    /// <p>The definition of an analysis.</p>
174    /// <p>A definition is the data model of all features in a Dashboard, Template, or Analysis.</p>
175    pub fn set_definition(mut self, input: ::std::option::Option<crate::types::AnalysisDefinition>) -> Self {
176        self.definition = input;
177        self
178    }
179    /// <p>The definition of an analysis.</p>
180    /// <p>A definition is the data model of all features in a Dashboard, Template, or Analysis.</p>
181    pub fn get_definition(&self) -> &::std::option::Option<crate::types::AnalysisDefinition> {
182        &self.definition
183    }
184    /// <p>The option to relax the validation needed to update an analysis with definition objects. This skips the validation step for specific errors.</p>
185    pub fn validation_strategy(mut self, input: crate::types::ValidationStrategy) -> Self {
186        self.validation_strategy = ::std::option::Option::Some(input);
187        self
188    }
189    /// <p>The option to relax the validation needed to update an analysis with definition objects. This skips the validation step for specific errors.</p>
190    pub fn set_validation_strategy(mut self, input: ::std::option::Option<crate::types::ValidationStrategy>) -> Self {
191        self.validation_strategy = input;
192        self
193    }
194    /// <p>The option to relax the validation needed to update an analysis with definition objects. This skips the validation step for specific errors.</p>
195    pub fn get_validation_strategy(&self) -> &::std::option::Option<crate::types::ValidationStrategy> {
196        &self.validation_strategy
197    }
198    /// Consumes the builder and constructs a [`UpdateAnalysisInput`](crate::operation::update_analysis::UpdateAnalysisInput).
199    pub fn build(
200        self,
201    ) -> ::std::result::Result<crate::operation::update_analysis::UpdateAnalysisInput, ::aws_smithy_types::error::operation::BuildError> {
202        ::std::result::Result::Ok(crate::operation::update_analysis::UpdateAnalysisInput {
203            aws_account_id: self.aws_account_id,
204            analysis_id: self.analysis_id,
205            name: self.name,
206            parameters: self.parameters,
207            source_entity: self.source_entity,
208            theme_arn: self.theme_arn,
209            definition: self.definition,
210            validation_strategy: self.validation_strategy,
211        })
212    }
213}