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>
25namespace ResilienceHub {
56 template <
typename AdditionalInfoT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
58 m_additionalInfoHasBeenSet =
true;
59 m_additionalInfo = std::forward<AdditionalInfoT>(value);
61 template <
typename AdditionalInfoT = Aws::Map<Aws::String, Aws::Vector<Aws::String>>>
66 template <
typename AdditionalInfoKeyT = Aws::String,
typename AdditionalInfoValueT = Aws::Vector<Aws::String>>
68 m_additionalInfoHasBeenSet =
true;
69 m_additionalInfo.emplace(std::forward<AdditionalInfoKeyT>(key), std::forward<AdditionalInfoValueT>(value));
80 template <
typename AppComponentsT = Aws::Vector<AppComponent>>
82 m_appComponentsHasBeenSet =
true;
83 m_appComponents = std::forward<AppComponentsT>(value);
85 template <
typename AppComponentsT = Aws::Vector<AppComponent>>
90 template <
typename AppComponentsT = AppComponent>
92 m_appComponentsHasBeenSet =
true;
93 m_appComponents.emplace_back(std::forward<AppComponentsT>(value));
105 m_excludedHasBeenSet =
true;
120 template <
typename LogicalResourceIdT = LogicalResourceId>
122 m_logicalResourceIdHasBeenSet =
true;
123 m_logicalResourceId = std::forward<LogicalResourceIdT>(value);
125 template <
typename LogicalResourceIdT = LogicalResourceId>
138 template <
typename ParentResourceNameT = Aws::String>
140 m_parentResourceNameHasBeenSet =
true;
141 m_parentResourceName = std::forward<ParentResourceNameT>(value);
143 template <
typename ParentResourceNameT = Aws::String>
156 template <
typename PhysicalResourceIdT = PhysicalResourceId>
158 m_physicalResourceIdHasBeenSet =
true;
159 m_physicalResourceId = std::forward<PhysicalResourceIdT>(value);
161 template <
typename PhysicalResourceIdT = PhysicalResourceId>
174 template <
typename ResourceNameT = Aws::String>
176 m_resourceNameHasBeenSet =
true;
177 m_resourceName = std::forward<ResourceNameT>(value);
179 template <
typename ResourceNameT = Aws::String>
192 template <
typename ResourceTypeT = Aws::String>
194 m_resourceTypeHasBeenSet =
true;
195 m_resourceType = std::forward<ResourceTypeT>(value);
197 template <
typename ResourceTypeT = Aws::String>
211 m_sourceTypeHasBeenSet =
true;
212 m_sourceType = value;
224 bool m_excluded{
false};
226 LogicalResourceId m_logicalResourceId;
230 PhysicalResourceId m_physicalResourceId;
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;
bool ParentResourceNameHasBeenSet() const
PhysicalResource & WithAdditionalInfo(AdditionalInfoT &&value)
const Aws::String & GetResourceType() const
PhysicalResource & AddAppComponents(AppComponentsT &&value)
AWS_RESILIENCEHUB_API PhysicalResource()=default
void SetResourceType(ResourceTypeT &&value)
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)
bool ResourceNameHasBeenSet() const
bool ResourceTypeHasBeenSet() const
PhysicalResource & WithSourceType(ResourceSourceType value)
bool AppComponentsHasBeenSet() const
AWS_RESILIENCEHUB_API PhysicalResource & operator=(Aws::Utils::Json::JsonView jsonValue)
ResourceSourceType GetSourceType() const
void SetParentResourceName(ParentResourceNameT &&value)
void SetExcluded(bool value)
void SetAppComponents(AppComponentsT &&value)
const LogicalResourceId & GetLogicalResourceId() const
void SetResourceName(ResourceNameT &&value)
void SetPhysicalResourceId(PhysicalResourceIdT &&value)
bool PhysicalResourceIdHasBeenSet() const
bool AdditionalInfoHasBeenSet() const
PhysicalResource & WithResourceType(ResourceTypeT &&value)
const Aws::String & GetParentResourceName() const
void SetAdditionalInfo(AdditionalInfoT &&value)
void SetLogicalResourceId(LogicalResourceIdT &&value)
bool ExcludedHasBeenSet() const
PhysicalResource & WithExcluded(bool value)
PhysicalResource & WithPhysicalResourceId(PhysicalResourceIdT &&value)
const PhysicalResourceId & GetPhysicalResourceId() const
bool LogicalResourceIdHasBeenSet() const
PhysicalResource & WithAppComponents(AppComponentsT &&value)
PhysicalResource & AddAdditionalInfo(AdditionalInfoKeyT &&key, AdditionalInfoValueT &&value)
const Aws::String & GetResourceName() const
bool SourceTypeHasBeenSet() const
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