AWS SDK for C++

AWS SDK for C++ Version 1.11.687

Loading...
Searching...
No Matches
CreateAnalyzerRequest.h
1
6#pragma once
7#include <aws/accessanalyzer/AccessAnalyzerRequest.h>
8#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
9#include <aws/accessanalyzer/model/AnalyzerConfiguration.h>
10#include <aws/accessanalyzer/model/InlineArchiveRule.h>
11#include <aws/accessanalyzer/model/Type.h>
12#include <aws/core/utils/UUID.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16
17#include <utility>
18
19namespace Aws {
20namespace AccessAnalyzer {
21namespace Model {
22
29 public:
30 AWS_ACCESSANALYZER_API CreateAnalyzerRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateAnalyzer"; }
37
38 AWS_ACCESSANALYZER_API Aws::String SerializePayload() const override;
39
41
44 inline const Aws::String& GetAnalyzerName() const { return m_analyzerName; }
45 inline bool AnalyzerNameHasBeenSet() const { return m_analyzerNameHasBeenSet; }
46 template <typename AnalyzerNameT = Aws::String>
47 void SetAnalyzerName(AnalyzerNameT&& value) {
48 m_analyzerNameHasBeenSet = true;
49 m_analyzerName = std::forward<AnalyzerNameT>(value);
50 }
51 template <typename AnalyzerNameT = Aws::String>
52 CreateAnalyzerRequest& WithAnalyzerName(AnalyzerNameT&& value) {
53 SetAnalyzerName(std::forward<AnalyzerNameT>(value));
54 return *this;
55 }
57
59
63 inline Type GetType() const { return m_type; }
64 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
65 inline void SetType(Type value) {
66 m_typeHasBeenSet = true;
67 m_type = value;
68 }
70 SetType(value);
71 return *this;
72 }
74
76
81 inline const Aws::Vector<InlineArchiveRule>& GetArchiveRules() const { return m_archiveRules; }
82 inline bool ArchiveRulesHasBeenSet() const { return m_archiveRulesHasBeenSet; }
83 template <typename ArchiveRulesT = Aws::Vector<InlineArchiveRule>>
84 void SetArchiveRules(ArchiveRulesT&& value) {
85 m_archiveRulesHasBeenSet = true;
86 m_archiveRules = std::forward<ArchiveRulesT>(value);
87 }
88 template <typename ArchiveRulesT = Aws::Vector<InlineArchiveRule>>
89 CreateAnalyzerRequest& WithArchiveRules(ArchiveRulesT&& value) {
90 SetArchiveRules(std::forward<ArchiveRulesT>(value));
91 return *this;
92 }
93 template <typename ArchiveRulesT = InlineArchiveRule>
94 CreateAnalyzerRequest& AddArchiveRules(ArchiveRulesT&& value) {
95 m_archiveRulesHasBeenSet = true;
96 m_archiveRules.emplace_back(std::forward<ArchiveRulesT>(value));
97 return *this;
98 }
100
102
110 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
111 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
112 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
113 void SetTags(TagsT&& value) {
114 m_tagsHasBeenSet = true;
115 m_tags = std::forward<TagsT>(value);
116 }
117 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
119 SetTags(std::forward<TagsT>(value));
120 return *this;
121 }
122 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
123 CreateAnalyzerRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
124 m_tagsHasBeenSet = true;
125 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
126 return *this;
127 }
129
131
134 inline const Aws::String& GetClientToken() const { return m_clientToken; }
135 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
136 template <typename ClientTokenT = Aws::String>
137 void SetClientToken(ClientTokenT&& value) {
138 m_clientTokenHasBeenSet = true;
139 m_clientToken = std::forward<ClientTokenT>(value);
140 }
141 template <typename ClientTokenT = Aws::String>
142 CreateAnalyzerRequest& WithClientToken(ClientTokenT&& value) {
143 SetClientToken(std::forward<ClientTokenT>(value));
144 return *this;
145 }
147
149
155 inline const AnalyzerConfiguration& GetConfiguration() const { return m_configuration; }
156 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
157 template <typename ConfigurationT = AnalyzerConfiguration>
158 void SetConfiguration(ConfigurationT&& value) {
159 m_configurationHasBeenSet = true;
160 m_configuration = std::forward<ConfigurationT>(value);
161 }
162 template <typename ConfigurationT = AnalyzerConfiguration>
163 CreateAnalyzerRequest& WithConfiguration(ConfigurationT&& value) {
164 SetConfiguration(std::forward<ConfigurationT>(value));
165 return *this;
166 }
168 private:
169 Aws::String m_analyzerName;
170 bool m_analyzerNameHasBeenSet = false;
171
172 Type m_type{Type::NOT_SET};
173 bool m_typeHasBeenSet = false;
174
175 Aws::Vector<InlineArchiveRule> m_archiveRules;
176 bool m_archiveRulesHasBeenSet = false;
177
179 bool m_tagsHasBeenSet = false;
180
182 bool m_clientTokenHasBeenSet = true;
183
184 AnalyzerConfiguration m_configuration;
185 bool m_configurationHasBeenSet = false;
186};
187
188} // namespace Model
189} // namespace AccessAnalyzer
190} // namespace Aws
const Aws::Vector< InlineArchiveRule > & GetArchiveRules() const
virtual const char * GetServiceRequestName() const override
CreateAnalyzerRequest & WithArchiveRules(ArchiveRulesT &&value)
CreateAnalyzerRequest & WithAnalyzerName(AnalyzerNameT &&value)
AWS_ACCESSANALYZER_API Aws::String SerializePayload() const override
CreateAnalyzerRequest & WithTags(TagsT &&value)
CreateAnalyzerRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const AnalyzerConfiguration & GetConfiguration() const
CreateAnalyzerRequest & AddArchiveRules(ArchiveRulesT &&value)
AWS_ACCESSANALYZER_API CreateAnalyzerRequest()=default
CreateAnalyzerRequest & WithConfiguration(ConfigurationT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateAnalyzerRequest & WithClientToken(ClientTokenT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector