AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PhysicalResource.h
1
6#pragma once
7#include <aws/resiliencehub/ResilienceHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/resiliencehub/model/LogicalResourceId.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/resiliencehub/model/PhysicalResourceId.h>
13#include <aws/resiliencehub/model/ResourceSourceType.h>
14#include <aws/resiliencehub/model/AppComponent.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 ResilienceHub
28{
29namespace Model
30{
31
40 {
41 public:
42 AWS_RESILIENCEHUB_API PhysicalResource() = default;
43 AWS_RESILIENCEHUB_API PhysicalResource(Aws::Utils::Json::JsonView jsonValue);
44 AWS_RESILIENCEHUB_API PhysicalResource& operator=(Aws::Utils::Json::JsonView jsonValue);
45 AWS_RESILIENCEHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
60 inline const Aws::Map<Aws::String, Aws::Vector<Aws::String>>& GetAdditionalInfo() const { return m_additionalInfo; }
61 inline bool AdditionalInfoHasBeenSet() const { return m_additionalInfoHasBeenSet; }
62 template<typename AdditionalInfoT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
63 void SetAdditionalInfo(AdditionalInfoT&& value) { m_additionalInfoHasBeenSet = true; m_additionalInfo = std::forward<AdditionalInfoT>(value); }
64 template<typename AdditionalInfoT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
65 PhysicalResource& WithAdditionalInfo(AdditionalInfoT&& value) { SetAdditionalInfo(std::forward<AdditionalInfoT>(value)); return *this;}
66 template<typename AdditionalInfoKeyT = Aws::String, typename AdditionalInfoValueT = Aws::Vector<Aws::String>>
67 PhysicalResource& AddAdditionalInfo(AdditionalInfoKeyT&& key, AdditionalInfoValueT&& value) {
68 m_additionalInfoHasBeenSet = true; m_additionalInfo.emplace(std::forward<AdditionalInfoKeyT>(key), std::forward<AdditionalInfoValueT>(value)); return *this;
69 }
71
73
76 inline const Aws::Vector<AppComponent>& GetAppComponents() const { return m_appComponents; }
77 inline bool AppComponentsHasBeenSet() const { return m_appComponentsHasBeenSet; }
78 template<typename AppComponentsT = Aws::Vector<AppComponent>>
79 void SetAppComponents(AppComponentsT&& value) { m_appComponentsHasBeenSet = true; m_appComponents = std::forward<AppComponentsT>(value); }
80 template<typename AppComponentsT = Aws::Vector<AppComponent>>
81 PhysicalResource& WithAppComponents(AppComponentsT&& value) { SetAppComponents(std::forward<AppComponentsT>(value)); return *this;}
82 template<typename AppComponentsT = AppComponent>
83 PhysicalResource& AddAppComponents(AppComponentsT&& value) { m_appComponentsHasBeenSet = true; m_appComponents.emplace_back(std::forward<AppComponentsT>(value)); return *this; }
85
87
90 inline bool GetExcluded() const { return m_excluded; }
91 inline bool ExcludedHasBeenSet() const { return m_excludedHasBeenSet; }
92 inline void SetExcluded(bool value) { m_excludedHasBeenSet = true; m_excluded = value; }
93 inline PhysicalResource& WithExcluded(bool value) { SetExcluded(value); return *this;}
95
97
100 inline const LogicalResourceId& GetLogicalResourceId() const { return m_logicalResourceId; }
101 inline bool LogicalResourceIdHasBeenSet() const { return m_logicalResourceIdHasBeenSet; }
102 template<typename LogicalResourceIdT = LogicalResourceId>
103 void SetLogicalResourceId(LogicalResourceIdT&& value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId = std::forward<LogicalResourceIdT>(value); }
104 template<typename LogicalResourceIdT = LogicalResourceId>
105 PhysicalResource& WithLogicalResourceId(LogicalResourceIdT&& value) { SetLogicalResourceId(std::forward<LogicalResourceIdT>(value)); return *this;}
107
109
112 inline const Aws::String& GetParentResourceName() const { return m_parentResourceName; }
113 inline bool ParentResourceNameHasBeenSet() const { return m_parentResourceNameHasBeenSet; }
114 template<typename ParentResourceNameT = Aws::String>
115 void SetParentResourceName(ParentResourceNameT&& value) { m_parentResourceNameHasBeenSet = true; m_parentResourceName = std::forward<ParentResourceNameT>(value); }
116 template<typename ParentResourceNameT = Aws::String>
117 PhysicalResource& WithParentResourceName(ParentResourceNameT&& value) { SetParentResourceName(std::forward<ParentResourceNameT>(value)); return *this;}
119
121
124 inline const PhysicalResourceId& GetPhysicalResourceId() const { return m_physicalResourceId; }
125 inline bool PhysicalResourceIdHasBeenSet() const { return m_physicalResourceIdHasBeenSet; }
126 template<typename PhysicalResourceIdT = PhysicalResourceId>
127 void SetPhysicalResourceId(PhysicalResourceIdT&& value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId = std::forward<PhysicalResourceIdT>(value); }
128 template<typename PhysicalResourceIdT = PhysicalResourceId>
129 PhysicalResource& WithPhysicalResourceId(PhysicalResourceIdT&& value) { SetPhysicalResourceId(std::forward<PhysicalResourceIdT>(value)); return *this;}
131
133
136 inline const Aws::String& GetResourceName() const { return m_resourceName; }
137 inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; }
138 template<typename ResourceNameT = Aws::String>
139 void SetResourceName(ResourceNameT&& value) { m_resourceNameHasBeenSet = true; m_resourceName = std::forward<ResourceNameT>(value); }
140 template<typename ResourceNameT = Aws::String>
141 PhysicalResource& WithResourceName(ResourceNameT&& value) { SetResourceName(std::forward<ResourceNameT>(value)); return *this;}
143
145
148 inline const Aws::String& GetResourceType() const { return m_resourceType; }
149 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
150 template<typename ResourceTypeT = Aws::String>
151 void SetResourceType(ResourceTypeT&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::forward<ResourceTypeT>(value); }
152 template<typename ResourceTypeT = Aws::String>
153 PhysicalResource& WithResourceType(ResourceTypeT&& value) { SetResourceType(std::forward<ResourceTypeT>(value)); return *this;}
155
157
160 inline ResourceSourceType GetSourceType() const { return m_sourceType; }
161 inline bool SourceTypeHasBeenSet() const { return m_sourceTypeHasBeenSet; }
162 inline void SetSourceType(ResourceSourceType value) { m_sourceTypeHasBeenSet = true; m_sourceType = value; }
163 inline PhysicalResource& WithSourceType(ResourceSourceType value) { SetSourceType(value); return *this;}
165 private:
166
168 bool m_additionalInfoHasBeenSet = false;
169
170 Aws::Vector<AppComponent> m_appComponents;
171 bool m_appComponentsHasBeenSet = false;
172
173 bool m_excluded{false};
174 bool m_excludedHasBeenSet = false;
175
176 LogicalResourceId m_logicalResourceId;
177 bool m_logicalResourceIdHasBeenSet = false;
178
179 Aws::String m_parentResourceName;
180 bool m_parentResourceNameHasBeenSet = false;
181
182 PhysicalResourceId m_physicalResourceId;
183 bool m_physicalResourceIdHasBeenSet = false;
184
185 Aws::String m_resourceName;
186 bool m_resourceNameHasBeenSet = false;
187
188 Aws::String m_resourceType;
189 bool m_resourceTypeHasBeenSet = false;
190
192 bool m_sourceTypeHasBeenSet = false;
193 };
194
195} // namespace Model
196} // namespace ResilienceHub
197} // 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