AWS SDK for C++

AWS SDK for C++ Version 1.11.740

Loading...
Searching...
No Matches
PhysicalResource.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/resiliencehub/ResilienceHub_EXPORTS.h>
11#include <aws/resiliencehub/model/AppComponent.h>
12#include <aws/resiliencehub/model/LogicalResourceId.h>
13#include <aws/resiliencehub/model/PhysicalResourceId.h>
14#include <aws/resiliencehub/model/ResourceSourceType.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace ResilienceHub {
26namespace Model {
27
36 public:
37 AWS_RESILIENCEHUB_API PhysicalResource() = default;
38 AWS_RESILIENCEHUB_API PhysicalResource(Aws::Utils::Json::JsonView jsonValue);
39 AWS_RESILIENCEHUB_API PhysicalResource& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_RESILIENCEHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
54 inline const Aws::Map<Aws::String, Aws::Vector<Aws::String>>& GetAdditionalInfo() const { return m_additionalInfo; }
55 inline bool AdditionalInfoHasBeenSet() const { return m_additionalInfoHasBeenSet; }
56 template <typename AdditionalInfoT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
57 void SetAdditionalInfo(AdditionalInfoT&& value) {
58 m_additionalInfoHasBeenSet = true;
59 m_additionalInfo = std::forward<AdditionalInfoT>(value);
60 }
61 template <typename AdditionalInfoT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
62 PhysicalResource& WithAdditionalInfo(AdditionalInfoT&& value) {
63 SetAdditionalInfo(std::forward<AdditionalInfoT>(value));
64 return *this;
65 }
66 template <typename AdditionalInfoKeyT = Aws::String, typename AdditionalInfoValueT = Aws::Vector<Aws::String>>
67 PhysicalResource& AddAdditionalInfo(AdditionalInfoKeyT&& key, AdditionalInfoValueT&& value) {
68 m_additionalInfoHasBeenSet = true;
69 m_additionalInfo.emplace(std::forward<AdditionalInfoKeyT>(key), std::forward<AdditionalInfoValueT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::Vector<AppComponent>& GetAppComponents() const { return m_appComponents; }
79 inline bool AppComponentsHasBeenSet() const { return m_appComponentsHasBeenSet; }
80 template <typename AppComponentsT = Aws::Vector<AppComponent>>
81 void SetAppComponents(AppComponentsT&& value) {
82 m_appComponentsHasBeenSet = true;
83 m_appComponents = std::forward<AppComponentsT>(value);
84 }
85 template <typename AppComponentsT = Aws::Vector<AppComponent>>
86 PhysicalResource& WithAppComponents(AppComponentsT&& value) {
87 SetAppComponents(std::forward<AppComponentsT>(value));
88 return *this;
89 }
90 template <typename AppComponentsT = AppComponent>
91 PhysicalResource& AddAppComponents(AppComponentsT&& value) {
92 m_appComponentsHasBeenSet = true;
93 m_appComponents.emplace_back(std::forward<AppComponentsT>(value));
94 return *this;
95 }
97
99
102 inline bool GetExcluded() const { return m_excluded; }
103 inline bool ExcludedHasBeenSet() const { return m_excludedHasBeenSet; }
104 inline void SetExcluded(bool value) {
105 m_excludedHasBeenSet = true;
106 m_excluded = value;
107 }
108 inline PhysicalResource& WithExcluded(bool value) {
109 SetExcluded(value);
110 return *this;
111 }
113
115
118 inline const LogicalResourceId& GetLogicalResourceId() const { return m_logicalResourceId; }
119 inline bool LogicalResourceIdHasBeenSet() const { return m_logicalResourceIdHasBeenSet; }
120 template <typename LogicalResourceIdT = LogicalResourceId>
121 void SetLogicalResourceId(LogicalResourceIdT&& value) {
122 m_logicalResourceIdHasBeenSet = true;
123 m_logicalResourceId = std::forward<LogicalResourceIdT>(value);
124 }
125 template <typename LogicalResourceIdT = LogicalResourceId>
126 PhysicalResource& WithLogicalResourceId(LogicalResourceIdT&& value) {
127 SetLogicalResourceId(std::forward<LogicalResourceIdT>(value));
128 return *this;
129 }
131
133
136 inline const Aws::String& GetParentResourceName() const { return m_parentResourceName; }
137 inline bool ParentResourceNameHasBeenSet() const { return m_parentResourceNameHasBeenSet; }
138 template <typename ParentResourceNameT = Aws::String>
139 void SetParentResourceName(ParentResourceNameT&& value) {
140 m_parentResourceNameHasBeenSet = true;
141 m_parentResourceName = std::forward<ParentResourceNameT>(value);
142 }
143 template <typename ParentResourceNameT = Aws::String>
144 PhysicalResource& WithParentResourceName(ParentResourceNameT&& value) {
145 SetParentResourceName(std::forward<ParentResourceNameT>(value));
146 return *this;
147 }
149
151
154 inline const PhysicalResourceId& GetPhysicalResourceId() const { return m_physicalResourceId; }
155 inline bool PhysicalResourceIdHasBeenSet() const { return m_physicalResourceIdHasBeenSet; }
156 template <typename PhysicalResourceIdT = PhysicalResourceId>
157 void SetPhysicalResourceId(PhysicalResourceIdT&& value) {
158 m_physicalResourceIdHasBeenSet = true;
159 m_physicalResourceId = std::forward<PhysicalResourceIdT>(value);
160 }
161 template <typename PhysicalResourceIdT = PhysicalResourceId>
162 PhysicalResource& WithPhysicalResourceId(PhysicalResourceIdT&& value) {
163 SetPhysicalResourceId(std::forward<PhysicalResourceIdT>(value));
164 return *this;
165 }
167
169
172 inline const Aws::String& GetResourceName() const { return m_resourceName; }
173 inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; }
174 template <typename ResourceNameT = Aws::String>
175 void SetResourceName(ResourceNameT&& value) {
176 m_resourceNameHasBeenSet = true;
177 m_resourceName = std::forward<ResourceNameT>(value);
178 }
179 template <typename ResourceNameT = Aws::String>
180 PhysicalResource& WithResourceName(ResourceNameT&& value) {
181 SetResourceName(std::forward<ResourceNameT>(value));
182 return *this;
183 }
185
187
190 inline const Aws::String& GetResourceType() const { return m_resourceType; }
191 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
192 template <typename ResourceTypeT = Aws::String>
193 void SetResourceType(ResourceTypeT&& value) {
194 m_resourceTypeHasBeenSet = true;
195 m_resourceType = std::forward<ResourceTypeT>(value);
196 }
197 template <typename ResourceTypeT = Aws::String>
198 PhysicalResource& WithResourceType(ResourceTypeT&& value) {
199 SetResourceType(std::forward<ResourceTypeT>(value));
200 return *this;
201 }
203
205
208 inline ResourceSourceType GetSourceType() const { return m_sourceType; }
209 inline bool SourceTypeHasBeenSet() const { return m_sourceTypeHasBeenSet; }
211 m_sourceTypeHasBeenSet = true;
212 m_sourceType = value;
213 }
215 SetSourceType(value);
216 return *this;
217 }
219 private:
221
222 Aws::Vector<AppComponent> m_appComponents;
223
224 bool m_excluded{false};
225
226 LogicalResourceId m_logicalResourceId;
227
228 Aws::String m_parentResourceName;
229
230 PhysicalResourceId m_physicalResourceId;
231
232 Aws::String m_resourceName;
233
234 Aws::String m_resourceType;
235
237 bool m_additionalInfoHasBeenSet = false;
238 bool m_appComponentsHasBeenSet = false;
239 bool m_excludedHasBeenSet = false;
240 bool m_logicalResourceIdHasBeenSet = false;
241 bool m_parentResourceNameHasBeenSet = false;
242 bool m_physicalResourceIdHasBeenSet = false;
243 bool m_resourceNameHasBeenSet = false;
244 bool m_resourceTypeHasBeenSet = false;
245 bool m_sourceTypeHasBeenSet = false;
246};
247
248} // namespace Model
249} // namespace ResilienceHub
250} // namespace Aws
PhysicalResource & WithAdditionalInfo(AdditionalInfoT &&value)
PhysicalResource & AddAppComponents(AppComponentsT &&value)
AWS_RESILIENCEHUB_API PhysicalResource()=default
const Aws::Vector< AppComponent > & GetAppComponents() const
AWS_RESILIENCEHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_RESILIENCEHUB_API PhysicalResource(Aws::Utils::Json::JsonView jsonValue)
void SetSourceType(ResourceSourceType value)
PhysicalResource & WithParentResourceName(ParentResourceNameT &&value)
PhysicalResource & WithLogicalResourceId(LogicalResourceIdT &&value)
PhysicalResource & WithSourceType(ResourceSourceType value)
AWS_RESILIENCEHUB_API PhysicalResource & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetParentResourceName(ParentResourceNameT &&value)
void SetAppComponents(AppComponentsT &&value)
const LogicalResourceId & GetLogicalResourceId() const
void SetPhysicalResourceId(PhysicalResourceIdT &&value)
PhysicalResource & WithResourceType(ResourceTypeT &&value)
const Aws::String & GetParentResourceName() const
void SetAdditionalInfo(AdditionalInfoT &&value)
void SetLogicalResourceId(LogicalResourceIdT &&value)
PhysicalResource & WithExcluded(bool value)
PhysicalResource & WithPhysicalResourceId(PhysicalResourceIdT &&value)
const PhysicalResourceId & GetPhysicalResourceId() const
PhysicalResource & WithAppComponents(AppComponentsT &&value)
PhysicalResource & AddAdditionalInfo(AdditionalInfoKeyT &&key, AdditionalInfoValueT &&value)
PhysicalResource & WithResourceName(ResourceNameT &&value)
const Aws::Map< Aws::String, Aws::Vector< Aws::String > > & GetAdditionalInfo() 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