AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
SecurityControlDefinition.h
1
6#pragma once
7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/securityhub/model/SeverityRating.h>
10#include <aws/securityhub/model/RegionAvailabilityStatus.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/securityhub/model/SecurityControlProperty.h>
14#include <aws/securityhub/model/ParameterDefinition.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace SecurityHub
28{
29namespace Model
30{
31
41 {
42 public:
43 AWS_SECURITYHUB_API SecurityControlDefinition() = default;
46 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
47
48
50
59 inline const Aws::String& GetSecurityControlId() const { return m_securityControlId; }
60 inline bool SecurityControlIdHasBeenSet() const { return m_securityControlIdHasBeenSet; }
61 template<typename SecurityControlIdT = Aws::String>
62 void SetSecurityControlId(SecurityControlIdT&& value) { m_securityControlIdHasBeenSet = true; m_securityControlId = std::forward<SecurityControlIdT>(value); }
63 template<typename SecurityControlIdT = Aws::String>
64 SecurityControlDefinition& WithSecurityControlId(SecurityControlIdT&& value) { SetSecurityControlId(std::forward<SecurityControlIdT>(value)); return *this;}
66
68
71 inline const Aws::String& GetTitle() const { return m_title; }
72 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
73 template<typename TitleT = Aws::String>
74 void SetTitle(TitleT&& value) { m_titleHasBeenSet = true; m_title = std::forward<TitleT>(value); }
75 template<typename TitleT = Aws::String>
76 SecurityControlDefinition& WithTitle(TitleT&& value) { SetTitle(std::forward<TitleT>(value)); return *this;}
78
80
86 inline const Aws::String& GetDescription() const { return m_description; }
87 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
88 template<typename DescriptionT = Aws::String>
89 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
90 template<typename DescriptionT = Aws::String>
91 SecurityControlDefinition& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
93
95
99 inline const Aws::String& GetRemediationUrl() const { return m_remediationUrl; }
100 inline bool RemediationUrlHasBeenSet() const { return m_remediationUrlHasBeenSet; }
101 template<typename RemediationUrlT = Aws::String>
102 void SetRemediationUrl(RemediationUrlT&& value) { m_remediationUrlHasBeenSet = true; m_remediationUrl = std::forward<RemediationUrlT>(value); }
103 template<typename RemediationUrlT = Aws::String>
104 SecurityControlDefinition& WithRemediationUrl(RemediationUrlT&& value) { SetRemediationUrl(std::forward<RemediationUrlT>(value)); return *this;}
106
108
114 inline SeverityRating GetSeverityRating() const { return m_severityRating; }
115 inline bool SeverityRatingHasBeenSet() const { return m_severityRatingHasBeenSet; }
116 inline void SetSeverityRating(SeverityRating value) { m_severityRatingHasBeenSet = true; m_severityRating = value; }
119
121
125 inline RegionAvailabilityStatus GetCurrentRegionAvailability() const { return m_currentRegionAvailability; }
126 inline bool CurrentRegionAvailabilityHasBeenSet() const { return m_currentRegionAvailabilityHasBeenSet; }
127 inline void SetCurrentRegionAvailability(RegionAvailabilityStatus value) { m_currentRegionAvailabilityHasBeenSet = true; m_currentRegionAvailability = value; }
130
132
137 inline const Aws::Vector<SecurityControlProperty>& GetCustomizableProperties() const { return m_customizableProperties; }
138 inline bool CustomizablePropertiesHasBeenSet() const { return m_customizablePropertiesHasBeenSet; }
139 template<typename CustomizablePropertiesT = Aws::Vector<SecurityControlProperty>>
140 void SetCustomizableProperties(CustomizablePropertiesT&& value) { m_customizablePropertiesHasBeenSet = true; m_customizableProperties = std::forward<CustomizablePropertiesT>(value); }
141 template<typename CustomizablePropertiesT = Aws::Vector<SecurityControlProperty>>
142 SecurityControlDefinition& WithCustomizableProperties(CustomizablePropertiesT&& value) { SetCustomizableProperties(std::forward<CustomizablePropertiesT>(value)); return *this;}
143 inline SecurityControlDefinition& AddCustomizableProperties(SecurityControlProperty value) { m_customizablePropertiesHasBeenSet = true; m_customizableProperties.push_back(value); return *this; }
145
147
152 inline const Aws::Map<Aws::String, ParameterDefinition>& GetParameterDefinitions() const { return m_parameterDefinitions; }
153 inline bool ParameterDefinitionsHasBeenSet() const { return m_parameterDefinitionsHasBeenSet; }
154 template<typename ParameterDefinitionsT = Aws::Map<Aws::String, ParameterDefinition>>
155 void SetParameterDefinitions(ParameterDefinitionsT&& value) { m_parameterDefinitionsHasBeenSet = true; m_parameterDefinitions = std::forward<ParameterDefinitionsT>(value); }
156 template<typename ParameterDefinitionsT = Aws::Map<Aws::String, ParameterDefinition>>
157 SecurityControlDefinition& WithParameterDefinitions(ParameterDefinitionsT&& value) { SetParameterDefinitions(std::forward<ParameterDefinitionsT>(value)); return *this;}
158 template<typename ParameterDefinitionsKeyT = Aws::String, typename ParameterDefinitionsValueT = ParameterDefinition>
159 SecurityControlDefinition& AddParameterDefinitions(ParameterDefinitionsKeyT&& key, ParameterDefinitionsValueT&& value) {
160 m_parameterDefinitionsHasBeenSet = true; m_parameterDefinitions.emplace(std::forward<ParameterDefinitionsKeyT>(key), std::forward<ParameterDefinitionsValueT>(value)); return *this;
161 }
163 private:
164
165 Aws::String m_securityControlId;
166 bool m_securityControlIdHasBeenSet = false;
167
168 Aws::String m_title;
169 bool m_titleHasBeenSet = false;
170
171 Aws::String m_description;
172 bool m_descriptionHasBeenSet = false;
173
174 Aws::String m_remediationUrl;
175 bool m_remediationUrlHasBeenSet = false;
176
177 SeverityRating m_severityRating{SeverityRating::NOT_SET};
178 bool m_severityRatingHasBeenSet = false;
179
181 bool m_currentRegionAvailabilityHasBeenSet = false;
182
183 Aws::Vector<SecurityControlProperty> m_customizableProperties;
184 bool m_customizablePropertiesHasBeenSet = false;
185
186 Aws::Map<Aws::String, ParameterDefinition> m_parameterDefinitions;
187 bool m_parameterDefinitionsHasBeenSet = false;
188 };
189
190} // namespace Model
191} // namespace SecurityHub
192} // namespace Aws
void SetCurrentRegionAvailability(RegionAvailabilityStatus value)
AWS_SECURITYHUB_API SecurityControlDefinition()=default
SecurityControlDefinition & WithParameterDefinitions(ParameterDefinitionsT &&value)
SecurityControlDefinition & AddCustomizableProperties(SecurityControlProperty value)
const Aws::Map< Aws::String, ParameterDefinition > & GetParameterDefinitions() const
void SetCustomizableProperties(CustomizablePropertiesT &&value)
AWS_SECURITYHUB_API SecurityControlDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
SecurityControlDefinition & WithSeverityRating(SeverityRating value)
SecurityControlDefinition & AddParameterDefinitions(ParameterDefinitionsKeyT &&key, ParameterDefinitionsValueT &&value)
SecurityControlDefinition & WithRemediationUrl(RemediationUrlT &&value)
AWS_SECURITYHUB_API SecurityControlDefinition(Aws::Utils::Json::JsonView jsonValue)
SecurityControlDefinition & WithSecurityControlId(SecurityControlIdT &&value)
SecurityControlDefinition & WithCustomizableProperties(CustomizablePropertiesT &&value)
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
SecurityControlDefinition & WithCurrentRegionAvailability(RegionAvailabilityStatus value)
SecurityControlDefinition & WithDescription(DescriptionT &&value)
const Aws::Vector< SecurityControlProperty > & GetCustomizableProperties() const
SecurityControlDefinition & WithTitle(TitleT &&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
Aws::Utils::Json::JsonValue JsonValue