AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
ConfigurationItem.h
1
6#pragma once
7#include <aws/config/ConfigService_EXPORTS.h>
8#include <aws/config/model/ConfigurationItemStatus.h>
9#include <aws/config/model/RecordingFrequency.h>
10#include <aws/config/model/Relationship.h>
11#include <aws/config/model/ResourceType.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace ConfigService {
27namespace Model {
28
36 public:
37 AWS_CONFIGSERVICE_API ConfigurationItem() = default;
38 AWS_CONFIGSERVICE_API ConfigurationItem(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CONFIGSERVICE_API ConfigurationItem& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_CONFIGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
46 inline const Aws::String& GetVersion() const { return m_version; }
47 inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
48 template <typename VersionT = Aws::String>
49 void SetVersion(VersionT&& value) {
50 m_versionHasBeenSet = true;
51 m_version = std::forward<VersionT>(value);
52 }
53 template <typename VersionT = Aws::String>
54 ConfigurationItem& WithVersion(VersionT&& value) {
55 SetVersion(std::forward<VersionT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::String& GetAccountId() const { return m_accountId; }
65 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
66 template <typename AccountIdT = Aws::String>
67 void SetAccountId(AccountIdT&& value) {
68 m_accountIdHasBeenSet = true;
69 m_accountId = std::forward<AccountIdT>(value);
70 }
71 template <typename AccountIdT = Aws::String>
72 ConfigurationItem& WithAccountId(AccountIdT&& value) {
73 SetAccountId(std::forward<AccountIdT>(value));
74 return *this;
75 }
77
79
83 inline const Aws::Utils::DateTime& GetConfigurationItemCaptureTime() const { return m_configurationItemCaptureTime; }
84 inline bool ConfigurationItemCaptureTimeHasBeenSet() const { return m_configurationItemCaptureTimeHasBeenSet; }
85 template <typename ConfigurationItemCaptureTimeT = Aws::Utils::DateTime>
86 void SetConfigurationItemCaptureTime(ConfigurationItemCaptureTimeT&& value) {
87 m_configurationItemCaptureTimeHasBeenSet = true;
88 m_configurationItemCaptureTime = std::forward<ConfigurationItemCaptureTimeT>(value);
89 }
90 template <typename ConfigurationItemCaptureTimeT = Aws::Utils::DateTime>
91 ConfigurationItem& WithConfigurationItemCaptureTime(ConfigurationItemCaptureTimeT&& value) {
92 SetConfigurationItemCaptureTime(std::forward<ConfigurationItemCaptureTimeT>(value));
93 return *this;
94 }
96
98
108 inline ConfigurationItemStatus GetConfigurationItemStatus() const { return m_configurationItemStatus; }
109 inline bool ConfigurationItemStatusHasBeenSet() const { return m_configurationItemStatusHasBeenSet; }
111 m_configurationItemStatusHasBeenSet = true;
112 m_configurationItemStatus = value;
113 }
116 return *this;
117 }
119
121
125 inline const Aws::String& GetConfigurationStateId() const { return m_configurationStateId; }
126 inline bool ConfigurationStateIdHasBeenSet() const { return m_configurationStateIdHasBeenSet; }
127 template <typename ConfigurationStateIdT = Aws::String>
128 void SetConfigurationStateId(ConfigurationStateIdT&& value) {
129 m_configurationStateIdHasBeenSet = true;
130 m_configurationStateId = std::forward<ConfigurationStateIdT>(value);
131 }
132 template <typename ConfigurationStateIdT = Aws::String>
133 ConfigurationItem& WithConfigurationStateId(ConfigurationStateIdT&& value) {
134 SetConfigurationStateId(std::forward<ConfigurationStateIdT>(value));
135 return *this;
136 }
138
140
145 inline const Aws::String& GetConfigurationItemMD5Hash() const { return m_configurationItemMD5Hash; }
146 inline bool ConfigurationItemMD5HashHasBeenSet() const { return m_configurationItemMD5HashHasBeenSet; }
147 template <typename ConfigurationItemMD5HashT = Aws::String>
148 void SetConfigurationItemMD5Hash(ConfigurationItemMD5HashT&& value) {
149 m_configurationItemMD5HashHasBeenSet = true;
150 m_configurationItemMD5Hash = std::forward<ConfigurationItemMD5HashT>(value);
151 }
152 template <typename ConfigurationItemMD5HashT = Aws::String>
153 ConfigurationItem& WithConfigurationItemMD5Hash(ConfigurationItemMD5HashT&& value) {
154 SetConfigurationItemMD5Hash(std::forward<ConfigurationItemMD5HashT>(value));
155 return *this;
156 }
158
160
163 inline const Aws::String& GetArn() const { return m_arn; }
164 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
165 template <typename ArnT = Aws::String>
166 void SetArn(ArnT&& value) {
167 m_arnHasBeenSet = true;
168 m_arn = std::forward<ArnT>(value);
169 }
170 template <typename ArnT = Aws::String>
171 ConfigurationItem& WithArn(ArnT&& value) {
172 SetArn(std::forward<ArnT>(value));
173 return *this;
174 }
176
178
181 inline ResourceType GetResourceType() const { return m_resourceType; }
182 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
183 inline void SetResourceType(ResourceType value) {
184 m_resourceTypeHasBeenSet = true;
185 m_resourceType = value;
186 }
188 SetResourceType(value);
189 return *this;
190 }
192
194
197 inline const Aws::String& GetResourceId() const { return m_resourceId; }
198 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; }
199 template <typename ResourceIdT = Aws::String>
200 void SetResourceId(ResourceIdT&& value) {
201 m_resourceIdHasBeenSet = true;
202 m_resourceId = std::forward<ResourceIdT>(value);
203 }
204 template <typename ResourceIdT = Aws::String>
205 ConfigurationItem& WithResourceId(ResourceIdT&& value) {
206 SetResourceId(std::forward<ResourceIdT>(value));
207 return *this;
208 }
210
212
215 inline const Aws::String& GetResourceName() const { return m_resourceName; }
216 inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; }
217 template <typename ResourceNameT = Aws::String>
218 void SetResourceName(ResourceNameT&& value) {
219 m_resourceNameHasBeenSet = true;
220 m_resourceName = std::forward<ResourceNameT>(value);
221 }
222 template <typename ResourceNameT = Aws::String>
223 ConfigurationItem& WithResourceName(ResourceNameT&& value) {
224 SetResourceName(std::forward<ResourceNameT>(value));
225 return *this;
226 }
228
230
233 inline const Aws::String& GetAwsRegion() const { return m_awsRegion; }
234 inline bool AwsRegionHasBeenSet() const { return m_awsRegionHasBeenSet; }
235 template <typename AwsRegionT = Aws::String>
236 void SetAwsRegion(AwsRegionT&& value) {
237 m_awsRegionHasBeenSet = true;
238 m_awsRegion = std::forward<AwsRegionT>(value);
239 }
240 template <typename AwsRegionT = Aws::String>
241 ConfigurationItem& WithAwsRegion(AwsRegionT&& value) {
242 SetAwsRegion(std::forward<AwsRegionT>(value));
243 return *this;
244 }
246
248
251 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
252 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
253 template <typename AvailabilityZoneT = Aws::String>
254 void SetAvailabilityZone(AvailabilityZoneT&& value) {
255 m_availabilityZoneHasBeenSet = true;
256 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
257 }
258 template <typename AvailabilityZoneT = Aws::String>
259 ConfigurationItem& WithAvailabilityZone(AvailabilityZoneT&& value) {
260 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
261 return *this;
262 }
264
266
269 inline const Aws::Utils::DateTime& GetResourceCreationTime() const { return m_resourceCreationTime; }
270 inline bool ResourceCreationTimeHasBeenSet() const { return m_resourceCreationTimeHasBeenSet; }
271 template <typename ResourceCreationTimeT = Aws::Utils::DateTime>
272 void SetResourceCreationTime(ResourceCreationTimeT&& value) {
273 m_resourceCreationTimeHasBeenSet = true;
274 m_resourceCreationTime = std::forward<ResourceCreationTimeT>(value);
275 }
276 template <typename ResourceCreationTimeT = Aws::Utils::DateTime>
277 ConfigurationItem& WithResourceCreationTime(ResourceCreationTimeT&& value) {
278 SetResourceCreationTime(std::forward<ResourceCreationTimeT>(value));
279 return *this;
280 }
282
284
287 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
288 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
289 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
290 void SetTags(TagsT&& value) {
291 m_tagsHasBeenSet = true;
292 m_tags = std::forward<TagsT>(value);
293 }
294 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
295 ConfigurationItem& WithTags(TagsT&& value) {
296 SetTags(std::forward<TagsT>(value));
297 return *this;
298 }
299 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
300 ConfigurationItem& AddTags(TagsKeyT&& key, TagsValueT&& value) {
301 m_tagsHasBeenSet = true;
302 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
303 return *this;
304 }
306
308
320 inline const Aws::Vector<Aws::String>& GetRelatedEvents() const { return m_relatedEvents; }
321 inline bool RelatedEventsHasBeenSet() const { return m_relatedEventsHasBeenSet; }
322 template <typename RelatedEventsT = Aws::Vector<Aws::String>>
323 void SetRelatedEvents(RelatedEventsT&& value) {
324 m_relatedEventsHasBeenSet = true;
325 m_relatedEvents = std::forward<RelatedEventsT>(value);
326 }
327 template <typename RelatedEventsT = Aws::Vector<Aws::String>>
328 ConfigurationItem& WithRelatedEvents(RelatedEventsT&& value) {
329 SetRelatedEvents(std::forward<RelatedEventsT>(value));
330 return *this;
331 }
332 template <typename RelatedEventsT = Aws::String>
333 ConfigurationItem& AddRelatedEvents(RelatedEventsT&& value) {
334 m_relatedEventsHasBeenSet = true;
335 m_relatedEvents.emplace_back(std::forward<RelatedEventsT>(value));
336 return *this;
337 }
339
341
344 inline const Aws::Vector<Relationship>& GetRelationships() const { return m_relationships; }
345 inline bool RelationshipsHasBeenSet() const { return m_relationshipsHasBeenSet; }
346 template <typename RelationshipsT = Aws::Vector<Relationship>>
347 void SetRelationships(RelationshipsT&& value) {
348 m_relationshipsHasBeenSet = true;
349 m_relationships = std::forward<RelationshipsT>(value);
350 }
351 template <typename RelationshipsT = Aws::Vector<Relationship>>
352 ConfigurationItem& WithRelationships(RelationshipsT&& value) {
353 SetRelationships(std::forward<RelationshipsT>(value));
354 return *this;
355 }
356 template <typename RelationshipsT = Relationship>
357 ConfigurationItem& AddRelationships(RelationshipsT&& value) {
358 m_relationshipsHasBeenSet = true;
359 m_relationships.emplace_back(std::forward<RelationshipsT>(value));
360 return *this;
361 }
363
365
370 inline const Aws::String& GetConfiguration() const { return m_configuration; }
371 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
372 template <typename ConfigurationT = Aws::String>
373 void SetConfiguration(ConfigurationT&& value) {
374 m_configurationHasBeenSet = true;
375 m_configuration = std::forward<ConfigurationT>(value);
376 }
377 template <typename ConfigurationT = Aws::String>
378 ConfigurationItem& WithConfiguration(ConfigurationT&& value) {
379 SetConfiguration(std::forward<ConfigurationT>(value));
380 return *this;
381 }
383
385
392 inline const Aws::Map<Aws::String, Aws::String>& GetSupplementaryConfiguration() const { return m_supplementaryConfiguration; }
393 inline bool SupplementaryConfigurationHasBeenSet() const { return m_supplementaryConfigurationHasBeenSet; }
394 template <typename SupplementaryConfigurationT = Aws::Map<Aws::String, Aws::String>>
395 void SetSupplementaryConfiguration(SupplementaryConfigurationT&& value) {
396 m_supplementaryConfigurationHasBeenSet = true;
397 m_supplementaryConfiguration = std::forward<SupplementaryConfigurationT>(value);
398 }
399 template <typename SupplementaryConfigurationT = Aws::Map<Aws::String, Aws::String>>
400 ConfigurationItem& WithSupplementaryConfiguration(SupplementaryConfigurationT&& value) {
401 SetSupplementaryConfiguration(std::forward<SupplementaryConfigurationT>(value));
402 return *this;
403 }
404 template <typename SupplementaryConfigurationKeyT = Aws::String, typename SupplementaryConfigurationValueT = Aws::String>
405 ConfigurationItem& AddSupplementaryConfiguration(SupplementaryConfigurationKeyT&& key, SupplementaryConfigurationValueT&& value) {
406 m_supplementaryConfigurationHasBeenSet = true;
407 m_supplementaryConfiguration.emplace(std::forward<SupplementaryConfigurationKeyT>(key),
408 std::forward<SupplementaryConfigurationValueT>(value));
409 return *this;
410 }
412
414
423 inline RecordingFrequency GetRecordingFrequency() const { return m_recordingFrequency; }
424 inline bool RecordingFrequencyHasBeenSet() const { return m_recordingFrequencyHasBeenSet; }
426 m_recordingFrequencyHasBeenSet = true;
427 m_recordingFrequency = value;
428 }
431 return *this;
432 }
434
436
447 inline const Aws::Utils::DateTime& GetConfigurationItemDeliveryTime() const { return m_configurationItemDeliveryTime; }
448 inline bool ConfigurationItemDeliveryTimeHasBeenSet() const { return m_configurationItemDeliveryTimeHasBeenSet; }
449 template <typename ConfigurationItemDeliveryTimeT = Aws::Utils::DateTime>
450 void SetConfigurationItemDeliveryTime(ConfigurationItemDeliveryTimeT&& value) {
451 m_configurationItemDeliveryTimeHasBeenSet = true;
452 m_configurationItemDeliveryTime = std::forward<ConfigurationItemDeliveryTimeT>(value);
453 }
454 template <typename ConfigurationItemDeliveryTimeT = Aws::Utils::DateTime>
455 ConfigurationItem& WithConfigurationItemDeliveryTime(ConfigurationItemDeliveryTimeT&& value) {
456 SetConfigurationItemDeliveryTime(std::forward<ConfigurationItemDeliveryTimeT>(value));
457 return *this;
458 }
460 private:
461 Aws::String m_version;
462
463 Aws::String m_accountId;
464
465 Aws::Utils::DateTime m_configurationItemCaptureTime{};
466
468
469 Aws::String m_configurationStateId;
470
471 Aws::String m_configurationItemMD5Hash;
472
473 Aws::String m_arn;
474
475 ResourceType m_resourceType{ResourceType::NOT_SET};
476
477 Aws::String m_resourceId;
478
479 Aws::String m_resourceName;
480
481 Aws::String m_awsRegion;
482
483 Aws::String m_availabilityZone;
484
485 Aws::Utils::DateTime m_resourceCreationTime{};
486
488
489 Aws::Vector<Aws::String> m_relatedEvents;
490
491 Aws::Vector<Relationship> m_relationships;
492
493 Aws::String m_configuration;
494
495 Aws::Map<Aws::String, Aws::String> m_supplementaryConfiguration;
496
498
499 Aws::Utils::DateTime m_configurationItemDeliveryTime{};
500 bool m_versionHasBeenSet = false;
501 bool m_accountIdHasBeenSet = false;
502 bool m_configurationItemCaptureTimeHasBeenSet = false;
503 bool m_configurationItemStatusHasBeenSet = false;
504 bool m_configurationStateIdHasBeenSet = false;
505 bool m_configurationItemMD5HashHasBeenSet = false;
506 bool m_arnHasBeenSet = false;
507 bool m_resourceTypeHasBeenSet = false;
508 bool m_resourceIdHasBeenSet = false;
509 bool m_resourceNameHasBeenSet = false;
510 bool m_awsRegionHasBeenSet = false;
511 bool m_availabilityZoneHasBeenSet = false;
512 bool m_resourceCreationTimeHasBeenSet = false;
513 bool m_tagsHasBeenSet = false;
514 bool m_relatedEventsHasBeenSet = false;
515 bool m_relationshipsHasBeenSet = false;
516 bool m_configurationHasBeenSet = false;
517 bool m_supplementaryConfigurationHasBeenSet = false;
518 bool m_recordingFrequencyHasBeenSet = false;
519 bool m_configurationItemDeliveryTimeHasBeenSet = false;
520};
521
522} // namespace Model
523} // namespace ConfigService
524} // namespace Aws
ConfigurationItem & WithConfigurationItemDeliveryTime(ConfigurationItemDeliveryTimeT &&value)
ConfigurationItem & WithAwsRegion(AwsRegionT &&value)
ConfigurationItemStatus GetConfigurationItemStatus() const
ConfigurationItem & AddSupplementaryConfiguration(SupplementaryConfigurationKeyT &&key, SupplementaryConfigurationValueT &&value)
ConfigurationItem & WithSupplementaryConfiguration(SupplementaryConfigurationT &&value)
const Aws::Vector< Aws::String > & GetRelatedEvents() const
ConfigurationItem & WithAvailabilityZone(AvailabilityZoneT &&value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
ConfigurationItem & AddRelationships(RelationshipsT &&value)
AWS_CONFIGSERVICE_API ConfigurationItem(Aws::Utils::Json::JsonView jsonValue)
AWS_CONFIGSERVICE_API ConfigurationItem()=default
const Aws::String & GetConfigurationStateId() const
ConfigurationItem & WithArn(ArnT &&value)
void SetConfigurationStateId(ConfigurationStateIdT &&value)
ConfigurationItem & WithAccountId(AccountIdT &&value)
ConfigurationItem & WithConfiguration(ConfigurationT &&value)
ConfigurationItem & WithResourceType(ResourceType value)
ConfigurationItem & WithConfigurationItemMD5Hash(ConfigurationItemMD5HashT &&value)
const Aws::Utils::DateTime & GetResourceCreationTime() const
ConfigurationItem & WithConfigurationItemCaptureTime(ConfigurationItemCaptureTimeT &&value)
void SetConfigurationItemCaptureTime(ConfigurationItemCaptureTimeT &&value)
void SetSupplementaryConfiguration(SupplementaryConfigurationT &&value)
ConfigurationItem & WithRecordingFrequency(RecordingFrequency value)
ConfigurationItem & WithConfigurationItemStatus(ConfigurationItemStatus value)
void SetResourceCreationTime(ResourceCreationTimeT &&value)
const Aws::Utils::DateTime & GetConfigurationItemCaptureTime() const
ConfigurationItem & WithResourceName(ResourceNameT &&value)
AWS_CONFIGSERVICE_API ConfigurationItem & operator=(Aws::Utils::Json::JsonView jsonValue)
ConfigurationItem & WithRelationships(RelationshipsT &&value)
const Aws::Vector< Relationship > & GetRelationships() const
ConfigurationItem & WithResourceId(ResourceIdT &&value)
const Aws::String & GetConfigurationItemMD5Hash() const
const Aws::Utils::DateTime & GetConfigurationItemDeliveryTime() const
ConfigurationItem & WithConfigurationStateId(ConfigurationStateIdT &&value)
ConfigurationItem & WithResourceCreationTime(ResourceCreationTimeT &&value)
void SetRecordingFrequency(RecordingFrequency value)
ConfigurationItem & AddTags(TagsKeyT &&key, TagsValueT &&value)
ConfigurationItem & WithVersion(VersionT &&value)
ConfigurationItem & WithRelatedEvents(RelatedEventsT &&value)
void SetConfigurationItemStatus(ConfigurationItemStatus value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Map< Aws::String, Aws::String > & GetSupplementaryConfiguration() const
void SetConfigurationItemMD5Hash(ConfigurationItemMD5HashT &&value)
void SetConfigurationItemDeliveryTime(ConfigurationItemDeliveryTimeT &&value)
ConfigurationItem & AddRelatedEvents(RelatedEventsT &&value)
ConfigurationItem & WithTags(TagsT &&value)
AWS_CONFIGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
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