AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateSecurityProfileRequest.h
1
6#pragma once
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>
17#include <aws/iot/model/Tag.h>
18#include <utility>
19
20namespace Aws
21{
22namespace IoT
23{
24namespace Model
25{
26
30 {
31 public:
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "CreateSecurityProfile"; }
39
40 AWS_IOT_API Aws::String SerializePayload() const override;
41
42
44
47 inline const Aws::String& GetSecurityProfileName() const{ return m_securityProfileName; }
48 inline bool SecurityProfileNameHasBeenSet() const { return m_securityProfileNameHasBeenSet; }
49 inline void SetSecurityProfileName(const Aws::String& value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName = value; }
50 inline void SetSecurityProfileName(Aws::String&& value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName = std::move(value); }
51 inline void SetSecurityProfileName(const char* value) { m_securityProfileNameHasBeenSet = true; m_securityProfileName.assign(value); }
54 inline CreateSecurityProfileRequest& WithSecurityProfileName(const char* value) { SetSecurityProfileName(value); return *this;}
56
58
61 inline const Aws::String& GetSecurityProfileDescription() const{ return m_securityProfileDescription; }
62 inline bool SecurityProfileDescriptionHasBeenSet() const { return m_securityProfileDescriptionHasBeenSet; }
63 inline void SetSecurityProfileDescription(const Aws::String& value) { m_securityProfileDescriptionHasBeenSet = true; m_securityProfileDescription = value; }
64 inline void SetSecurityProfileDescription(Aws::String&& value) { m_securityProfileDescriptionHasBeenSet = true; m_securityProfileDescription = std::move(value); }
65 inline void SetSecurityProfileDescription(const char* value) { m_securityProfileDescriptionHasBeenSet = true; m_securityProfileDescription.assign(value); }
70
72
76 inline const Aws::Vector<Behavior>& GetBehaviors() const{ return m_behaviors; }
77 inline bool BehaviorsHasBeenSet() const { return m_behaviorsHasBeenSet; }
78 inline void SetBehaviors(const Aws::Vector<Behavior>& value) { m_behaviorsHasBeenSet = true; m_behaviors = value; }
79 inline void SetBehaviors(Aws::Vector<Behavior>&& value) { m_behaviorsHasBeenSet = true; m_behaviors = std::move(value); }
81 inline CreateSecurityProfileRequest& WithBehaviors(Aws::Vector<Behavior>&& value) { SetBehaviors(std::move(value)); return *this;}
82 inline CreateSecurityProfileRequest& AddBehaviors(const Behavior& value) { m_behaviorsHasBeenSet = true; m_behaviors.push_back(value); return *this; }
83 inline CreateSecurityProfileRequest& AddBehaviors(Behavior&& value) { m_behaviorsHasBeenSet = true; m_behaviors.push_back(std::move(value)); return *this; }
85
87
92 inline const Aws::Map<AlertTargetType, AlertTarget>& GetAlertTargets() const{ return m_alertTargets; }
93 inline bool AlertTargetsHasBeenSet() const { return m_alertTargetsHasBeenSet; }
94 inline void SetAlertTargets(const Aws::Map<AlertTargetType, AlertTarget>& value) { m_alertTargetsHasBeenSet = true; m_alertTargets = value; }
95 inline void SetAlertTargets(Aws::Map<AlertTargetType, AlertTarget>&& value) { m_alertTargetsHasBeenSet = true; m_alertTargets = std::move(value); }
98 inline CreateSecurityProfileRequest& AddAlertTargets(const AlertTargetType& key, const AlertTarget& value) { m_alertTargetsHasBeenSet = true; m_alertTargets.emplace(key, value); return *this; }
99 inline CreateSecurityProfileRequest& AddAlertTargets(AlertTargetType&& key, const AlertTarget& value) { m_alertTargetsHasBeenSet = true; m_alertTargets.emplace(std::move(key), value); return *this; }
100 inline CreateSecurityProfileRequest& AddAlertTargets(const AlertTargetType& key, AlertTarget&& value) { m_alertTargetsHasBeenSet = true; m_alertTargets.emplace(key, std::move(value)); return *this; }
101 inline CreateSecurityProfileRequest& AddAlertTargets(AlertTargetType&& key, AlertTarget&& value) { m_alertTargetsHasBeenSet = true; m_alertTargets.emplace(std::move(key), std::move(value)); return *this; }
103
105
111 inline const Aws::Vector<MetricToRetain>& GetAdditionalMetricsToRetainV2() const{ return m_additionalMetricsToRetainV2; }
112 inline bool AdditionalMetricsToRetainV2HasBeenSet() const { return m_additionalMetricsToRetainV2HasBeenSet; }
113 inline void SetAdditionalMetricsToRetainV2(const Aws::Vector<MetricToRetain>& value) { m_additionalMetricsToRetainV2HasBeenSet = true; m_additionalMetricsToRetainV2 = value; }
114 inline void SetAdditionalMetricsToRetainV2(Aws::Vector<MetricToRetain>&& value) { m_additionalMetricsToRetainV2HasBeenSet = true; m_additionalMetricsToRetainV2 = std::move(value); }
117 inline CreateSecurityProfileRequest& AddAdditionalMetricsToRetainV2(const MetricToRetain& value) { m_additionalMetricsToRetainV2HasBeenSet = true; m_additionalMetricsToRetainV2.push_back(value); return *this; }
118 inline CreateSecurityProfileRequest& AddAdditionalMetricsToRetainV2(MetricToRetain&& value) { m_additionalMetricsToRetainV2HasBeenSet = true; m_additionalMetricsToRetainV2.push_back(std::move(value)); return *this; }
120
122
125 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
126 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
127 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
128 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
129 inline CreateSecurityProfileRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
130 inline CreateSecurityProfileRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
131 inline CreateSecurityProfileRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
132 inline CreateSecurityProfileRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
134
136
139 inline const MetricsExportConfig& GetMetricsExportConfig() const{ return m_metricsExportConfig; }
140 inline bool MetricsExportConfigHasBeenSet() const { return m_metricsExportConfigHasBeenSet; }
141 inline void SetMetricsExportConfig(const MetricsExportConfig& value) { m_metricsExportConfigHasBeenSet = true; m_metricsExportConfig = value; }
142 inline void SetMetricsExportConfig(MetricsExportConfig&& value) { m_metricsExportConfigHasBeenSet = true; m_metricsExportConfig = std::move(value); }
146 private:
147
148 Aws::String m_securityProfileName;
149 bool m_securityProfileNameHasBeenSet = false;
150
151 Aws::String m_securityProfileDescription;
152 bool m_securityProfileDescriptionHasBeenSet = false;
153
154 Aws::Vector<Behavior> m_behaviors;
155 bool m_behaviorsHasBeenSet = false;
156
158 bool m_alertTargetsHasBeenSet = false;
159
160 Aws::Vector<MetricToRetain> m_additionalMetricsToRetainV2;
161 bool m_additionalMetricsToRetainV2HasBeenSet = false;
162
163 Aws::Vector<Tag> m_tags;
164 bool m_tagsHasBeenSet = false;
165
166 MetricsExportConfig m_metricsExportConfig;
167 bool m_metricsExportConfigHasBeenSet = false;
168 };
169
170} // namespace Model
171} // namespace IoT
172} // namespace Aws
CreateSecurityProfileRequest & AddAlertTargets(AlertTargetType &&key, AlertTarget &&value)
CreateSecurityProfileRequest & WithBehaviors(Aws::Vector< Behavior > &&value)
CreateSecurityProfileRequest & WithAlertTargets(const Aws::Map< AlertTargetType, AlertTarget > &value)
CreateSecurityProfileRequest & WithSecurityProfileName(const Aws::String &value)
CreateSecurityProfileRequest & WithTags(Aws::Vector< Tag > &&value)
CreateSecurityProfileRequest & WithMetricsExportConfig(const MetricsExportConfig &value)
CreateSecurityProfileRequest & WithAdditionalMetricsToRetainV2(Aws::Vector< MetricToRetain > &&value)
CreateSecurityProfileRequest & WithSecurityProfileName(Aws::String &&value)
void SetBehaviors(const Aws::Vector< Behavior > &value)
void SetAlertTargets(Aws::Map< AlertTargetType, AlertTarget > &&value)
CreateSecurityProfileRequest & WithMetricsExportConfig(MetricsExportConfig &&value)
AWS_IOT_API Aws::String SerializePayload() const override
CreateSecurityProfileRequest & WithBehaviors(const Aws::Vector< Behavior > &value)
CreateSecurityProfileRequest & WithSecurityProfileName(const char *value)
CreateSecurityProfileRequest & AddBehaviors(Behavior &&value)
void SetAlertTargets(const Aws::Map< AlertTargetType, AlertTarget > &value)
CreateSecurityProfileRequest & AddAlertTargets(const AlertTargetType &key, const AlertTarget &value)
CreateSecurityProfileRequest & WithSecurityProfileDescription(Aws::String &&value)
CreateSecurityProfileRequest & WithAdditionalMetricsToRetainV2(const Aws::Vector< MetricToRetain > &value)
CreateSecurityProfileRequest & WithTags(const Aws::Vector< Tag > &value)
const MetricsExportConfig & GetMetricsExportConfig() const
void SetMetricsExportConfig(const MetricsExportConfig &value)
const Aws::Vector< Behavior > & GetBehaviors() const
CreateSecurityProfileRequest & AddTags(Tag &&value)
CreateSecurityProfileRequest & AddAdditionalMetricsToRetainV2(MetricToRetain &&value)
void SetAdditionalMetricsToRetainV2(Aws::Vector< MetricToRetain > &&value)
virtual const char * GetServiceRequestName() const override
const Aws::Vector< MetricToRetain > & GetAdditionalMetricsToRetainV2() const
CreateSecurityProfileRequest & AddBehaviors(const Behavior &value)
CreateSecurityProfileRequest & AddAdditionalMetricsToRetainV2(const MetricToRetain &value)
CreateSecurityProfileRequest & WithSecurityProfileDescription(const Aws::String &value)
void SetAdditionalMetricsToRetainV2(const Aws::Vector< MetricToRetain > &value)
CreateSecurityProfileRequest & AddTags(const Tag &value)
const Aws::Map< AlertTargetType, AlertTarget > & GetAlertTargets() const
CreateSecurityProfileRequest & AddAlertTargets(AlertTargetType &&key, const AlertTarget &value)
CreateSecurityProfileRequest & WithSecurityProfileDescription(const char *value)
CreateSecurityProfileRequest & WithAlertTargets(Aws::Map< AlertTargetType, AlertTarget > &&value)
CreateSecurityProfileRequest & AddAlertTargets(const AlertTargetType &key, AlertTarget &&value)
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