7#include <aws/core/http/HttpResponse.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/iot/IoT_EXPORTS.h>
13#include <aws/iot/model/AlertTarget.h>
14#include <aws/iot/model/AlertTargetType.h>
15#include <aws/iot/model/Behavior.h>
16#include <aws/iot/model/MetricToRetain.h>
17#include <aws/iot/model/MetricsExportConfig.h>
22template <
typename RESULT_TYPE>
23class AmazonWebServiceResult;
43 template <
typename SecurityProfileNameT = Aws::String>
45 m_securityProfileNameHasBeenSet =
true;
46 m_securityProfileName = std::forward<SecurityProfileNameT>(value);
48 template <
typename SecurityProfileNameT = Aws::String>
60 template <
typename SecurityProfileArnT = Aws::String>
62 m_securityProfileArnHasBeenSet =
true;
63 m_securityProfileArn = std::forward<SecurityProfileArnT>(value);
65 template <
typename SecurityProfileArnT = Aws::String>
78 template <
typename SecurityProfileDescriptionT = Aws::String>
80 m_securityProfileDescriptionHasBeenSet =
true;
81 m_securityProfileDescription = std::forward<SecurityProfileDescriptionT>(value);
83 template <
typename SecurityProfileDescriptionT = Aws::String>
96 template <
typename BehaviorsT = Aws::Vector<Behavior>>
98 m_behaviorsHasBeenSet =
true;
99 m_behaviors = std::forward<BehaviorsT>(value);
101 template <
typename BehaviorsT = Aws::Vector<Behavior>>
106 template <
typename BehaviorsT = Behavior>
108 m_behaviorsHasBeenSet =
true;
109 m_behaviors.emplace_back(std::forward<BehaviorsT>(value));
119 template <
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
121 m_alertTargetsHasBeenSet =
true;
122 m_alertTargets = std::forward<AlertTargetsT>(value);
124 template <
typename AlertTargetsT = Aws::Map<AlertTargetType, AlertTarget>>
130 m_alertTargetsHasBeenSet =
true;
131 m_alertTargets.emplace(key, value);
143 template <
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
145 m_additionalMetricsToRetainV2HasBeenSet =
true;
146 m_additionalMetricsToRetainV2 = std::forward<AdditionalMetricsToRetainV2T>(value);
148 template <
typename AdditionalMetricsToRetainV2T = Aws::Vector<MetricToRetain>>
153 template <
typename AdditionalMetricsToRetainV2T = MetricToRetain>
155 m_additionalMetricsToRetainV2HasBeenSet =
true;
156 m_additionalMetricsToRetainV2.emplace_back(std::forward<AdditionalMetricsToRetainV2T>(value));
168 m_versionHasBeenSet =
true;
182 template <
typename CreationDateT = Aws::Utils::DateTime>
184 m_creationDateHasBeenSet =
true;
185 m_creationDate = std::forward<CreationDateT>(value);
187 template <
typename CreationDateT = Aws::Utils::DateTime>
199 template <
typename LastModifiedDateT = Aws::Utils::DateTime>
201 m_lastModifiedDateHasBeenSet =
true;
202 m_lastModifiedDate = std::forward<LastModifiedDateT>(value);
204 template <
typename LastModifiedDateT = Aws::Utils::DateTime>
216 template <
typename MetricsExportConfigT = MetricsExportConfig>
218 m_metricsExportConfigHasBeenSet =
true;
219 m_metricsExportConfig = std::forward<MetricsExportConfigT>(value);
221 template <
typename MetricsExportConfigT = MetricsExportConfig>
231 template <
typename RequestIdT = Aws::String>
233 m_requestIdHasBeenSet =
true;
234 m_requestId = std::forward<RequestIdT>(value);
236 template <
typename RequestIdT = Aws::String>
257 long long m_version{0};
263 MetricsExportConfig m_metricsExportConfig;
267 bool m_securityProfileNameHasBeenSet =
false;
268 bool m_securityProfileArnHasBeenSet =
false;
269 bool m_securityProfileDescriptionHasBeenSet =
false;
270 bool m_behaviorsHasBeenSet =
false;
271 bool m_alertTargetsHasBeenSet =
false;
272 bool m_additionalMetricsToRetainV2HasBeenSet =
false;
273 bool m_versionHasBeenSet =
false;
274 bool m_creationDateHasBeenSet =
false;
275 bool m_lastModifiedDateHasBeenSet =
false;
276 bool m_metricsExportConfigHasBeenSet =
false;
277 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::Http::HttpResponseCode GetHttpResponseCode() const
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