7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/IpamState.h>
12#include <aws/ec2/model/IpamTier.h>
13#include <aws/ec2/model/IpamMeteredAccount.h>
14#include <aws/ec2/model/IpamOperatingRegion.h>
15#include <aws/ec2/model/Tag.h>
45 AWS_EC2_API
Ipam() =
default;
59 template<
typename OwnerIdT = Aws::String>
60 void SetOwnerId(OwnerIdT&& value) { m_ownerIdHasBeenSet =
true; m_ownerId = std::forward<OwnerIdT>(value); }
61 template<
typename OwnerIdT = Aws::String>
71 template<
typename IpamIdT = Aws::String>
72 void SetIpamId(IpamIdT&& value) { m_ipamIdHasBeenSet =
true; m_ipamId = std::forward<IpamIdT>(value); }
73 template<
typename IpamIdT = Aws::String>
83 template<
typename IpamArnT = Aws::String>
84 void SetIpamArn(IpamArnT&& value) { m_ipamArnHasBeenSet =
true; m_ipamArn = std::forward<IpamArnT>(value); }
85 template<
typename IpamArnT = Aws::String>
95 template<
typename IpamRegionT = Aws::String>
96 void SetIpamRegion(IpamRegionT&& value) { m_ipamRegionHasBeenSet =
true; m_ipamRegion = std::forward<IpamRegionT>(value); }
97 template<
typename IpamRegionT = Aws::String>
107 template<
typename PublicDefaultScopeIdT = Aws::String>
108 void SetPublicDefaultScopeId(PublicDefaultScopeIdT&& value) { m_publicDefaultScopeIdHasBeenSet =
true; m_publicDefaultScopeId = std::forward<PublicDefaultScopeIdT>(value); }
109 template<
typename PublicDefaultScopeIdT = Aws::String>
119 template<
typename PrivateDefaultScopeIdT = Aws::String>
120 void SetPrivateDefaultScopeId(PrivateDefaultScopeIdT&& value) { m_privateDefaultScopeIdHasBeenSet =
true; m_privateDefaultScopeId = std::forward<PrivateDefaultScopeIdT>(value); }
121 template<
typename PrivateDefaultScopeIdT = Aws::String>
134 inline void SetScopeCount(
int value) { m_scopeCountHasBeenSet =
true; m_scopeCount = value; }
144 template<
typename DescriptionT = Aws::String>
145 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
146 template<
typename DescriptionT = Aws::String>
161 template<
typename OperatingRegionsT = Aws::Vector<IpamOperatingRegion>>
162 void SetOperatingRegions(OperatingRegionsT&& value) { m_operatingRegionsHasBeenSet =
true; m_operatingRegions = std::forward<OperatingRegionsT>(value); }
163 template<
typename OperatingRegionsT = Aws::Vector<IpamOperatingRegion>>
165 template<
typename OperatingRegionsT = IpamOperatingRegion>
166 Ipam&
AddOperatingRegions(OperatingRegionsT&& value) { m_operatingRegionsHasBeenSet =
true; m_operatingRegions.emplace_back(std::forward<OperatingRegionsT>(value));
return *
this; }
189 template<
typename TagsT = Aws::Vector<Tag>>
190 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
191 template<
typename TagsT = Aws::Vector<Tag>>
193 template<
typename TagsT = Tag>
194 Ipam&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
203 template<
typename DefaultResourceDiscoveryIdT = Aws::String>
204 void SetDefaultResourceDiscoveryId(DefaultResourceDiscoveryIdT&& value) { m_defaultResourceDiscoveryIdHasBeenSet =
true; m_defaultResourceDiscoveryId = std::forward<DefaultResourceDiscoveryIdT>(value); }
205 template<
typename DefaultResourceDiscoveryIdT = Aws::String>
215 template<
typename DefaultResourceDiscoveryAssociationIdT = Aws::String>
216 void SetDefaultResourceDiscoveryAssociationId(DefaultResourceDiscoveryAssociationIdT&& value) { m_defaultResourceDiscoveryAssociationIdHasBeenSet =
true; m_defaultResourceDiscoveryAssociationId = std::forward<DefaultResourceDiscoveryAssociationIdT>(value); }
217 template<
typename DefaultResourceDiscoveryAssociationIdT = Aws::String>
237 template<
typename StateMessageT = Aws::String>
238 void SetStateMessage(StateMessageT&& value) { m_stateMessageHasBeenSet =
true; m_stateMessage = std::forward<StateMessageT>(value); }
239 template<
typename StateMessageT = Aws::String>
263 inline void SetEnablePrivateGua(
bool value) { m_enablePrivateGuaHasBeenSet =
true; m_enablePrivateGua = value; }
287 bool m_ownerIdHasBeenSet =
false;
290 bool m_ipamIdHasBeenSet =
false;
293 bool m_ipamArnHasBeenSet =
false;
296 bool m_ipamRegionHasBeenSet =
false;
299 bool m_publicDefaultScopeIdHasBeenSet =
false;
302 bool m_privateDefaultScopeIdHasBeenSet =
false;
305 bool m_scopeCountHasBeenSet =
false;
308 bool m_descriptionHasBeenSet =
false;
311 bool m_operatingRegionsHasBeenSet =
false;
314 bool m_stateHasBeenSet =
false;
317 bool m_tagsHasBeenSet =
false;
320 bool m_defaultResourceDiscoveryIdHasBeenSet =
false;
322 Aws::String m_defaultResourceDiscoveryAssociationId;
323 bool m_defaultResourceDiscoveryAssociationIdHasBeenSet =
false;
325 int m_resourceDiscoveryAssociationCount{0};
326 bool m_resourceDiscoveryAssociationCountHasBeenSet =
false;
329 bool m_stateMessageHasBeenSet =
false;
332 bool m_tierHasBeenSet =
false;
334 bool m_enablePrivateGua{
false};
335 bool m_enablePrivateGuaHasBeenSet =
false;
338 bool m_meteredAccountHasBeenSet =
false;
Ipam & WithMeteredAccount(IpamMeteredAccount value)
void SetStateMessage(StateMessageT &&value)
bool TierHasBeenSet() const
bool DescriptionHasBeenSet() const
const Aws::String & GetOwnerId() const
IpamState GetState() const
void SetIpamId(IpamIdT &&value)
void SetDefaultResourceDiscoveryId(DefaultResourceDiscoveryIdT &&value)
void SetIpamArn(IpamArnT &&value)
Ipam & WithDefaultResourceDiscoveryAssociationId(DefaultResourceDiscoveryAssociationIdT &&value)
bool GetEnablePrivateGua() const
const Aws::String & GetDefaultResourceDiscoveryId() const
bool DefaultResourceDiscoveryIdHasBeenSet() const
void SetDescription(DescriptionT &&value)
void SetResourceDiscoveryAssociationCount(int value)
bool OwnerIdHasBeenSet() const
void SetEnablePrivateGua(bool value)
bool EnablePrivateGuaHasBeenSet() const
Ipam & WithDefaultResourceDiscoveryId(DefaultResourceDiscoveryIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API Ipam(const Aws::Utils::Xml::XmlNode &xmlNode)
Ipam & WithResourceDiscoveryAssociationCount(int value)
const Aws::String & GetIpamId() const
bool PrivateDefaultScopeIdHasBeenSet() const
void SetOperatingRegions(OperatingRegionsT &&value)
int GetScopeCount() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool DefaultResourceDiscoveryAssociationIdHasBeenSet() const
AWS_EC2_API Ipam & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Tag > & GetTags() const
bool OperatingRegionsHasBeenSet() const
Ipam & WithIpamRegion(IpamRegionT &&value)
IpamMeteredAccount GetMeteredAccount() const
bool IpamArnHasBeenSet() const
Ipam & WithTags(TagsT &&value)
Ipam & WithStateMessage(StateMessageT &&value)
void SetPrivateDefaultScopeId(PrivateDefaultScopeIdT &&value)
Ipam & WithOperatingRegions(OperatingRegionsT &&value)
void SetScopeCount(int value)
void SetPublicDefaultScopeId(PublicDefaultScopeIdT &&value)
Ipam & WithIpamArn(IpamArnT &&value)
const Aws::String & GetIpamArn() const
bool TagsHasBeenSet() const
const Aws::String & GetPublicDefaultScopeId() const
Ipam & AddTags(TagsT &&value)
void SetIpamRegion(IpamRegionT &&value)
Ipam & WithState(IpamState value)
Ipam & WithPrivateDefaultScopeId(PrivateDefaultScopeIdT &&value)
Ipam & WithScopeCount(int value)
const Aws::String & GetStateMessage() const
bool IpamIdHasBeenSet() const
const Aws::String & GetIpamRegion() const
bool StateHasBeenSet() const
Ipam & WithDescription(DescriptionT &&value)
bool ResourceDiscoveryAssociationCountHasBeenSet() const
Ipam & WithIpamId(IpamIdT &&value)
AWS_EC2_API Ipam()=default
Ipam & WithOwnerId(OwnerIdT &&value)
const Aws::String & GetPrivateDefaultScopeId() const
bool StateMessageHasBeenSet() const
Ipam & WithTier(IpamTier value)
Ipam & WithEnablePrivateGua(bool value)
bool ScopeCountHasBeenSet() const
void SetDefaultResourceDiscoveryAssociationId(DefaultResourceDiscoveryAssociationIdT &&value)
void SetMeteredAccount(IpamMeteredAccount value)
void SetOwnerId(OwnerIdT &&value)
void SetTier(IpamTier value)
const Aws::String & GetDefaultResourceDiscoveryAssociationId() const
bool PublicDefaultScopeIdHasBeenSet() const
Ipam & WithPublicDefaultScopeId(PublicDefaultScopeIdT &&value)
Ipam & AddOperatingRegions(OperatingRegionsT &&value)
const Aws::Vector< IpamOperatingRegion > & GetOperatingRegions() const
void SetState(IpamState value)
bool IpamRegionHasBeenSet() const
int GetResourceDiscoveryAssociationCount() const
void SetTags(TagsT &&value)
bool MeteredAccountHasBeenSet() const
const Aws::String & GetDescription() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream