AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
VpcBlockPublicAccessExclusion.h
1
6#pragma once
7#include <aws/core/utils/DateTime.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/EC2_EXPORTS.h>
12#include <aws/ec2/model/InternetGatewayExclusionMode.h>
13#include <aws/ec2/model/Tag.h>
14#include <aws/ec2/model/VpcBlockPublicAccessExclusionState.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
40 public:
41 AWS_EC2_API VpcBlockPublicAccessExclusion() = default;
44
45 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
47
49
52 inline const Aws::String& GetExclusionId() const { return m_exclusionId; }
53 inline bool ExclusionIdHasBeenSet() const { return m_exclusionIdHasBeenSet; }
54 template <typename ExclusionIdT = Aws::String>
55 void SetExclusionId(ExclusionIdT&& value) {
56 m_exclusionIdHasBeenSet = true;
57 m_exclusionId = std::forward<ExclusionIdT>(value);
58 }
59 template <typename ExclusionIdT = Aws::String>
61 SetExclusionId(std::forward<ExclusionIdT>(value));
62 return *this;
63 }
65
67
75 inline InternetGatewayExclusionMode GetInternetGatewayExclusionMode() const { return m_internetGatewayExclusionMode; }
76 inline bool InternetGatewayExclusionModeHasBeenSet() const { return m_internetGatewayExclusionModeHasBeenSet; }
78 m_internetGatewayExclusionModeHasBeenSet = true;
79 m_internetGatewayExclusionMode = value;
80 }
83 return *this;
84 }
86
88
91 inline const Aws::String& GetResourceArn() const { return m_resourceArn; }
92 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
93 template <typename ResourceArnT = Aws::String>
94 void SetResourceArn(ResourceArnT&& value) {
95 m_resourceArnHasBeenSet = true;
96 m_resourceArn = std::forward<ResourceArnT>(value);
97 }
98 template <typename ResourceArnT = Aws::String>
100 SetResourceArn(std::forward<ResourceArnT>(value));
101 return *this;
102 }
104
106
109 inline VpcBlockPublicAccessExclusionState GetState() const { return m_state; }
110 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
112 m_stateHasBeenSet = true;
113 m_state = value;
114 }
116 SetState(value);
117 return *this;
118 }
120
122
125 inline const Aws::String& GetReason() const { return m_reason; }
126 inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
127 template <typename ReasonT = Aws::String>
128 void SetReason(ReasonT&& value) {
129 m_reasonHasBeenSet = true;
130 m_reason = std::forward<ReasonT>(value);
131 }
132 template <typename ReasonT = Aws::String>
134 SetReason(std::forward<ReasonT>(value));
135 return *this;
136 }
138
140
143 inline const Aws::Utils::DateTime& GetCreationTimestamp() const { return m_creationTimestamp; }
144 inline bool CreationTimestampHasBeenSet() const { return m_creationTimestampHasBeenSet; }
145 template <typename CreationTimestampT = Aws::Utils::DateTime>
146 void SetCreationTimestamp(CreationTimestampT&& value) {
147 m_creationTimestampHasBeenSet = true;
148 m_creationTimestamp = std::forward<CreationTimestampT>(value);
149 }
150 template <typename CreationTimestampT = Aws::Utils::DateTime>
152 SetCreationTimestamp(std::forward<CreationTimestampT>(value));
153 return *this;
154 }
156
158
161 inline const Aws::Utils::DateTime& GetLastUpdateTimestamp() const { return m_lastUpdateTimestamp; }
162 inline bool LastUpdateTimestampHasBeenSet() const { return m_lastUpdateTimestampHasBeenSet; }
163 template <typename LastUpdateTimestampT = Aws::Utils::DateTime>
164 void SetLastUpdateTimestamp(LastUpdateTimestampT&& value) {
165 m_lastUpdateTimestampHasBeenSet = true;
166 m_lastUpdateTimestamp = std::forward<LastUpdateTimestampT>(value);
167 }
168 template <typename LastUpdateTimestampT = Aws::Utils::DateTime>
170 SetLastUpdateTimestamp(std::forward<LastUpdateTimestampT>(value));
171 return *this;
172 }
174
176
179 inline const Aws::Utils::DateTime& GetDeletionTimestamp() const { return m_deletionTimestamp; }
180 inline bool DeletionTimestampHasBeenSet() const { return m_deletionTimestampHasBeenSet; }
181 template <typename DeletionTimestampT = Aws::Utils::DateTime>
182 void SetDeletionTimestamp(DeletionTimestampT&& value) {
183 m_deletionTimestampHasBeenSet = true;
184 m_deletionTimestamp = std::forward<DeletionTimestampT>(value);
185 }
186 template <typename DeletionTimestampT = Aws::Utils::DateTime>
188 SetDeletionTimestamp(std::forward<DeletionTimestampT>(value));
189 return *this;
190 }
192
194
202 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
203 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
204 template <typename TagsT = Aws::Vector<Tag>>
205 void SetTags(TagsT&& value) {
206 m_tagsHasBeenSet = true;
207 m_tags = std::forward<TagsT>(value);
208 }
209 template <typename TagsT = Aws::Vector<Tag>>
211 SetTags(std::forward<TagsT>(value));
212 return *this;
213 }
214 template <typename TagsT = Tag>
216 m_tagsHasBeenSet = true;
217 m_tags.emplace_back(std::forward<TagsT>(value));
218 return *this;
219 }
221 private:
222 Aws::String m_exclusionId;
223
225
226 Aws::String m_resourceArn;
227
229
230 Aws::String m_reason;
231
232 Aws::Utils::DateTime m_creationTimestamp{};
233
234 Aws::Utils::DateTime m_lastUpdateTimestamp{};
235
236 Aws::Utils::DateTime m_deletionTimestamp{};
237
238 Aws::Vector<Tag> m_tags;
239 bool m_exclusionIdHasBeenSet = false;
240 bool m_internetGatewayExclusionModeHasBeenSet = false;
241 bool m_resourceArnHasBeenSet = false;
242 bool m_stateHasBeenSet = false;
243 bool m_reasonHasBeenSet = false;
244 bool m_creationTimestampHasBeenSet = false;
245 bool m_lastUpdateTimestampHasBeenSet = false;
246 bool m_deletionTimestampHasBeenSet = false;
247 bool m_tagsHasBeenSet = false;
248};
249
250} // namespace Model
251} // namespace EC2
252} // namespace Aws
VpcBlockPublicAccessExclusion & WithState(VpcBlockPublicAccessExclusionState value)
VpcBlockPublicAccessExclusion & AddTags(TagsT &&value)
void SetState(VpcBlockPublicAccessExclusionState value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API VpcBlockPublicAccessExclusion & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpcBlockPublicAccessExclusion & WithDeletionTimestamp(DeletionTimestampT &&value)
VpcBlockPublicAccessExclusionState GetState() const
VpcBlockPublicAccessExclusion & WithCreationTimestamp(CreationTimestampT &&value)
AWS_EC2_API VpcBlockPublicAccessExclusion(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcBlockPublicAccessExclusion & WithLastUpdateTimestamp(LastUpdateTimestampT &&value)
void SetInternetGatewayExclusionMode(InternetGatewayExclusionMode value)
InternetGatewayExclusionMode GetInternetGatewayExclusionMode() const
VpcBlockPublicAccessExclusion & WithTags(TagsT &&value)
const Aws::Utils::DateTime & GetLastUpdateTimestamp() const
VpcBlockPublicAccessExclusion & WithInternetGatewayExclusionMode(InternetGatewayExclusionMode value)
VpcBlockPublicAccessExclusion & WithReason(ReasonT &&value)
VpcBlockPublicAccessExclusion & WithExclusionId(ExclusionIdT &&value)
VpcBlockPublicAccessExclusion & WithResourceArn(ResourceArnT &&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