AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateCaseRequest.h
1
6#pragma once
7#include <aws/security-ir/SecurityIR_EXPORTS.h>
8#include <aws/security-ir/SecurityIRRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/security-ir/model/ResolverType.h>
11#include <aws/security-ir/model/EngagementType.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/security-ir/model/Watcher.h>
16#include <aws/security-ir/model/ThreatActorIp.h>
17#include <aws/security-ir/model/ImpactedAwsRegion.h>
18#include <utility>
19#include <aws/core/utils/UUID.h>
20
21namespace Aws
22{
23namespace SecurityIR
24{
25namespace Model
26{
27
31 {
32 public:
33 AWS_SECURITYIR_API CreateCaseRequest() = default;
34
35 // Service request name is the Operation name which will send this request out,
36 // each operation should has unique request name, so that we can get operation's name from this request.
37 // Note: this is not true for response, multiple operations may have the same response name,
38 // so we can not get operation's name from response.
39 inline virtual const char* GetServiceRequestName() const override { return "CreateCase"; }
40
41 AWS_SECURITYIR_API Aws::String SerializePayload() const override;
42
43
45
48 inline const Aws::String& GetClientToken() const { return m_clientToken; }
49 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
50 template<typename ClientTokenT = Aws::String>
51 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
52 template<typename ClientTokenT = Aws::String>
53 CreateCaseRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
55
57
61 inline ResolverType GetResolverType() const { return m_resolverType; }
62 inline bool ResolverTypeHasBeenSet() const { return m_resolverTypeHasBeenSet; }
63 inline void SetResolverType(ResolverType value) { m_resolverTypeHasBeenSet = true; m_resolverType = value; }
64 inline CreateCaseRequest& WithResolverType(ResolverType value) { SetResolverType(value); return *this;}
66
68
72 inline const Aws::String& GetTitle() const { return m_title; }
73 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
74 template<typename TitleT = Aws::String>
75 void SetTitle(TitleT&& value) { m_titleHasBeenSet = true; m_title = std::forward<TitleT>(value); }
76 template<typename TitleT = Aws::String>
77 CreateCaseRequest& WithTitle(TitleT&& value) { SetTitle(std::forward<TitleT>(value)); return *this;}
79
81
85 inline const Aws::String& GetDescription() const { return m_description; }
86 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
87 template<typename DescriptionT = Aws::String>
88 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
89 template<typename DescriptionT = Aws::String>
90 CreateCaseRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
92
94
99 inline EngagementType GetEngagementType() const { return m_engagementType; }
100 inline bool EngagementTypeHasBeenSet() const { return m_engagementTypeHasBeenSet; }
101 inline void SetEngagementType(EngagementType value) { m_engagementTypeHasBeenSet = true; m_engagementType = value; }
104
106
110 inline const Aws::Utils::DateTime& GetReportedIncidentStartDate() const { return m_reportedIncidentStartDate; }
111 inline bool ReportedIncidentStartDateHasBeenSet() const { return m_reportedIncidentStartDateHasBeenSet; }
112 template<typename ReportedIncidentStartDateT = Aws::Utils::DateTime>
113 void SetReportedIncidentStartDate(ReportedIncidentStartDateT&& value) { m_reportedIncidentStartDateHasBeenSet = true; m_reportedIncidentStartDate = std::forward<ReportedIncidentStartDateT>(value); }
114 template<typename ReportedIncidentStartDateT = Aws::Utils::DateTime>
115 CreateCaseRequest& WithReportedIncidentStartDate(ReportedIncidentStartDateT&& value) { SetReportedIncidentStartDate(std::forward<ReportedIncidentStartDateT>(value)); return *this;}
117
119
123 inline const Aws::Vector<Aws::String>& GetImpactedAccounts() const { return m_impactedAccounts; }
124 inline bool ImpactedAccountsHasBeenSet() const { return m_impactedAccountsHasBeenSet; }
125 template<typename ImpactedAccountsT = Aws::Vector<Aws::String>>
126 void SetImpactedAccounts(ImpactedAccountsT&& value) { m_impactedAccountsHasBeenSet = true; m_impactedAccounts = std::forward<ImpactedAccountsT>(value); }
127 template<typename ImpactedAccountsT = Aws::Vector<Aws::String>>
128 CreateCaseRequest& WithImpactedAccounts(ImpactedAccountsT&& value) { SetImpactedAccounts(std::forward<ImpactedAccountsT>(value)); return *this;}
129 template<typename ImpactedAccountsT = Aws::String>
130 CreateCaseRequest& AddImpactedAccounts(ImpactedAccountsT&& value) { m_impactedAccountsHasBeenSet = true; m_impactedAccounts.emplace_back(std::forward<ImpactedAccountsT>(value)); return *this; }
132
134
138 inline const Aws::Vector<Watcher>& GetWatchers() const { return m_watchers; }
139 inline bool WatchersHasBeenSet() const { return m_watchersHasBeenSet; }
140 template<typename WatchersT = Aws::Vector<Watcher>>
141 void SetWatchers(WatchersT&& value) { m_watchersHasBeenSet = true; m_watchers = std::forward<WatchersT>(value); }
142 template<typename WatchersT = Aws::Vector<Watcher>>
143 CreateCaseRequest& WithWatchers(WatchersT&& value) { SetWatchers(std::forward<WatchersT>(value)); return *this;}
144 template<typename WatchersT = Watcher>
145 CreateCaseRequest& AddWatchers(WatchersT&& value) { m_watchersHasBeenSet = true; m_watchers.emplace_back(std::forward<WatchersT>(value)); return *this; }
147
149
154 inline const Aws::Vector<ThreatActorIp>& GetThreatActorIpAddresses() const { return m_threatActorIpAddresses; }
155 inline bool ThreatActorIpAddressesHasBeenSet() const { return m_threatActorIpAddressesHasBeenSet; }
156 template<typename ThreatActorIpAddressesT = Aws::Vector<ThreatActorIp>>
157 void SetThreatActorIpAddresses(ThreatActorIpAddressesT&& value) { m_threatActorIpAddressesHasBeenSet = true; m_threatActorIpAddresses = std::forward<ThreatActorIpAddressesT>(value); }
158 template<typename ThreatActorIpAddressesT = Aws::Vector<ThreatActorIp>>
159 CreateCaseRequest& WithThreatActorIpAddresses(ThreatActorIpAddressesT&& value) { SetThreatActorIpAddresses(std::forward<ThreatActorIpAddressesT>(value)); return *this;}
160 template<typename ThreatActorIpAddressesT = ThreatActorIp>
161 CreateCaseRequest& AddThreatActorIpAddresses(ThreatActorIpAddressesT&& value) { m_threatActorIpAddressesHasBeenSet = true; m_threatActorIpAddresses.emplace_back(std::forward<ThreatActorIpAddressesT>(value)); return *this; }
163
165
169 inline const Aws::Vector<Aws::String>& GetImpactedServices() const { return m_impactedServices; }
170 inline bool ImpactedServicesHasBeenSet() const { return m_impactedServicesHasBeenSet; }
171 template<typename ImpactedServicesT = Aws::Vector<Aws::String>>
172 void SetImpactedServices(ImpactedServicesT&& value) { m_impactedServicesHasBeenSet = true; m_impactedServices = std::forward<ImpactedServicesT>(value); }
173 template<typename ImpactedServicesT = Aws::Vector<Aws::String>>
174 CreateCaseRequest& WithImpactedServices(ImpactedServicesT&& value) { SetImpactedServices(std::forward<ImpactedServicesT>(value)); return *this;}
175 template<typename ImpactedServicesT = Aws::String>
176 CreateCaseRequest& AddImpactedServices(ImpactedServicesT&& value) { m_impactedServicesHasBeenSet = true; m_impactedServices.emplace_back(std::forward<ImpactedServicesT>(value)); return *this; }
178
180
184 inline const Aws::Vector<ImpactedAwsRegion>& GetImpactedAwsRegions() const { return m_impactedAwsRegions; }
185 inline bool ImpactedAwsRegionsHasBeenSet() const { return m_impactedAwsRegionsHasBeenSet; }
186 template<typename ImpactedAwsRegionsT = Aws::Vector<ImpactedAwsRegion>>
187 void SetImpactedAwsRegions(ImpactedAwsRegionsT&& value) { m_impactedAwsRegionsHasBeenSet = true; m_impactedAwsRegions = std::forward<ImpactedAwsRegionsT>(value); }
188 template<typename ImpactedAwsRegionsT = Aws::Vector<ImpactedAwsRegion>>
189 CreateCaseRequest& WithImpactedAwsRegions(ImpactedAwsRegionsT&& value) { SetImpactedAwsRegions(std::forward<ImpactedAwsRegionsT>(value)); return *this;}
190 template<typename ImpactedAwsRegionsT = ImpactedAwsRegion>
191 CreateCaseRequest& AddImpactedAwsRegions(ImpactedAwsRegionsT&& value) { m_impactedAwsRegionsHasBeenSet = true; m_impactedAwsRegions.emplace_back(std::forward<ImpactedAwsRegionsT>(value)); return *this; }
193
195
199 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
200 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
201 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
202 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
203 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
204 CreateCaseRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
205 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
206 CreateCaseRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
207 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
208 }
210 private:
211
213 bool m_clientTokenHasBeenSet = true;
214
215 ResolverType m_resolverType{ResolverType::NOT_SET};
216 bool m_resolverTypeHasBeenSet = false;
217
218 Aws::String m_title;
219 bool m_titleHasBeenSet = false;
220
221 Aws::String m_description;
222 bool m_descriptionHasBeenSet = false;
223
224 EngagementType m_engagementType{EngagementType::NOT_SET};
225 bool m_engagementTypeHasBeenSet = false;
226
227 Aws::Utils::DateTime m_reportedIncidentStartDate{};
228 bool m_reportedIncidentStartDateHasBeenSet = false;
229
230 Aws::Vector<Aws::String> m_impactedAccounts;
231 bool m_impactedAccountsHasBeenSet = false;
232
233 Aws::Vector<Watcher> m_watchers;
234 bool m_watchersHasBeenSet = false;
235
236 Aws::Vector<ThreatActorIp> m_threatActorIpAddresses;
237 bool m_threatActorIpAddressesHasBeenSet = false;
238
239 Aws::Vector<Aws::String> m_impactedServices;
240 bool m_impactedServicesHasBeenSet = false;
241
242 Aws::Vector<ImpactedAwsRegion> m_impactedAwsRegions;
243 bool m_impactedAwsRegionsHasBeenSet = false;
244
246 bool m_tagsHasBeenSet = false;
247 };
248
249} // namespace Model
250} // namespace SecurityIR
251} // namespace Aws
CreateCaseRequest & WithResolverType(ResolverType value)
const Aws::Vector< ThreatActorIp > & GetThreatActorIpAddresses() const
CreateCaseRequest & AddThreatActorIpAddresses(ThreatActorIpAddressesT &&value)
CreateCaseRequest & WithImpactedAccounts(ImpactedAccountsT &&value)
void SetImpactedServices(ImpactedServicesT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Vector< Aws::String > & GetImpactedAccounts() const
CreateCaseRequest & WithTitle(TitleT &&value)
CreateCaseRequest & WithImpactedAwsRegions(ImpactedAwsRegionsT &&value)
CreateCaseRequest & WithEngagementType(EngagementType value)
CreateCaseRequest & WithThreatActorIpAddresses(ThreatActorIpAddressesT &&value)
const Aws::Vector< Watcher > & GetWatchers() const
CreateCaseRequest & AddWatchers(WatchersT &&value)
CreateCaseRequest & WithClientToken(ClientTokenT &&value)
const Aws::String & GetDescription() const
AWS_SECURITYIR_API CreateCaseRequest()=default
void SetImpactedAwsRegions(ImpactedAwsRegionsT &&value)
const Aws::String & GetClientToken() const
CreateCaseRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
CreateCaseRequest & WithReportedIncidentStartDate(ReportedIncidentStartDateT &&value)
const Aws::Utils::DateTime & GetReportedIncidentStartDate() const
void SetThreatActorIpAddresses(ThreatActorIpAddressesT &&value)
CreateCaseRequest & WithDescription(DescriptionT &&value)
void SetImpactedAccounts(ImpactedAccountsT &&value)
AWS_SECURITYIR_API Aws::String SerializePayload() const override
CreateCaseRequest & AddImpactedAwsRegions(ImpactedAwsRegionsT &&value)
CreateCaseRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateCaseRequest & AddImpactedServices(ImpactedServicesT &&value)
const Aws::Vector< ImpactedAwsRegion > & GetImpactedAwsRegions() const
CreateCaseRequest & WithImpactedServices(ImpactedServicesT &&value)
CreateCaseRequest & WithWatchers(WatchersT &&value)
const Aws::Vector< Aws::String > & GetImpactedServices() const
void SetReportedIncidentStartDate(ReportedIncidentStartDateT &&value)
CreateCaseRequest & AddImpactedAccounts(ImpactedAccountsT &&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