AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
IpamPolicyDocument.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/IpamPolicyAllocationRule.h>
12#include <aws/ec2/model/IpamPolicyResourceType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
31 public:
32 AWS_EC2_API IpamPolicyDocument() = default;
33 AWS_EC2_API IpamPolicyDocument(const Aws::Utils::Xml::XmlNode& xmlNode);
35
36 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
43 inline const Aws::String& GetIpamPolicyId() const { return m_ipamPolicyId; }
44 inline bool IpamPolicyIdHasBeenSet() const { return m_ipamPolicyIdHasBeenSet; }
45 template <typename IpamPolicyIdT = Aws::String>
46 void SetIpamPolicyId(IpamPolicyIdT&& value) {
47 m_ipamPolicyIdHasBeenSet = true;
48 m_ipamPolicyId = std::forward<IpamPolicyIdT>(value);
49 }
50 template <typename IpamPolicyIdT = Aws::String>
51 IpamPolicyDocument& WithIpamPolicyId(IpamPolicyIdT&& value) {
52 SetIpamPolicyId(std::forward<IpamPolicyIdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetLocale() const { return m_locale; }
62 inline bool LocaleHasBeenSet() const { return m_localeHasBeenSet; }
63 template <typename LocaleT = Aws::String>
64 void SetLocale(LocaleT&& value) {
65 m_localeHasBeenSet = true;
66 m_locale = std::forward<LocaleT>(value);
67 }
68 template <typename LocaleT = Aws::String>
69 IpamPolicyDocument& WithLocale(LocaleT&& value) {
70 SetLocale(std::forward<LocaleT>(value));
71 return *this;
72 }
74
76
82 inline IpamPolicyResourceType GetResourceType() const { return m_resourceType; }
83 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
85 m_resourceTypeHasBeenSet = true;
86 m_resourceType = value;
87 }
89 SetResourceType(value);
90 return *this;
91 }
93
95
101 inline const Aws::Vector<IpamPolicyAllocationRule>& GetAllocationRules() const { return m_allocationRules; }
102 inline bool AllocationRulesHasBeenSet() const { return m_allocationRulesHasBeenSet; }
103 template <typename AllocationRulesT = Aws::Vector<IpamPolicyAllocationRule>>
104 void SetAllocationRules(AllocationRulesT&& value) {
105 m_allocationRulesHasBeenSet = true;
106 m_allocationRules = std::forward<AllocationRulesT>(value);
107 }
108 template <typename AllocationRulesT = Aws::Vector<IpamPolicyAllocationRule>>
109 IpamPolicyDocument& WithAllocationRules(AllocationRulesT&& value) {
110 SetAllocationRules(std::forward<AllocationRulesT>(value));
111 return *this;
112 }
113 template <typename AllocationRulesT = IpamPolicyAllocationRule>
114 IpamPolicyDocument& AddAllocationRules(AllocationRulesT&& value) {
115 m_allocationRulesHasBeenSet = true;
116 m_allocationRules.emplace_back(std::forward<AllocationRulesT>(value));
117 return *this;
118 }
120 private:
121 Aws::String m_ipamPolicyId;
122
123 Aws::String m_locale;
124
126
128 bool m_ipamPolicyIdHasBeenSet = false;
129 bool m_localeHasBeenSet = false;
130 bool m_resourceTypeHasBeenSet = false;
131 bool m_allocationRulesHasBeenSet = false;
132};
133
134} // namespace Model
135} // namespace EC2
136} // namespace Aws
void SetAllocationRules(AllocationRulesT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::String & GetIpamPolicyId() const
AWS_EC2_API IpamPolicyDocument(const Aws::Utils::Xml::XmlNode &xmlNode)
IpamPolicyDocument & AddAllocationRules(AllocationRulesT &&value)
IpamPolicyDocument & WithIpamPolicyId(IpamPolicyIdT &&value)
const Aws::Vector< IpamPolicyAllocationRule > & GetAllocationRules() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API IpamPolicyDocument & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API IpamPolicyDocument()=default
void SetIpamPolicyId(IpamPolicyIdT &&value)
IpamPolicyDocument & WithAllocationRules(AllocationRulesT &&value)
IpamPolicyResourceType GetResourceType() const
IpamPolicyDocument & WithLocale(LocaleT &&value)
IpamPolicyDocument & WithResourceType(IpamPolicyResourceType value)
const Aws::String & GetLocale() const
void SetResourceType(IpamPolicyResourceType value)
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