AWS SDK for C++

AWS SDK for C++ Version 1.11.750

Loading...
Searching...
No Matches
CreateInvestigationGroupRequest.h
1
6#pragma once
7#include <aws/aiops/AIOpsRequest.h>
8#include <aws/aiops/AIOps_EXPORTS.h>
9#include <aws/aiops/model/CrossAccountConfiguration.h>
10#include <aws/aiops/model/EncryptionConfiguration.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace AIOps {
19namespace Model {
20
24 public:
25 AWS_AIOPS_API CreateInvestigationGroupRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateInvestigationGroup"; }
32
33 AWS_AIOPS_API Aws::String SerializePayload() const override;
34
36
39 inline const Aws::String& GetName() const { return m_name; }
40 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
41 template <typename NameT = Aws::String>
42 void SetName(NameT&& value) {
43 m_nameHasBeenSet = true;
44 m_name = std::forward<NameT>(value);
45 }
46 template <typename NameT = Aws::String>
48 SetName(std::forward<NameT>(value));
49 return *this;
50 }
52
54
63 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
64 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
65 template <typename RoleArnT = Aws::String>
66 void SetRoleArn(RoleArnT&& value) {
67 m_roleArnHasBeenSet = true;
68 m_roleArn = std::forward<RoleArnT>(value);
69 }
70 template <typename RoleArnT = Aws::String>
72 SetRoleArn(std::forward<RoleArnT>(value));
73 return *this;
74 }
76
78
86 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
87 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
88 template <typename EncryptionConfigurationT = EncryptionConfiguration>
89 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) {
90 m_encryptionConfigurationHasBeenSet = true;
91 m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value);
92 }
93 template <typename EncryptionConfigurationT = EncryptionConfiguration>
95 SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value));
96 return *this;
97 }
99
101
108 inline long long GetRetentionInDays() const { return m_retentionInDays; }
109 inline bool RetentionInDaysHasBeenSet() const { return m_retentionInDaysHasBeenSet; }
110 inline void SetRetentionInDays(long long value) {
111 m_retentionInDaysHasBeenSet = true;
112 m_retentionInDays = value;
113 }
115 SetRetentionInDays(value);
116 return *this;
117 }
119
121
130 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
131 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
132 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
133 void SetTags(TagsT&& value) {
134 m_tagsHasBeenSet = true;
135 m_tags = std::forward<TagsT>(value);
136 }
137 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
139 SetTags(std::forward<TagsT>(value));
140 return *this;
141 }
142 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
143 CreateInvestigationGroupRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
144 m_tagsHasBeenSet = true;
145 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
146 return *this;
147 }
149
151
164 inline const Aws::Vector<Aws::String>& GetTagKeyBoundaries() const { return m_tagKeyBoundaries; }
165 inline bool TagKeyBoundariesHasBeenSet() const { return m_tagKeyBoundariesHasBeenSet; }
166 template <typename TagKeyBoundariesT = Aws::Vector<Aws::String>>
167 void SetTagKeyBoundaries(TagKeyBoundariesT&& value) {
168 m_tagKeyBoundariesHasBeenSet = true;
169 m_tagKeyBoundaries = std::forward<TagKeyBoundariesT>(value);
170 }
171 template <typename TagKeyBoundariesT = Aws::Vector<Aws::String>>
173 SetTagKeyBoundaries(std::forward<TagKeyBoundariesT>(value));
174 return *this;
175 }
176 template <typename TagKeyBoundariesT = Aws::String>
178 m_tagKeyBoundariesHasBeenSet = true;
179 m_tagKeyBoundaries.emplace_back(std::forward<TagKeyBoundariesT>(value));
180 return *this;
181 }
183
185
197 return m_chatbotNotificationChannel;
198 }
199 inline bool ChatbotNotificationChannelHasBeenSet() const { return m_chatbotNotificationChannelHasBeenSet; }
200 template <typename ChatbotNotificationChannelT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
201 void SetChatbotNotificationChannel(ChatbotNotificationChannelT&& value) {
202 m_chatbotNotificationChannelHasBeenSet = true;
203 m_chatbotNotificationChannel = std::forward<ChatbotNotificationChannelT>(value);
204 }
205 template <typename ChatbotNotificationChannelT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
207 SetChatbotNotificationChannel(std::forward<ChatbotNotificationChannelT>(value));
208 return *this;
209 }
210 template <typename ChatbotNotificationChannelKeyT = Aws::String, typename ChatbotNotificationChannelValueT = Aws::Vector<Aws::String>>
212 ChatbotNotificationChannelValueT&& value) {
213 m_chatbotNotificationChannelHasBeenSet = true;
214 m_chatbotNotificationChannel.emplace(std::forward<ChatbotNotificationChannelKeyT>(key),
215 std::forward<ChatbotNotificationChannelValueT>(value));
216 return *this;
217 }
219
221
226 inline bool GetIsCloudTrailEventHistoryEnabled() const { return m_isCloudTrailEventHistoryEnabled; }
227 inline bool IsCloudTrailEventHistoryEnabledHasBeenSet() const { return m_isCloudTrailEventHistoryEnabledHasBeenSet; }
228 inline void SetIsCloudTrailEventHistoryEnabled(bool value) {
229 m_isCloudTrailEventHistoryEnabledHasBeenSet = true;
230 m_isCloudTrailEventHistoryEnabled = value;
231 }
234 return *this;
235 }
237
239
243 inline const Aws::Vector<CrossAccountConfiguration>& GetCrossAccountConfigurations() const { return m_crossAccountConfigurations; }
244 inline bool CrossAccountConfigurationsHasBeenSet() const { return m_crossAccountConfigurationsHasBeenSet; }
245 template <typename CrossAccountConfigurationsT = Aws::Vector<CrossAccountConfiguration>>
246 void SetCrossAccountConfigurations(CrossAccountConfigurationsT&& value) {
247 m_crossAccountConfigurationsHasBeenSet = true;
248 m_crossAccountConfigurations = std::forward<CrossAccountConfigurationsT>(value);
249 }
250 template <typename CrossAccountConfigurationsT = Aws::Vector<CrossAccountConfiguration>>
252 SetCrossAccountConfigurations(std::forward<CrossAccountConfigurationsT>(value));
253 return *this;
254 }
255 template <typename CrossAccountConfigurationsT = CrossAccountConfiguration>
257 m_crossAccountConfigurationsHasBeenSet = true;
258 m_crossAccountConfigurations.emplace_back(std::forward<CrossAccountConfigurationsT>(value));
259 return *this;
260 }
262 private:
263 Aws::String m_name;
264
265 Aws::String m_roleArn;
266
267 EncryptionConfiguration m_encryptionConfiguration;
268
269 long long m_retentionInDays{0};
270
272
273 Aws::Vector<Aws::String> m_tagKeyBoundaries;
274
275 Aws::Map<Aws::String, Aws::Vector<Aws::String>> m_chatbotNotificationChannel;
276
277 bool m_isCloudTrailEventHistoryEnabled{false};
278
279 Aws::Vector<CrossAccountConfiguration> m_crossAccountConfigurations;
280 bool m_nameHasBeenSet = false;
281 bool m_roleArnHasBeenSet = false;
282 bool m_encryptionConfigurationHasBeenSet = false;
283 bool m_retentionInDaysHasBeenSet = false;
284 bool m_tagsHasBeenSet = false;
285 bool m_tagKeyBoundariesHasBeenSet = false;
286 bool m_chatbotNotificationChannelHasBeenSet = false;
287 bool m_isCloudTrailEventHistoryEnabledHasBeenSet = false;
288 bool m_crossAccountConfigurationsHasBeenSet = false;
289};
290
291} // namespace Model
292} // namespace AIOps
293} // namespace Aws
const Aws::Vector< Aws::String > & GetTagKeyBoundaries() const
CreateInvestigationGroupRequest & AddTagKeyBoundaries(TagKeyBoundariesT &&value)
CreateInvestigationGroupRequest & WithTagKeyBoundaries(TagKeyBoundariesT &&value)
CreateInvestigationGroupRequest & WithChatbotNotificationChannel(ChatbotNotificationChannelT &&value)
CreateInvestigationGroupRequest & WithRetentionInDays(long long value)
const Aws::Map< Aws::String, Aws::Vector< Aws::String > > & GetChatbotNotificationChannel() const
const Aws::Vector< CrossAccountConfiguration > & GetCrossAccountConfigurations() const
CreateInvestigationGroupRequest & WithName(NameT &&value)
void SetEncryptionConfiguration(EncryptionConfigurationT &&value)
CreateInvestigationGroupRequest & WithIsCloudTrailEventHistoryEnabled(bool value)
CreateInvestigationGroupRequest & AddChatbotNotificationChannel(ChatbotNotificationChannelKeyT &&key, ChatbotNotificationChannelValueT &&value)
const EncryptionConfiguration & GetEncryptionConfiguration() const
void SetChatbotNotificationChannel(ChatbotNotificationChannelT &&value)
CreateInvestigationGroupRequest & WithTags(TagsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateInvestigationGroupRequest & WithCrossAccountConfigurations(CrossAccountConfigurationsT &&value)
CreateInvestigationGroupRequest & WithRoleArn(RoleArnT &&value)
CreateInvestigationGroupRequest & AddCrossAccountConfigurations(CrossAccountConfigurationsT &&value)
void SetCrossAccountConfigurations(CrossAccountConfigurationsT &&value)
AWS_AIOPS_API Aws::String SerializePayload() const override
CreateInvestigationGroupRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateInvestigationGroupRequest & WithEncryptionConfiguration(EncryptionConfigurationT &&value)
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