aws_sdk_quicksight/types/
_filter_drop_down_control.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct FilterDropDownControl {
7 pub filter_control_id: ::std::string::String,
9 pub title: ::std::string::String,
11 pub source_filter_id: ::std::string::String,
13 pub display_options: ::std::option::Option<crate::types::DropDownControlDisplayOptions>,
15 pub r#type: ::std::option::Option<crate::types::SheetControlListType>,
23 pub selectable_values: ::std::option::Option<crate::types::FilterSelectableValues>,
25 pub cascading_control_configuration: ::std::option::Option<crate::types::CascadingControlConfiguration>,
27 pub commit_mode: ::std::option::Option<crate::types::CommitMode>,
29}
30impl FilterDropDownControl {
31 pub fn filter_control_id(&self) -> &str {
33 use std::ops::Deref;
34 self.filter_control_id.deref()
35 }
36 pub fn title(&self) -> &str {
38 use std::ops::Deref;
39 self.title.deref()
40 }
41 pub fn source_filter_id(&self) -> &str {
43 use std::ops::Deref;
44 self.source_filter_id.deref()
45 }
46 pub fn display_options(&self) -> ::std::option::Option<&crate::types::DropDownControlDisplayOptions> {
48 self.display_options.as_ref()
49 }
50 pub fn r#type(&self) -> ::std::option::Option<&crate::types::SheetControlListType> {
58 self.r#type.as_ref()
59 }
60 pub fn selectable_values(&self) -> ::std::option::Option<&crate::types::FilterSelectableValues> {
62 self.selectable_values.as_ref()
63 }
64 pub fn cascading_control_configuration(&self) -> ::std::option::Option<&crate::types::CascadingControlConfiguration> {
66 self.cascading_control_configuration.as_ref()
67 }
68 pub fn commit_mode(&self) -> ::std::option::Option<&crate::types::CommitMode> {
70 self.commit_mode.as_ref()
71 }
72}
73impl FilterDropDownControl {
74 pub fn builder() -> crate::types::builders::FilterDropDownControlBuilder {
76 crate::types::builders::FilterDropDownControlBuilder::default()
77 }
78}
79
80#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
82#[non_exhaustive]
83pub struct FilterDropDownControlBuilder {
84 pub(crate) filter_control_id: ::std::option::Option<::std::string::String>,
85 pub(crate) title: ::std::option::Option<::std::string::String>,
86 pub(crate) source_filter_id: ::std::option::Option<::std::string::String>,
87 pub(crate) display_options: ::std::option::Option<crate::types::DropDownControlDisplayOptions>,
88 pub(crate) r#type: ::std::option::Option<crate::types::SheetControlListType>,
89 pub(crate) selectable_values: ::std::option::Option<crate::types::FilterSelectableValues>,
90 pub(crate) cascading_control_configuration: ::std::option::Option<crate::types::CascadingControlConfiguration>,
91 pub(crate) commit_mode: ::std::option::Option<crate::types::CommitMode>,
92}
93impl FilterDropDownControlBuilder {
94 pub fn filter_control_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
97 self.filter_control_id = ::std::option::Option::Some(input.into());
98 self
99 }
100 pub fn set_filter_control_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
102 self.filter_control_id = input;
103 self
104 }
105 pub fn get_filter_control_id(&self) -> &::std::option::Option<::std::string::String> {
107 &self.filter_control_id
108 }
109 pub fn title(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
112 self.title = ::std::option::Option::Some(input.into());
113 self
114 }
115 pub fn set_title(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
117 self.title = input;
118 self
119 }
120 pub fn get_title(&self) -> &::std::option::Option<::std::string::String> {
122 &self.title
123 }
124 pub fn source_filter_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
127 self.source_filter_id = ::std::option::Option::Some(input.into());
128 self
129 }
130 pub fn set_source_filter_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
132 self.source_filter_id = input;
133 self
134 }
135 pub fn get_source_filter_id(&self) -> &::std::option::Option<::std::string::String> {
137 &self.source_filter_id
138 }
139 pub fn display_options(mut self, input: crate::types::DropDownControlDisplayOptions) -> Self {
141 self.display_options = ::std::option::Option::Some(input);
142 self
143 }
144 pub fn set_display_options(mut self, input: ::std::option::Option<crate::types::DropDownControlDisplayOptions>) -> Self {
146 self.display_options = input;
147 self
148 }
149 pub fn get_display_options(&self) -> &::std::option::Option<crate::types::DropDownControlDisplayOptions> {
151 &self.display_options
152 }
153 pub fn r#type(mut self, input: crate::types::SheetControlListType) -> Self {
161 self.r#type = ::std::option::Option::Some(input);
162 self
163 }
164 pub fn set_type(mut self, input: ::std::option::Option<crate::types::SheetControlListType>) -> Self {
172 self.r#type = input;
173 self
174 }
175 pub fn get_type(&self) -> &::std::option::Option<crate::types::SheetControlListType> {
183 &self.r#type
184 }
185 pub fn selectable_values(mut self, input: crate::types::FilterSelectableValues) -> Self {
187 self.selectable_values = ::std::option::Option::Some(input);
188 self
189 }
190 pub fn set_selectable_values(mut self, input: ::std::option::Option<crate::types::FilterSelectableValues>) -> Self {
192 self.selectable_values = input;
193 self
194 }
195 pub fn get_selectable_values(&self) -> &::std::option::Option<crate::types::FilterSelectableValues> {
197 &self.selectable_values
198 }
199 pub fn cascading_control_configuration(mut self, input: crate::types::CascadingControlConfiguration) -> Self {
201 self.cascading_control_configuration = ::std::option::Option::Some(input);
202 self
203 }
204 pub fn set_cascading_control_configuration(mut self, input: ::std::option::Option<crate::types::CascadingControlConfiguration>) -> Self {
206 self.cascading_control_configuration = input;
207 self
208 }
209 pub fn get_cascading_control_configuration(&self) -> &::std::option::Option<crate::types::CascadingControlConfiguration> {
211 &self.cascading_control_configuration
212 }
213 pub fn commit_mode(mut self, input: crate::types::CommitMode) -> Self {
215 self.commit_mode = ::std::option::Option::Some(input);
216 self
217 }
218 pub fn set_commit_mode(mut self, input: ::std::option::Option<crate::types::CommitMode>) -> Self {
220 self.commit_mode = input;
221 self
222 }
223 pub fn get_commit_mode(&self) -> &::std::option::Option<crate::types::CommitMode> {
225 &self.commit_mode
226 }
227 pub fn build(self) -> ::std::result::Result<crate::types::FilterDropDownControl, ::aws_smithy_types::error::operation::BuildError> {
233 ::std::result::Result::Ok(crate::types::FilterDropDownControl {
234 filter_control_id: self.filter_control_id.ok_or_else(|| {
235 ::aws_smithy_types::error::operation::BuildError::missing_field(
236 "filter_control_id",
237 "filter_control_id was not specified but it is required when building FilterDropDownControl",
238 )
239 })?,
240 title: self.title.ok_or_else(|| {
241 ::aws_smithy_types::error::operation::BuildError::missing_field(
242 "title",
243 "title was not specified but it is required when building FilterDropDownControl",
244 )
245 })?,
246 source_filter_id: self.source_filter_id.ok_or_else(|| {
247 ::aws_smithy_types::error::operation::BuildError::missing_field(
248 "source_filter_id",
249 "source_filter_id was not specified but it is required when building FilterDropDownControl",
250 )
251 })?,
252 display_options: self.display_options,
253 r#type: self.r#type,
254 selectable_values: self.selectable_values,
255 cascading_control_configuration: self.cascading_control_configuration,
256 commit_mode: self.commit_mode,
257 })
258 }
259}