7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/DateTime.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>
21template<
typename RESULT_TYPE>
22class AmazonWebServiceResult;
48 template<
typename SecurityProfileNameT = Aws::String>
49 void SetSecurityProfileName(SecurityProfileNameT&& value) { m_securityProfileNameHasBeenSet =
true; m_securityProfileName = std::forward<SecurityProfileNameT>(value); }
50 template<
typename SecurityProfileNameT = Aws::String>
59 template<
typename SecurityProfileArnT = Aws::String>
60 void SetSecurityProfileArn(SecurityProfileArnT&& value) { m_securityProfileArnHasBeenSet =
true; m_securityProfileArn = std::forward<SecurityProfileArnT>(value); }
61 template<
typename SecurityProfileArnT = Aws::String>
71 template<
typename SecurityProfileDescriptionT = Aws::String>
72 void SetSecurityProfileDescription(SecurityProfileDescriptionT&& value) { m_securityProfileDescriptionHasBeenSet =
true; m_securityProfileDescription = std::forward<SecurityProfileDescriptionT>(value); }
73 template<
typename SecurityProfileDescriptionT = Aws::String>
83 template<
typename BehaviorsT = Aws::Vector<Behavior>>
84 void SetBehaviors(BehaviorsT&& value) { m_behaviorsHasBeenSet =
true; m_behaviors = std::forward<BehaviorsT>(value); }
85 template<
typename BehaviorsT = Aws::Vector<Behavior>>
87 template<
typename BehaviorsT = Behavior>
96 template<
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
97 void SetAlertTargets(AlertTargetsT&& value) { m_alertTargetsHasBeenSet =
true; m_alertTargets = std::forward<AlertTargetsT>(value); }
98 template<
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
101 m_alertTargetsHasBeenSet =
true; m_alertTargets.emplace(key, value);
return *
this;
112 template<
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
113 void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T&& value) { m_additionalMetricsToRetainV2HasBeenSet =
true; m_additionalMetricsToRetainV2 = std::forward<AdditionalMetricsToRetainV2T>(value); }
114 template<
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
116 template<
typename AdditionalMetricsToRetainV2T = MetricToRetain>
126 inline void SetVersion(
long long value) { m_versionHasBeenSet =
true; m_version = value; }
135 template<
typename CreationDateT = Aws::Utils::DateTime>
136 void SetCreationDate(CreationDateT&& value) { m_creationDateHasBeenSet =
true; m_creationDate = std::forward<CreationDateT>(value); }
137 template<
typename CreationDateT = Aws::Utils::DateTime>
146 template<
typename LastModifiedDateT = Aws::Utils::DateTime>
147 void SetLastModifiedDate(LastModifiedDateT&& value) { m_lastModifiedDateHasBeenSet =
true; m_lastModifiedDate = std::forward<LastModifiedDateT>(value); }
148 template<
typename LastModifiedDateT = Aws::Utils::DateTime>
157 template<
typename MetricsExportConfigT = MetricsExportConfig>
158 void SetMetricsExportConfig(MetricsExportConfigT&& value) { m_metricsExportConfigHasBeenSet =
true; m_metricsExportConfig = std::forward<MetricsExportConfigT>(value); }
159 template<
typename MetricsExportConfigT = MetricsExportConfig>
166 template<
typename RequestIdT = Aws::String>
167 void SetRequestId(RequestIdT&& value) { m_requestIdHasBeenSet =
true; m_requestId = std::forward<RequestIdT>(value); }
168 template<
typename RequestIdT = Aws::String>
174 bool m_securityProfileNameHasBeenSet =
false;
177 bool m_securityProfileArnHasBeenSet =
false;
180 bool m_securityProfileDescriptionHasBeenSet =
false;
183 bool m_behaviorsHasBeenSet =
false;
186 bool m_alertTargetsHasBeenSet =
false;
189 bool m_additionalMetricsToRetainV2HasBeenSet =
false;
191 long long m_version{0};
192 bool m_versionHasBeenSet =
false;
195 bool m_creationDateHasBeenSet =
false;
198 bool m_lastModifiedDateHasBeenSet =
false;
200 MetricsExportConfig m_metricsExportConfig;
201 bool m_metricsExportConfigHasBeenSet =
false;
204 bool m_requestIdHasBeenSet =
false;
DescribeSecurityProfileResult & WithSecurityProfileArn(SecurityProfileArnT &&value)
void SetSecurityProfileName(SecurityProfileNameT &&value)
DescribeSecurityProfileResult & WithVersion(long long value)
DescribeSecurityProfileResult & AddAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
const Aws::Utils::DateTime & GetCreationDate() const
const Aws::Utils::DateTime & GetLastModifiedDate() const
DescribeSecurityProfileResult & WithSecurityProfileDescription(SecurityProfileDescriptionT &&value)
const Aws::String & GetSecurityProfileDescription() const
DescribeSecurityProfileResult & WithRequestId(RequestIdT &&value)
const Aws::Vector< MetricToRetain > & GetAdditionalMetricsToRetainV2() const
const Aws::String & GetSecurityProfileName() const
long long GetVersion() const
void SetMetricsExportConfig(MetricsExportConfigT &&value)
void SetAlertTargets(AlertTargetsT &&value)
AWS_IOT_API DescribeSecurityProfileResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
void SetLastModifiedDate(LastModifiedDateT &&value)
void SetRequestId(RequestIdT &&value)
const Aws::String & GetSecurityProfileArn() const
void SetAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
AWS_IOT_API DescribeSecurityProfileResult()=default
const MetricsExportConfig & GetMetricsExportConfig() const
DescribeSecurityProfileResult & WithSecurityProfileName(SecurityProfileNameT &&value)
DescribeSecurityProfileResult & WithAdditionalMetricsToRetainV2(AdditionalMetricsToRetainV2T &&value)
DescribeSecurityProfileResult & AddAlertTargets(AlertTargetType key, AlertTarget value)
DescribeSecurityProfileResult & AddBehaviors(BehaviorsT &&value)
DescribeSecurityProfileResult & WithLastModifiedDate(LastModifiedDateT &&value)
void SetCreationDate(CreationDateT &&value)
void SetBehaviors(BehaviorsT &&value)
const Aws::Map< AlertTargetType, AlertTarget > & GetAlertTargets() const
void SetSecurityProfileArn(SecurityProfileArnT &&value)
DescribeSecurityProfileResult & WithCreationDate(CreationDateT &&value)
void SetSecurityProfileDescription(SecurityProfileDescriptionT &&value)
DescribeSecurityProfileResult & WithAlertTargets(AlertTargetsT &&value)
DescribeSecurityProfileResult & WithBehaviors(BehaviorsT &&value)
const Aws::String & GetRequestId() const
DescribeSecurityProfileResult & WithMetricsExportConfig(MetricsExportConfigT &&value)
void SetVersion(long long value)
const Aws::Vector< Behavior > & GetBehaviors() const
AWS_IOT_API DescribeSecurityProfileResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
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
Aws::Utils::Json::JsonValue JsonValue