7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/IoTRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/iot/model/MetricsExportConfig.h>
13#include <aws/iot/model/Behavior.h>
14#include <aws/iot/model/AlertTargetType.h>
15#include <aws/iot/model/AlertTarget.h>
16#include <aws/iot/model/MetricToRetain.h>
54 template<
typename SecurityProfileNameT = Aws::String>
55 void SetSecurityProfileName(SecurityProfileNameT&& value) { m_securityProfileNameHasBeenSet =
true; m_securityProfileName = std::forward<SecurityProfileNameT>(value); }
56 template<
typename SecurityProfileNameT = Aws::String>
66 template<
typename SecurityProfileDescriptionT = Aws::String>
67 void SetSecurityProfileDescription(SecurityProfileDescriptionT&& value) { m_securityProfileDescriptionHasBeenSet =
true; m_securityProfileDescription = std::forward<SecurityProfileDescriptionT>(value); }
68 template<
typename SecurityProfileDescriptionT = Aws::String>
79 template<
typename BehaviorsT = Aws::Vector<Behavior>>
80 void SetBehaviors(BehaviorsT&& value) { m_behaviorsHasBeenSet =
true; m_behaviors = std::forward<BehaviorsT>(value); }
81 template<
typename BehaviorsT = Aws::Vector<Behavior>>
83 template<
typename BehaviorsT = Behavior>
93 template<
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
94 void SetAlertTargets(AlertTargetsT&& value) { m_alertTargetsHasBeenSet =
true; m_alertTargets = std::forward<AlertTargetsT>(value); }
95 template<
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
98 m_alertTargetsHasBeenSet =
true; m_alertTargets.emplace(key, value);
return *
this;
111 template<
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
112 void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) { m_additionalMetricsToRetainV2HasBeenSet =
true; m_additionalMetricsToRetainV2 = std::forward<AdditionalMetricsToRetainV2T>(value); }
113 template<
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
115 template<
typename AdditionalMetricsToRetainV2T = MetricToRetain>
127 inline void SetDeleteBehaviors(
bool value) { m_deleteBehaviorsHasBeenSet =
true; m_deleteBehaviors = value; }
139 inline void SetDeleteAlertTargets(
bool value) { m_deleteAlertTargetsHasBeenSet =
true; m_deleteAlertTargets = value; }
164 inline void SetExpectedVersion(
long long value) { m_expectedVersionHasBeenSet =
true; m_expectedVersion = value; }
174 template<
typename MetricsExportConfigT = MetricsExportConfig>
175 void SetMetricsExportConfig(MetricsExportConfigT&& value) { m_metricsExportConfigHasBeenSet =
true; m_metricsExportConfig = std::forward<MetricsExportConfigT>(value); }
176 template<
typename MetricsExportConfigT = MetricsExportConfig>
192 bool m_securityProfileNameHasBeenSet =
false;
195 bool m_securityProfileDescriptionHasBeenSet =
false;
198 bool m_behaviorsHasBeenSet =
false;
201 bool m_alertTargetsHasBeenSet =
false;
204 bool m_additionalMetricsToRetainV2HasBeenSet =
false;
206 bool m_deleteBehaviors{
false};
207 bool m_deleteBehaviorsHasBeenSet =
false;
209 bool m_deleteAlertTargets{
false};
210 bool m_deleteAlertTargetsHasBeenSet =
false;
212 bool m_deleteAdditionalMetricsToRetain{
false};
213 bool m_deleteAdditionalMetricsToRetainHasBeenSet =
false;
215 long long m_expectedVersion{0};
216 bool m_expectedVersionHasBeenSet =
false;
218 MetricsExportConfig m_metricsExportConfig;
219 bool m_metricsExportConfigHasBeenSet =
false;
221 bool m_deleteMetricsExportConfig{
false};
222 bool m_deleteMetricsExportConfigHasBeenSet =
false;
bool ExpectedVersionHasBeenSet() const
UpdateSecurityProfileRequest & WithSecurityProfileName(SecurityProfileNameT &&value)
UpdateSecurityProfileRequest & WithAlertTargets(AlertTargetsT &&value)
UpdateSecurityProfileRequest & WithDeleteAlertTargets(bool value)
virtual const char * GetServiceRequestName() const override
bool MetricsExportConfigHasBeenSet() const
const Aws::Vector< Behavior > & GetBehaviors() const
AWS_IOT_API UpdateSecurityProfileRequest()=default
bool SecurityProfileDescriptionHasBeenSet() const
void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
UpdateSecurityProfileRequest & WithBehaviors(BehaviorsT &&value)
void SetDeleteBehaviors(bool value)
bool DeleteAlertTargetsHasBeenSet() const
UpdateSecurityProfileRequest & AddAlertTargets(AlertTargetType key, AlertTarget value)
UpdateSecurityProfileRequest & WithDeleteAdditionalMetricsToRetain(bool value)
const Aws::Map< AlertTargetType, AlertTarget > & GetAlertTargets() const
bool DeleteMetricsExportConfigHasBeenSet() const
void SetDeleteAdditionalMetricsToRetain(bool value)
void SetDeleteMetricsExportConfig(bool value)
void SetDeleteAlertTargets(bool value)
bool GetDeleteBehaviors() const
bool GetDeleteMetricsExportConfig() const
bool DeleteAdditionalMetricsToRetainHasBeenSet() const
const Aws::String & GetSecurityProfileName() const
AWS_IOT_API Aws::String SerializePayload() const override
UpdateSecurityProfileRequest & AddBehaviors(BehaviorsT &&value)
bool GetDeleteAlertTargets() const
UpdateSecurityProfileRequest & WithDeleteMetricsExportConfig(bool value)
UpdateSecurityProfileRequest & AddAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
bool AlertTargetsHasBeenSet() const
long long GetExpectedVersion() const
void SetBehaviors(BehaviorsT &&value)
const MetricsExportConfig & GetMetricsExportConfig() const
bool DeleteBehaviorsHasBeenSet() const
bool SecurityProfileNameHasBeenSet() const
UpdateSecurityProfileRequest & WithAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
void SetMetricsExportConfig(MetricsExportConfigT &&value)
bool AdditionalMetricsToRetainV2HasBeenSet() const
void SetSecurityProfileName(SecurityProfileNameT &&value)
void SetAlertTargets(AlertTargetsT &&value)
const Aws::String & GetSecurityProfileDescription() const
AWS_IOT_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
bool GetDeleteAdditionalMetricsToRetain() const
UpdateSecurityProfileRequest & WithExpectedVersion(long long value)
UpdateSecurityProfileRequest & WithDeleteBehaviors(bool value)
void SetSecurityProfileDescription(SecurityProfileDescriptionT &&value)
void SetExpectedVersion(long long value)
UpdateSecurityProfileRequest & WithSecurityProfileDescription(SecurityProfileDescriptionT &&value)
UpdateSecurityProfileRequest & WithMetricsExportConfig(MetricsExportConfigT &&value)
const Aws::Vector< MetricToRetain > & GetAdditionalMetricsToRetainV2() const
bool BehaviorsHasBeenSet() 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