AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
Product.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/securityhub/SecurityHub_EXPORTS.h>
10#include <aws/securityhub/model/IntegrationType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace SecurityHub {
22namespace Model {
23
29class Product {
30 public:
31 AWS_SECURITYHUB_API Product() = default;
32 AWS_SECURITYHUB_API Product(Aws::Utils::Json::JsonView jsonValue);
33 AWS_SECURITYHUB_API Product& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline const Aws::String& GetProductArn() const { return m_productArn; }
41 inline bool ProductArnHasBeenSet() const { return m_productArnHasBeenSet; }
42 template <typename ProductArnT = Aws::String>
43 void SetProductArn(ProductArnT&& value) {
44 m_productArnHasBeenSet = true;
45 m_productArn = std::forward<ProductArnT>(value);
46 }
47 template <typename ProductArnT = Aws::String>
48 Product& WithProductArn(ProductArnT&& value) {
49 SetProductArn(std::forward<ProductArnT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetProductName() const { return m_productName; }
59 inline bool ProductNameHasBeenSet() const { return m_productNameHasBeenSet; }
60 template <typename ProductNameT = Aws::String>
61 void SetProductName(ProductNameT&& value) {
62 m_productNameHasBeenSet = true;
63 m_productName = std::forward<ProductNameT>(value);
64 }
65 template <typename ProductNameT = Aws::String>
66 Product& WithProductName(ProductNameT&& value) {
67 SetProductName(std::forward<ProductNameT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::String& GetCompanyName() const { return m_companyName; }
77 inline bool CompanyNameHasBeenSet() const { return m_companyNameHasBeenSet; }
78 template <typename CompanyNameT = Aws::String>
79 void SetCompanyName(CompanyNameT&& value) {
80 m_companyNameHasBeenSet = true;
81 m_companyName = std::forward<CompanyNameT>(value);
82 }
83 template <typename CompanyNameT = Aws::String>
84 Product& WithCompanyName(CompanyNameT&& value) {
85 SetCompanyName(std::forward<CompanyNameT>(value));
86 return *this;
87 }
89
91
94 inline const Aws::String& GetDescription() const { return m_description; }
95 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
96 template <typename DescriptionT = Aws::String>
97 void SetDescription(DescriptionT&& value) {
98 m_descriptionHasBeenSet = true;
99 m_description = std::forward<DescriptionT>(value);
100 }
101 template <typename DescriptionT = Aws::String>
102 Product& WithDescription(DescriptionT&& value) {
103 SetDescription(std::forward<DescriptionT>(value));
104 return *this;
105 }
107
109
112 inline const Aws::Vector<Aws::String>& GetCategories() const { return m_categories; }
113 inline bool CategoriesHasBeenSet() const { return m_categoriesHasBeenSet; }
114 template <typename CategoriesT = Aws::Vector<Aws::String>>
115 void SetCategories(CategoriesT&& value) {
116 m_categoriesHasBeenSet = true;
117 m_categories = std::forward<CategoriesT>(value);
118 }
119 template <typename CategoriesT = Aws::Vector<Aws::String>>
120 Product& WithCategories(CategoriesT&& value) {
121 SetCategories(std::forward<CategoriesT>(value));
122 return *this;
123 }
124 template <typename CategoriesT = Aws::String>
125 Product& AddCategories(CategoriesT&& value) {
126 m_categoriesHasBeenSet = true;
127 m_categories.emplace_back(std::forward<CategoriesT>(value));
128 return *this;
129 }
131
133
143 inline const Aws::Vector<IntegrationType>& GetIntegrationTypes() const { return m_integrationTypes; }
144 inline bool IntegrationTypesHasBeenSet() const { return m_integrationTypesHasBeenSet; }
145 template <typename IntegrationTypesT = Aws::Vector<IntegrationType>>
146 void SetIntegrationTypes(IntegrationTypesT&& value) {
147 m_integrationTypesHasBeenSet = true;
148 m_integrationTypes = std::forward<IntegrationTypesT>(value);
149 }
150 template <typename IntegrationTypesT = Aws::Vector<IntegrationType>>
151 Product& WithIntegrationTypes(IntegrationTypesT&& value) {
152 SetIntegrationTypes(std::forward<IntegrationTypesT>(value));
153 return *this;
154 }
156 m_integrationTypesHasBeenSet = true;
157 m_integrationTypes.push_back(value);
158 return *this;
159 }
161
163
169 inline const Aws::String& GetMarketplaceUrl() const { return m_marketplaceUrl; }
170 inline bool MarketplaceUrlHasBeenSet() const { return m_marketplaceUrlHasBeenSet; }
171 template <typename MarketplaceUrlT = Aws::String>
172 void SetMarketplaceUrl(MarketplaceUrlT&& value) {
173 m_marketplaceUrlHasBeenSet = true;
174 m_marketplaceUrl = std::forward<MarketplaceUrlT>(value);
175 }
176 template <typename MarketplaceUrlT = Aws::String>
177 Product& WithMarketplaceUrl(MarketplaceUrlT&& value) {
178 SetMarketplaceUrl(std::forward<MarketplaceUrlT>(value));
179 return *this;
180 }
182
184
188 inline const Aws::String& GetActivationUrl() const { return m_activationUrl; }
189 inline bool ActivationUrlHasBeenSet() const { return m_activationUrlHasBeenSet; }
190 template <typename ActivationUrlT = Aws::String>
191 void SetActivationUrl(ActivationUrlT&& value) {
192 m_activationUrlHasBeenSet = true;
193 m_activationUrl = std::forward<ActivationUrlT>(value);
194 }
195 template <typename ActivationUrlT = Aws::String>
196 Product& WithActivationUrl(ActivationUrlT&& value) {
197 SetActivationUrl(std::forward<ActivationUrlT>(value));
198 return *this;
199 }
201
203
206 inline const Aws::String& GetProductSubscriptionResourcePolicy() const { return m_productSubscriptionResourcePolicy; }
207 inline bool ProductSubscriptionResourcePolicyHasBeenSet() const { return m_productSubscriptionResourcePolicyHasBeenSet; }
208 template <typename ProductSubscriptionResourcePolicyT = Aws::String>
209 void SetProductSubscriptionResourcePolicy(ProductSubscriptionResourcePolicyT&& value) {
210 m_productSubscriptionResourcePolicyHasBeenSet = true;
211 m_productSubscriptionResourcePolicy = std::forward<ProductSubscriptionResourcePolicyT>(value);
212 }
213 template <typename ProductSubscriptionResourcePolicyT = Aws::String>
214 Product& WithProductSubscriptionResourcePolicy(ProductSubscriptionResourcePolicyT&& value) {
215 SetProductSubscriptionResourcePolicy(std::forward<ProductSubscriptionResourcePolicyT>(value));
216 return *this;
217 }
219 private:
220 Aws::String m_productArn;
221
222 Aws::String m_productName;
223
224 Aws::String m_companyName;
225
226 Aws::String m_description;
227
228 Aws::Vector<Aws::String> m_categories;
229
230 Aws::Vector<IntegrationType> m_integrationTypes;
231
232 Aws::String m_marketplaceUrl;
233
234 Aws::String m_activationUrl;
235
236 Aws::String m_productSubscriptionResourcePolicy;
237 bool m_productArnHasBeenSet = false;
238 bool m_productNameHasBeenSet = false;
239 bool m_companyNameHasBeenSet = false;
240 bool m_descriptionHasBeenSet = false;
241 bool m_categoriesHasBeenSet = false;
242 bool m_integrationTypesHasBeenSet = false;
243 bool m_marketplaceUrlHasBeenSet = false;
244 bool m_activationUrlHasBeenSet = false;
245 bool m_productSubscriptionResourcePolicyHasBeenSet = false;
246};
247
248} // namespace Model
249} // namespace SecurityHub
250} // namespace Aws
Product & WithCompanyName(CompanyNameT &&value)
Definition Product.h:84
bool ProductArnHasBeenSet() const
Definition Product.h:41
const Aws::String & GetProductName() const
Definition Product.h:58
bool CompanyNameHasBeenSet() const
Definition Product.h:77
void SetProductName(ProductNameT &&value)
Definition Product.h:61
const Aws::Vector< IntegrationType > & GetIntegrationTypes() const
Definition Product.h:143
Product & AddCategories(CategoriesT &&value)
Definition Product.h:125
AWS_SECURITYHUB_API Product()=default
bool ProductNameHasBeenSet() const
Definition Product.h:59
const Aws::String & GetActivationUrl() const
Definition Product.h:188
void SetMarketplaceUrl(MarketplaceUrlT &&value)
Definition Product.h:172
Product & WithMarketplaceUrl(MarketplaceUrlT &&value)
Definition Product.h:177
void SetIntegrationTypes(IntegrationTypesT &&value)
Definition Product.h:146
bool ActivationUrlHasBeenSet() const
Definition Product.h:189
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetMarketplaceUrl() const
Definition Product.h:169
void SetActivationUrl(ActivationUrlT &&value)
Definition Product.h:191
AWS_SECURITYHUB_API Product & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetCompanyName(CompanyNameT &&value)
Definition Product.h:79
Product & WithProductArn(ProductArnT &&value)
Definition Product.h:48
const Aws::String & GetProductSubscriptionResourcePolicy() const
Definition Product.h:206
bool IntegrationTypesHasBeenSet() const
Definition Product.h:144
bool ProductSubscriptionResourcePolicyHasBeenSet() const
Definition Product.h:207
Product & WithIntegrationTypes(IntegrationTypesT &&value)
Definition Product.h:151
bool DescriptionHasBeenSet() const
Definition Product.h:95
void SetProductArn(ProductArnT &&value)
Definition Product.h:43
Product & WithProductSubscriptionResourcePolicy(ProductSubscriptionResourcePolicyT &&value)
Definition Product.h:214
AWS_SECURITYHUB_API Product(Aws::Utils::Json::JsonView jsonValue)
Product & WithActivationUrl(ActivationUrlT &&value)
Definition Product.h:196
void SetDescription(DescriptionT &&value)
Definition Product.h:97
void SetProductSubscriptionResourcePolicy(ProductSubscriptionResourcePolicyT &&value)
Definition Product.h:209
Product & AddIntegrationTypes(IntegrationType value)
Definition Product.h:155
const Aws::Vector< Aws::String > & GetCategories() const
Definition Product.h:112
const Aws::String & GetDescription() const
Definition Product.h:94
void SetCategories(CategoriesT &&value)
Definition Product.h:115
bool MarketplaceUrlHasBeenSet() const
Definition Product.h:170
const Aws::String & GetCompanyName() const
Definition Product.h:76
Product & WithProductName(ProductNameT &&value)
Definition Product.h:66
const Aws::String & GetProductArn() const
Definition Product.h:40
Product & WithDescription(DescriptionT &&value)
Definition Product.h:102
Product & WithCategories(CategoriesT &&value)
Definition Product.h:120
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue