AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
VpcEncryptionControl.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/Tag.h>
12#include <aws/ec2/model/VpcEncryptionControlExclusions.h>
13#include <aws/ec2/model/VpcEncryptionControlMode.h>
14#include <aws/ec2/model/VpcEncryptionControlState.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Xml {
21class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2 {
25namespace Model {
26
37 public:
38 AWS_EC2_API VpcEncryptionControl() = default;
41
42 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
44
46
49 inline const Aws::String& GetVpcId() const { return m_vpcId; }
50 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
51 template <typename VpcIdT = Aws::String>
52 void SetVpcId(VpcIdT&& value) {
53 m_vpcIdHasBeenSet = true;
54 m_vpcId = std::forward<VpcIdT>(value);
55 }
56 template <typename VpcIdT = Aws::String>
58 SetVpcId(std::forward<VpcIdT>(value));
59 return *this;
60 }
62
64
67 inline const Aws::String& GetVpcEncryptionControlId() const { return m_vpcEncryptionControlId; }
68 inline bool VpcEncryptionControlIdHasBeenSet() const { return m_vpcEncryptionControlIdHasBeenSet; }
69 template <typename VpcEncryptionControlIdT = Aws::String>
70 void SetVpcEncryptionControlId(VpcEncryptionControlIdT&& value) {
71 m_vpcEncryptionControlIdHasBeenSet = true;
72 m_vpcEncryptionControlId = std::forward<VpcEncryptionControlIdT>(value);
73 }
74 template <typename VpcEncryptionControlIdT = Aws::String>
75 VpcEncryptionControl& WithVpcEncryptionControlId(VpcEncryptionControlIdT&& value) {
76 SetVpcEncryptionControlId(std::forward<VpcEncryptionControlIdT>(value));
77 return *this;
78 }
80
82
85 inline VpcEncryptionControlMode GetMode() const { return m_mode; }
86 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
87 inline void SetMode(VpcEncryptionControlMode value) {
88 m_modeHasBeenSet = true;
89 m_mode = value;
90 }
92 SetMode(value);
93 return *this;
94 }
96
98
101 inline VpcEncryptionControlState GetState() const { return m_state; }
102 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
104 m_stateHasBeenSet = true;
105 m_state = value;
106 }
108 SetState(value);
109 return *this;
110 }
112
114
118 inline const Aws::String& GetStateMessage() const { return m_stateMessage; }
119 inline bool StateMessageHasBeenSet() const { return m_stateMessageHasBeenSet; }
120 template <typename StateMessageT = Aws::String>
121 void SetStateMessage(StateMessageT&& value) {
122 m_stateMessageHasBeenSet = true;
123 m_stateMessage = std::forward<StateMessageT>(value);
124 }
125 template <typename StateMessageT = Aws::String>
126 VpcEncryptionControl& WithStateMessage(StateMessageT&& value) {
127 SetStateMessage(std::forward<StateMessageT>(value));
128 return *this;
129 }
131
133
137 inline const VpcEncryptionControlExclusions& GetResourceExclusions() const { return m_resourceExclusions; }
138 inline bool ResourceExclusionsHasBeenSet() const { return m_resourceExclusionsHasBeenSet; }
139 template <typename ResourceExclusionsT = VpcEncryptionControlExclusions>
140 void SetResourceExclusions(ResourceExclusionsT&& value) {
141 m_resourceExclusionsHasBeenSet = true;
142 m_resourceExclusions = std::forward<ResourceExclusionsT>(value);
143 }
144 template <typename ResourceExclusionsT = VpcEncryptionControlExclusions>
145 VpcEncryptionControl& WithResourceExclusions(ResourceExclusionsT&& value) {
146 SetResourceExclusions(std::forward<ResourceExclusionsT>(value));
147 return *this;
148 }
150
152
155 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
156 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
157 template <typename TagsT = Aws::Vector<Tag>>
158 void SetTags(TagsT&& value) {
159 m_tagsHasBeenSet = true;
160 m_tags = std::forward<TagsT>(value);
161 }
162 template <typename TagsT = Aws::Vector<Tag>>
164 SetTags(std::forward<TagsT>(value));
165 return *this;
166 }
167 template <typename TagsT = Tag>
169 m_tagsHasBeenSet = true;
170 m_tags.emplace_back(std::forward<TagsT>(value));
171 return *this;
172 }
174 private:
175 Aws::String m_vpcId;
176
177 Aws::String m_vpcEncryptionControlId;
178
180
182
183 Aws::String m_stateMessage;
184
185 VpcEncryptionControlExclusions m_resourceExclusions;
186
187 Aws::Vector<Tag> m_tags;
188 bool m_vpcIdHasBeenSet = false;
189 bool m_vpcEncryptionControlIdHasBeenSet = false;
190 bool m_modeHasBeenSet = false;
191 bool m_stateHasBeenSet = false;
192 bool m_stateMessageHasBeenSet = false;
193 bool m_resourceExclusionsHasBeenSet = false;
194 bool m_tagsHasBeenSet = false;
195};
196
197} // namespace Model
198} // namespace EC2
199} // namespace Aws
const Aws::Vector< Tag > & GetTags() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpcEncryptionControlState GetState() const
VpcEncryptionControl & WithStateMessage(StateMessageT &&value)
void SetState(VpcEncryptionControlState value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpcEncryptionControl & WithMode(VpcEncryptionControlMode value)
void SetResourceExclusions(ResourceExclusionsT &&value)
VpcEncryptionControl & WithState(VpcEncryptionControlState value)
const Aws::String & GetVpcEncryptionControlId() const
void SetVpcEncryptionControlId(VpcEncryptionControlIdT &&value)
const Aws::String & GetStateMessage() const
VpcEncryptionControlMode GetMode() const
AWS_EC2_API VpcEncryptionControl & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcEncryptionControl & WithTags(TagsT &&value)
AWS_EC2_API VpcEncryptionControl()=default
void SetStateMessage(StateMessageT &&value)
VpcEncryptionControl & WithVpcId(VpcIdT &&value)
const VpcEncryptionControlExclusions & GetResourceExclusions() const
AWS_EC2_API VpcEncryptionControl(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcEncryptionControl & WithVpcEncryptionControlId(VpcEncryptionControlIdT &&value)
void SetMode(VpcEncryptionControlMode value)
VpcEncryptionControl & AddTags(TagsT &&value)
VpcEncryptionControl & WithResourceExclusions(ResourceExclusionsT &&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