AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
RelatedResource.h
1
6#pragma once
7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/model/ResourceType.h>
9#include <aws/iot/model/ResourceIdentifier.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace IoT
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_IOT_API RelatedResource() = default;
41
42
44
47 inline ResourceType GetResourceType() const { return m_resourceType; }
48 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
49 inline void SetResourceType(ResourceType value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
50 inline RelatedResource& WithResourceType(ResourceType value) { SetResourceType(value); return *this;}
52
54
57 inline const ResourceIdentifier& GetResourceIdentifier() const { return m_resourceIdentifier; }
58 inline bool ResourceIdentifierHasBeenSet() const { return m_resourceIdentifierHasBeenSet; }
59 template<typename ResourceIdentifierT = ResourceIdentifier>
60 void SetResourceIdentifier(ResourceIdentifierT&& value) { m_resourceIdentifierHasBeenSet = true; m_resourceIdentifier = std::forward<ResourceIdentifierT>(value); }
61 template<typename ResourceIdentifierT = ResourceIdentifier>
62 RelatedResource& WithResourceIdentifier(ResourceIdentifierT&& value) { SetResourceIdentifier(std::forward<ResourceIdentifierT>(value)); return *this;}
64
66
69 inline const Aws::Map<Aws::String, Aws::String>& GetAdditionalInfo() const { return m_additionalInfo; }
70 inline bool AdditionalInfoHasBeenSet() const { return m_additionalInfoHasBeenSet; }
71 template<typename AdditionalInfoT = Aws::Map<Aws::String, Aws::String>>
72 void SetAdditionalInfo(AdditionalInfoT&& value) { m_additionalInfoHasBeenSet = true; m_additionalInfo = std::forward<AdditionalInfoT>(value); }
73 template<typename AdditionalInfoT = Aws::Map<Aws::String, Aws::String>>
74 RelatedResource& WithAdditionalInfo(AdditionalInfoT&& value) { SetAdditionalInfo(std::forward<AdditionalInfoT>(value)); return *this;}
75 template<typename AdditionalInfoKeyT = Aws::String, typename AdditionalInfoValueT = Aws::String>
76 RelatedResource& AddAdditionalInfo(AdditionalInfoKeyT&& key, AdditionalInfoValueT&& value) {
77 m_additionalInfoHasBeenSet = true; m_additionalInfo.emplace(std::forward<AdditionalInfoKeyT>(key), std::forward<AdditionalInfoValueT>(value)); return *this;
78 }
80 private:
81
82 ResourceType m_resourceType{ResourceType::NOT_SET};
83 bool m_resourceTypeHasBeenSet = false;
84
85 ResourceIdentifier m_resourceIdentifier;
86 bool m_resourceIdentifierHasBeenSet = false;
87
89 bool m_additionalInfoHasBeenSet = false;
90 };
91
92} // namespace Model
93} // namespace IoT
94} // namespace Aws
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Aws::Utils::Json::JsonValue JsonValue