7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/iot/IoTRequest.h>
11#include <aws/iot/IoT_EXPORTS.h>
12#include <aws/iot/model/AlertTarget.h>
13#include <aws/iot/model/AlertTargetType.h>
14#include <aws/iot/model/Behavior.h>
15#include <aws/iot/model/MetricToRetain.h>
16#include <aws/iot/model/MetricsExportConfig.h>
17#include <aws/iot/model/Tag.h>
45 template <
typename SecurityProfileNameT = Aws::String>
47 m_securityProfileNameHasBeenSet =
true;
48 m_securityProfileName = std::forward<SecurityProfileNameT>(value);
50 template <
typename SecurityProfileNameT = Aws::String>
63 template <
typename SecurityProfileDescriptionT = Aws::String>
65 m_securityProfileDescriptionHasBeenSet =
true;
66 m_securityProfileDescription = std::forward<SecurityProfileDescriptionT>(value);
68 template <
typename SecurityProfileDescriptionT = Aws::String>
82 template <
typename BehaviorsT = Aws::Vector<Behavior>>
84 m_behaviorsHasBeenSet =
true;
85 m_behaviors = std::forward<BehaviorsT>(value);
87 template <
typename BehaviorsT = Aws::Vector<Behavior>>
92 template <
typename BehaviorsT = Behavior>
94 m_behaviorsHasBeenSet =
true;
95 m_behaviors.emplace_back(std::forward<BehaviorsT>(value));
108 template <
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
110 m_alertTargetsHasBeenSet =
true;
111 m_alertTargets = std::forward<AlertTargetsT>(value);
113 template <
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
119 m_alertTargetsHasBeenSet =
true;
120 m_alertTargets.emplace(key, value);
134 template <
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
136 m_additionalMetricsToRetainV2HasBeenSet =
true;
137 m_additionalMetricsToRetainV2 = std::forward<AdditionalMetricsToRetainV2T>(value);
139 template <
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
144 template <
typename AdditionalMetricsToRetainV2T = MetricToRetain>
146 m_additionalMetricsToRetainV2HasBeenSet =
true;
147 m_additionalMetricsToRetainV2.emplace_back(std::forward<AdditionalMetricsToRetainV2T>(value));
158 template <
typename TagsT = Aws::Vector<Tag>>
160 m_tagsHasBeenSet =
true;
161 m_tags = std::forward<TagsT>(value);
163 template <
typename TagsT = Aws::Vector<Tag>>
165 SetTags(std::forward<TagsT>(value));
168 template <
typename TagsT = Tag>
170 m_tagsHasBeenSet =
true;
171 m_tags.emplace_back(std::forward<TagsT>(value));
182 template <
typename MetricsExportConfigT = MetricsExportConfig>
184 m_metricsExportConfigHasBeenSet =
true;
185 m_metricsExportConfig = std::forward<MetricsExportConfigT>(value);
187 template <
typename MetricsExportConfigT = MetricsExportConfig>
195 bool m_securityProfileNameHasBeenSet =
false;
198 bool m_securityProfileDescriptionHasBeenSet =
false;
201 bool m_behaviorsHasBeenSet =
false;
204 bool m_alertTargetsHasBeenSet =
false;
207 bool m_additionalMetricsToRetainV2HasBeenSet =
false;
210 bool m_tagsHasBeenSet =
false;
213 bool m_metricsExportConfigHasBeenSet =
false;
CreateSecurityProfileRequest & WithAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
CreateSecurityProfileRequest & WithBehaviors(BehaviorsT &&value)
void SetBehaviors(BehaviorsT &&value)
CreateSecurityProfileRequest & WithMetricsExportConfig(MetricsExportConfigT &&value)
CreateSecurityProfileRequest & AddAlertTargets(AlertTargetType key, AlertTarget value)
AWS_IOT_API Aws::String SerializePayload() const override
void SetAlertTargets(AlertTargetsT &&value)
CreateSecurityProfileRequest & AddBehaviors(BehaviorsT &&value)
CreateSecurityProfileRequest & WithTags(TagsT &&value)
bool MetricsExportConfigHasBeenSet() const
void SetMetricsExportConfig(MetricsExportConfigT &&value)
AWS_IOT_API CreateSecurityProfileRequest()=default
CreateSecurityProfileRequest & WithSecurityProfileDescription(SecurityProfileDescriptionT &&value)
CreateSecurityProfileRequest & AddTags(TagsT &&value)
bool SecurityProfileDescriptionHasBeenSet() const
bool BehaviorsHasBeenSet() const
const MetricsExportConfig & GetMetricsExportConfig() const
const Aws::Vector< Behavior > & GetBehaviors() const
void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
const Aws::String & GetSecurityProfileName() const
CreateSecurityProfileRequest & WithSecurityProfileName(SecurityProfileNameT &&value)
void SetTags(TagsT &&value)
bool TagsHasBeenSet() const
virtual const char * GetServiceRequestName() const override
const Aws::Vector< MetricToRetain > & GetAdditionalMetricsToRetainV2() const
void SetSecurityProfileName(SecurityProfileNameT &&value)
CreateSecurityProfileRequest & AddAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
const Aws::String & GetSecurityProfileDescription() const
const Aws::Vector< Tag > & GetTags() const
CreateSecurityProfileRequest & WithAlertTargets(AlertTargetsT &&value)
bool SecurityProfileNameHasBeenSet() const
const Aws::Map< AlertTargetType, AlertTarget > & GetAlertTargets() const
void SetSecurityProfileDescription(SecurityProfileDescriptionT &&value)
bool AdditionalMetricsToRetainV2HasBeenSet() const
bool AlertTargetsHasBeenSet() const
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