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>
19#include <aws/core/utils/UUID.h>
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>
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>
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>
112 template<
typename ReportedInc
identStartDateT = Aws::Utils::DateTime>
113 void SetReportedIncidentStartDate(ReportedIncidentStartDateT&& value) { m_reportedIncidentStartDateHasBeenSet =
true; m_reportedIncidentStartDate = std::forward<ReportedIncidentStartDateT>(value); }
114 template<
typename ReportedInc
identStartDateT = Aws::Utils::DateTime>
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>>
129 template<
typename ImpactedAccountsT = Aws::String>
130 CreateCaseRequest&
AddImpactedAccounts(ImpactedAccountsT&& value) { m_impactedAccountsHasBeenSet =
true; m_impactedAccounts.emplace_back(std::forward<ImpactedAccountsT>(value));
return *
this; }
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>>
144 template<
typename WatchersT = Watcher>
145 CreateCaseRequest&
AddWatchers(WatchersT&& value) { m_watchersHasBeenSet =
true; m_watchers.emplace_back(std::forward<WatchersT>(value));
return *
this; }
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>>
160 template<
typename ThreatActorIpAddressesT = ThreatActorIp>
161 CreateCaseRequest&
AddThreatActorIpAddresses(ThreatActorIpAddressesT&& value) { m_threatActorIpAddressesHasBeenSet =
true; m_threatActorIpAddresses.emplace_back(std::forward<ThreatActorIpAddressesT>(value));
return *
this; }
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>>
175 template<
typename ImpactedServicesT = Aws::String>
176 CreateCaseRequest&
AddImpactedServices(ImpactedServicesT&& value) { m_impactedServicesHasBeenSet =
true; m_impactedServices.emplace_back(std::forward<ImpactedServicesT>(value));
return *
this; }
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>>
190 template<
typename ImpactedAwsRegionsT = ImpactedAwsRegion>
191 CreateCaseRequest&
AddImpactedAwsRegions(ImpactedAwsRegionsT&& value) { m_impactedAwsRegionsHasBeenSet =
true; m_impactedAwsRegions.emplace_back(std::forward<ImpactedAwsRegionsT>(value));
return *
this; }
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>>
205 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
207 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
213 bool m_clientTokenHasBeenSet =
true;
216 bool m_resolverTypeHasBeenSet =
false;
219 bool m_titleHasBeenSet =
false;
222 bool m_descriptionHasBeenSet =
false;
225 bool m_engagementTypeHasBeenSet =
false;
228 bool m_reportedIncidentStartDateHasBeenSet =
false;
231 bool m_impactedAccountsHasBeenSet =
false;
234 bool m_watchersHasBeenSet =
false;
237 bool m_threatActorIpAddressesHasBeenSet =
false;
240 bool m_impactedServicesHasBeenSet =
false;
243 bool m_impactedAwsRegionsHasBeenSet =
false;
246 bool m_tagsHasBeenSet =
false;
bool ImpactedAccountsHasBeenSet() const
CreateCaseRequest & WithResolverType(ResolverType value)
const Aws::Vector< ThreatActorIp > & GetThreatActorIpAddresses() const
ResolverType GetResolverType() 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)
bool ImpactedServicesHasBeenSet() const
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
void SetClientToken(ClientTokenT &&value)
AWS_SECURITYIR_API CreateCaseRequest()=default
void SetImpactedAwsRegions(ImpactedAwsRegionsT &&value)
const Aws::String & GetClientToken() const
bool EngagementTypeHasBeenSet() const
CreateCaseRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
void SetDescription(DescriptionT &&value)
bool ThreatActorIpAddressesHasBeenSet() const
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
EngagementType GetEngagementType() const
bool ResolverTypeHasBeenSet() const
bool TitleHasBeenSet() const
bool ImpactedAwsRegionsHasBeenSet() const
void SetTitle(TitleT &&value)
CreateCaseRequest & AddImpactedAwsRegions(ImpactedAwsRegionsT &&value)
CreateCaseRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateCaseRequest & AddImpactedServices(ImpactedServicesT &&value)
bool ReportedIncidentStartDateHasBeenSet() const
void SetResolverType(ResolverType value)
const Aws::Vector< ImpactedAwsRegion > & GetImpactedAwsRegions() const
CreateCaseRequest & WithImpactedServices(ImpactedServicesT &&value)
CreateCaseRequest & WithWatchers(WatchersT &&value)
const Aws::Vector< Aws::String > & GetImpactedServices() const
void SetEngagementType(EngagementType value)
bool DescriptionHasBeenSet() const
void SetReportedIncidentStartDate(ReportedIncidentStartDateT &&value)
bool WatchersHasBeenSet() const
const Aws::String & GetTitle() const
bool ClientTokenHasBeenSet() const
void SetWatchers(WatchersT &&value)
CreateCaseRequest & AddImpactedAccounts(ImpactedAccountsT &&value)
bool TagsHasBeenSet() const
void SetTags(TagsT &&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