AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateInvestigationGroupRequest.h
1
6#pragma once
7#include <aws/aiops/AIOps_EXPORTS.h>
8#include <aws/aiops/AIOpsRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/aiops/model/EncryptionConfiguration.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/aiops/model/CrossAccountConfiguration.h>
14#include <utility>
15
16namespace Aws
17{
18namespace AIOps
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_AIOPS_API CreateInvestigationGroupRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateInvestigationGroup"; }
35
36 AWS_AIOPS_API Aws::String SerializePayload() const override;
37
38
40
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template<typename NameT = Aws::String>
46 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
47 template<typename NameT = Aws::String>
48 CreateInvestigationGroupRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
50
52
60 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
61 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
62 template<typename RoleArnT = Aws::String>
63 void SetRoleArn(RoleArnT&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::forward<RoleArnT>(value); }
64 template<typename RoleArnT = Aws::String>
65 CreateInvestigationGroupRequest& WithRoleArn(RoleArnT&& value) { SetRoleArn(std::forward<RoleArnT>(value)); return *this;}
67
69
77 inline const EncryptionConfiguration& GetEncryptionConfiguration() const { return m_encryptionConfiguration; }
78 inline bool EncryptionConfigurationHasBeenSet() const { return m_encryptionConfigurationHasBeenSet; }
79 template<typename EncryptionConfigurationT = EncryptionConfiguration>
80 void SetEncryptionConfiguration(EncryptionConfigurationT&& value) { m_encryptionConfigurationHasBeenSet = true; m_encryptionConfiguration = std::forward<EncryptionConfigurationT>(value); }
81 template<typename EncryptionConfigurationT = EncryptionConfiguration>
82 CreateInvestigationGroupRequest& WithEncryptionConfiguration(EncryptionConfigurationT&& value) { SetEncryptionConfiguration(std::forward<EncryptionConfigurationT>(value)); return *this;}
84
86
93 inline long long GetRetentionInDays() const { return m_retentionInDays; }
94 inline bool RetentionInDaysHasBeenSet() const { return m_retentionInDaysHasBeenSet; }
95 inline void SetRetentionInDays(long long value) { m_retentionInDaysHasBeenSet = true; m_retentionInDays = value; }
96 inline CreateInvestigationGroupRequest& WithRetentionInDays(long long value) { SetRetentionInDays(value); return *this;}
98
100
109 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
110 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
111 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
112 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
113 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
114 CreateInvestigationGroupRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
115 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
116 CreateInvestigationGroupRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
117 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
118 }
120
122
134 inline const Aws::Vector<Aws::String>& GetTagKeyBoundaries() const { return m_tagKeyBoundaries; }
135 inline bool TagKeyBoundariesHasBeenSet() const { return m_tagKeyBoundariesHasBeenSet; }
136 template<typename TagKeyBoundariesT = Aws::Vector<Aws::String>>
137 void SetTagKeyBoundaries(TagKeyBoundariesT&& value) { m_tagKeyBoundariesHasBeenSet = true; m_tagKeyBoundaries = std::forward<TagKeyBoundariesT>(value); }
138 template<typename TagKeyBoundariesT = Aws::Vector<Aws::String>>
139 CreateInvestigationGroupRequest& WithTagKeyBoundaries(TagKeyBoundariesT&& value) { SetTagKeyBoundaries(std::forward<TagKeyBoundariesT>(value)); return *this;}
140 template<typename TagKeyBoundariesT = Aws::String>
141 CreateInvestigationGroupRequest& AddTagKeyBoundaries(TagKeyBoundariesT&& value) { m_tagKeyBoundariesHasBeenSet = true; m_tagKeyBoundaries.emplace_back(std::forward<TagKeyBoundariesT>(value)); return *this; }
143
145
157 inline const Aws::Map<Aws::String, Aws::Vector<Aws::String>>& GetChatbotNotificationChannel() const { return m_chatbotNotificationChannel; }
158 inline bool ChatbotNotificationChannelHasBeenSet() const { return m_chatbotNotificationChannelHasBeenSet; }
159 template<typename ChatbotNotificationChannelT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
160 void SetChatbotNotificationChannel(ChatbotNotificationChannelT&& value) { m_chatbotNotificationChannelHasBeenSet = true; m_chatbotNotificationChannel = std::forward<ChatbotNotificationChannelT>(value); }
161 template<typename ChatbotNotificationChannelT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
162 CreateInvestigationGroupRequest& WithChatbotNotificationChannel(ChatbotNotificationChannelT&& value) { SetChatbotNotificationChannel(std::forward<ChatbotNotificationChannelT>(value)); return *this;}
163 template<typename ChatbotNotificationChannelKeyT = Aws::String, typename ChatbotNotificationChannelValueT = Aws::Vector<Aws::String>>
164 CreateInvestigationGroupRequest& AddChatbotNotificationChannel(ChatbotNotificationChannelKeyT&& key, ChatbotNotificationChannelValueT&& value) {
165 m_chatbotNotificationChannelHasBeenSet = true; m_chatbotNotificationChannel.emplace(std::forward<ChatbotNotificationChannelKeyT>(key), std::forward<ChatbotNotificationChannelValueT>(value)); return *this;
166 }
168
170
175 inline bool GetIsCloudTrailEventHistoryEnabled() const { return m_isCloudTrailEventHistoryEnabled; }
176 inline bool IsCloudTrailEventHistoryEnabledHasBeenSet() const { return m_isCloudTrailEventHistoryEnabledHasBeenSet; }
177 inline void SetIsCloudTrailEventHistoryEnabled(bool value) { m_isCloudTrailEventHistoryEnabledHasBeenSet = true; m_isCloudTrailEventHistoryEnabled = value; }
180
182
186 inline const Aws::Vector<CrossAccountConfiguration>& GetCrossAccountConfigurations() const { return m_crossAccountConfigurations; }
187 inline bool CrossAccountConfigurationsHasBeenSet() const { return m_crossAccountConfigurationsHasBeenSet; }
188 template<typename CrossAccountConfigurationsT = Aws::Vector<CrossAccountConfiguration>>
189 void SetCrossAccountConfigurations(CrossAccountConfigurationsT&& value) { m_crossAccountConfigurationsHasBeenSet = true; m_crossAccountConfigurations = std::forward<CrossAccountConfigurationsT>(value); }
190 template<typename CrossAccountConfigurationsT = Aws::Vector<CrossAccountConfiguration>>
191 CreateInvestigationGroupRequest& WithCrossAccountConfigurations(CrossAccountConfigurationsT&& value) { SetCrossAccountConfigurations(std::forward<CrossAccountConfigurationsT>(value)); return *this;}
192 template<typename CrossAccountConfigurationsT = CrossAccountConfiguration>
193 CreateInvestigationGroupRequest& AddCrossAccountConfigurations(CrossAccountConfigurationsT&& value) { m_crossAccountConfigurationsHasBeenSet = true; m_crossAccountConfigurations.emplace_back(std::forward<CrossAccountConfigurationsT>(value)); return *this; }
195 private:
196
197 Aws::String m_name;
198 bool m_nameHasBeenSet = false;
199
200 Aws::String m_roleArn;
201 bool m_roleArnHasBeenSet = false;
202
203 EncryptionConfiguration m_encryptionConfiguration;
204 bool m_encryptionConfigurationHasBeenSet = false;
205
206 long long m_retentionInDays{0};
207 bool m_retentionInDaysHasBeenSet = false;
208
210 bool m_tagsHasBeenSet = false;
211
212 Aws::Vector<Aws::String> m_tagKeyBoundaries;
213 bool m_tagKeyBoundariesHasBeenSet = false;
214
215 Aws::Map<Aws::String, Aws::Vector<Aws::String>> m_chatbotNotificationChannel;
216 bool m_chatbotNotificationChannelHasBeenSet = false;
217
218 bool m_isCloudTrailEventHistoryEnabled{false};
219 bool m_isCloudTrailEventHistoryEnabledHasBeenSet = false;
220
221 Aws::Vector<CrossAccountConfiguration> m_crossAccountConfigurations;
222 bool m_crossAccountConfigurationsHasBeenSet = false;
223 };
224
225} // namespace Model
226} // namespace AIOps
227} // 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