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
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct CreateAccountCustomizationInput {
/// <p>The ID for the Amazon Web Services account that you want to customize Quick Sight for.</p>
pub aws_account_id: ::std::option::Option<::std::string::String>,
/// <p>The Quick Sight namespace that you want to add customizations to.</p>
pub namespace: ::std::option::Option<::std::string::String>,
/// <p>The Quick Sight customizations you're adding. You can add these to an Amazon Web Services account and a QuickSight namespace.</p>
/// <p>For example, you can add a default theme by setting <code>AccountCustomization</code> to the midnight theme: <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight::aws:theme/MIDNIGHT" }</code>. Or, you can add a custom theme by specifying <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639" }</code>.</p>
pub account_customization: ::std::option::Option<crate::types::AccountCustomization>,
/// <p>A list of the tags that you want to attach to this resource.</p>
pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
}
impl CreateAccountCustomizationInput {
/// <p>The ID for the Amazon Web Services account that you want to customize Quick Sight for.</p>
pub fn aws_account_id(&self) -> ::std::option::Option<&str> {
self.aws_account_id.as_deref()
}
/// <p>The Quick Sight namespace that you want to add customizations to.</p>
pub fn namespace(&self) -> ::std::option::Option<&str> {
self.namespace.as_deref()
}
/// <p>The Quick Sight customizations you're adding. You can add these to an Amazon Web Services account and a QuickSight namespace.</p>
/// <p>For example, you can add a default theme by setting <code>AccountCustomization</code> to the midnight theme: <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight::aws:theme/MIDNIGHT" }</code>. Or, you can add a custom theme by specifying <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639" }</code>.</p>
pub fn account_customization(&self) -> ::std::option::Option<&crate::types::AccountCustomization> {
self.account_customization.as_ref()
}
/// <p>A list of the tags that you want to attach to this resource.</p>
///
/// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tags.is_none()`.
pub fn tags(&self) -> &[crate::types::Tag] {
self.tags.as_deref().unwrap_or_default()
}
}
impl CreateAccountCustomizationInput {
/// Creates a new builder-style object to manufacture [`CreateAccountCustomizationInput`](crate::operation::create_account_customization::CreateAccountCustomizationInput).
pub fn builder() -> crate::operation::create_account_customization::builders::CreateAccountCustomizationInputBuilder {
crate::operation::create_account_customization::builders::CreateAccountCustomizationInputBuilder::default()
}
}
/// A builder for [`CreateAccountCustomizationInput`](crate::operation::create_account_customization::CreateAccountCustomizationInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct CreateAccountCustomizationInputBuilder {
pub(crate) aws_account_id: ::std::option::Option<::std::string::String>,
pub(crate) namespace: ::std::option::Option<::std::string::String>,
pub(crate) account_customization: ::std::option::Option<crate::types::AccountCustomization>,
pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
}
impl CreateAccountCustomizationInputBuilder {
/// <p>The ID for the Amazon Web Services account that you want to customize Quick Sight for.</p>
/// This field is required.
pub fn aws_account_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.aws_account_id = ::std::option::Option::Some(input.into());
self
}
/// <p>The ID for the Amazon Web Services account that you want to customize Quick Sight for.</p>
pub fn set_aws_account_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.aws_account_id = input;
self
}
/// <p>The ID for the Amazon Web Services account that you want to customize Quick Sight for.</p>
pub fn get_aws_account_id(&self) -> &::std::option::Option<::std::string::String> {
&self.aws_account_id
}
/// <p>The Quick Sight namespace that you want to add customizations to.</p>
pub fn namespace(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.namespace = ::std::option::Option::Some(input.into());
self
}
/// <p>The Quick Sight namespace that you want to add customizations to.</p>
pub fn set_namespace(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.namespace = input;
self
}
/// <p>The Quick Sight namespace that you want to add customizations to.</p>
pub fn get_namespace(&self) -> &::std::option::Option<::std::string::String> {
&self.namespace
}
/// <p>The Quick Sight customizations you're adding. You can add these to an Amazon Web Services account and a QuickSight namespace.</p>
/// <p>For example, you can add a default theme by setting <code>AccountCustomization</code> to the midnight theme: <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight::aws:theme/MIDNIGHT" }</code>. Or, you can add a custom theme by specifying <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639" }</code>.</p>
/// This field is required.
pub fn account_customization(mut self, input: crate::types::AccountCustomization) -> Self {
self.account_customization = ::std::option::Option::Some(input);
self
}
/// <p>The Quick Sight customizations you're adding. You can add these to an Amazon Web Services account and a QuickSight namespace.</p>
/// <p>For example, you can add a default theme by setting <code>AccountCustomization</code> to the midnight theme: <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight::aws:theme/MIDNIGHT" }</code>. Or, you can add a custom theme by specifying <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639" }</code>.</p>
pub fn set_account_customization(mut self, input: ::std::option::Option<crate::types::AccountCustomization>) -> Self {
self.account_customization = input;
self
}
/// <p>The Quick Sight customizations you're adding. You can add these to an Amazon Web Services account and a QuickSight namespace.</p>
/// <p>For example, you can add a default theme by setting <code>AccountCustomization</code> to the midnight theme: <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight::aws:theme/MIDNIGHT" }</code>. Or, you can add a custom theme by specifying <code>"AccountCustomization": { "DefaultTheme": "arn:aws:quicksight:us-west-2:111122223333:theme/bdb844d0-0fe9-4d9d-b520-0fe602d93639" }</code>.</p>
pub fn get_account_customization(&self) -> &::std::option::Option<crate::types::AccountCustomization> {
&self.account_customization
}
/// Appends an item to `tags`.
///
/// To override the contents of this collection use [`set_tags`](Self::set_tags).
///
/// <p>A list of the tags that you want to attach to this resource.</p>
pub fn tags(mut self, input: crate::types::Tag) -> Self {
let mut v = self.tags.unwrap_or_default();
v.push(input);
self.tags = ::std::option::Option::Some(v);
self
}
/// <p>A list of the tags that you want to attach to this resource.</p>
pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
self.tags = input;
self
}
/// <p>A list of the tags that you want to attach to this resource.</p>
pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
&self.tags
}
/// Consumes the builder and constructs a [`CreateAccountCustomizationInput`](crate::operation::create_account_customization::CreateAccountCustomizationInput).
pub fn build(
self,
) -> ::std::result::Result<
crate::operation::create_account_customization::CreateAccountCustomizationInput,
::aws_smithy_types::error::operation::BuildError,
> {
::std::result::Result::Ok(crate::operation::create_account_customization::CreateAccountCustomizationInput {
aws_account_id: self.aws_account_id,
namespace: self.namespace,
account_customization: self.account_customization,
tags: self.tags,
})
}
}