AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
VpcBlockPublicAccessExclusion.h
1
6#pragma once
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/ec2/model/InternetGatewayExclusionMode.h>
11#include <aws/ec2/model/VpcBlockPublicAccessExclusionState.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ec2/model/Tag.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2
27{
28namespace Model
29{
30
44 {
45 public:
46 AWS_EC2_API VpcBlockPublicAccessExclusion() = default;
49
50 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
51 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
52
53
55
58 inline const Aws::String& GetExclusionId() const { return m_exclusionId; }
59 inline bool ExclusionIdHasBeenSet() const { return m_exclusionIdHasBeenSet; }
60 template<typename ExclusionIdT = Aws::String>
61 void SetExclusionId(ExclusionIdT&& value) { m_exclusionIdHasBeenSet = true; m_exclusionId = std::forward<ExclusionIdT>(value); }
62 template<typename ExclusionIdT = Aws::String>
63 VpcBlockPublicAccessExclusion& WithExclusionId(ExclusionIdT&& value) { SetExclusionId(std::forward<ExclusionIdT>(value)); return *this;}
65
67
75 inline InternetGatewayExclusionMode GetInternetGatewayExclusionMode() const { return m_internetGatewayExclusionMode; }
76 inline bool InternetGatewayExclusionModeHasBeenSet() const { return m_internetGatewayExclusionModeHasBeenSet; }
77 inline void SetInternetGatewayExclusionMode(InternetGatewayExclusionMode value) { m_internetGatewayExclusionModeHasBeenSet = true; m_internetGatewayExclusionMode = value; }
80
82
85 inline const Aws::String& GetResourceArn() const { return m_resourceArn; }
86 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
87 template<typename ResourceArnT = Aws::String>
88 void SetResourceArn(ResourceArnT&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::forward<ResourceArnT>(value); }
89 template<typename ResourceArnT = Aws::String>
90 VpcBlockPublicAccessExclusion& WithResourceArn(ResourceArnT&& value) { SetResourceArn(std::forward<ResourceArnT>(value)); return *this;}
92
94
97 inline VpcBlockPublicAccessExclusionState GetState() const { return m_state; }
98 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
99 inline void SetState(VpcBlockPublicAccessExclusionState value) { m_stateHasBeenSet = true; m_state = value; }
102
104
107 inline const Aws::String& GetReason() const { return m_reason; }
108 inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
109 template<typename ReasonT = Aws::String>
110 void SetReason(ReasonT&& value) { m_reasonHasBeenSet = true; m_reason = std::forward<ReasonT>(value); }
111 template<typename ReasonT = Aws::String>
112 VpcBlockPublicAccessExclusion& WithReason(ReasonT&& value) { SetReason(std::forward<ReasonT>(value)); return *this;}
114
116
119 inline const Aws::Utils::DateTime& GetCreationTimestamp() const { return m_creationTimestamp; }
120 inline bool CreationTimestampHasBeenSet() const { return m_creationTimestampHasBeenSet; }
121 template<typename CreationTimestampT = Aws::Utils::DateTime>
122 void SetCreationTimestamp(CreationTimestampT&& value) { m_creationTimestampHasBeenSet = true; m_creationTimestamp = std::forward<CreationTimestampT>(value); }
123 template<typename CreationTimestampT = Aws::Utils::DateTime>
124 VpcBlockPublicAccessExclusion& WithCreationTimestamp(CreationTimestampT&& value) { SetCreationTimestamp(std::forward<CreationTimestampT>(value)); return *this;}
126
128
131 inline const Aws::Utils::DateTime& GetLastUpdateTimestamp() const { return m_lastUpdateTimestamp; }
132 inline bool LastUpdateTimestampHasBeenSet() const { return m_lastUpdateTimestampHasBeenSet; }
133 template<typename LastUpdateTimestampT = Aws::Utils::DateTime>
134 void SetLastUpdateTimestamp(LastUpdateTimestampT&& value) { m_lastUpdateTimestampHasBeenSet = true; m_lastUpdateTimestamp = std::forward<LastUpdateTimestampT>(value); }
135 template<typename LastUpdateTimestampT = Aws::Utils::DateTime>
136 VpcBlockPublicAccessExclusion& WithLastUpdateTimestamp(LastUpdateTimestampT&& value) { SetLastUpdateTimestamp(std::forward<LastUpdateTimestampT>(value)); return *this;}
138
140
143 inline const Aws::Utils::DateTime& GetDeletionTimestamp() const { return m_deletionTimestamp; }
144 inline bool DeletionTimestampHasBeenSet() const { return m_deletionTimestampHasBeenSet; }
145 template<typename DeletionTimestampT = Aws::Utils::DateTime>
146 void SetDeletionTimestamp(DeletionTimestampT&& value) { m_deletionTimestampHasBeenSet = true; m_deletionTimestamp = std::forward<DeletionTimestampT>(value); }
147 template<typename DeletionTimestampT = Aws::Utils::DateTime>
148 VpcBlockPublicAccessExclusion& WithDeletionTimestamp(DeletionTimestampT&& value) { SetDeletionTimestamp(std::forward<DeletionTimestampT>(value)); return *this;}
150
152
160 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
161 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
162 template<typename TagsT = Aws::Vector<Tag>>
163 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
164 template<typename TagsT = Aws::Vector<Tag>>
165 VpcBlockPublicAccessExclusion& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
166 template<typename TagsT = Tag>
167 VpcBlockPublicAccessExclusion& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
169 private:
170
171 Aws::String m_exclusionId;
172 bool m_exclusionIdHasBeenSet = false;
173
175 bool m_internetGatewayExclusionModeHasBeenSet = false;
176
177 Aws::String m_resourceArn;
178 bool m_resourceArnHasBeenSet = false;
179
181 bool m_stateHasBeenSet = false;
182
183 Aws::String m_reason;
184 bool m_reasonHasBeenSet = false;
185
186 Aws::Utils::DateTime m_creationTimestamp{};
187 bool m_creationTimestampHasBeenSet = false;
188
189 Aws::Utils::DateTime m_lastUpdateTimestamp{};
190 bool m_lastUpdateTimestampHasBeenSet = false;
191
192 Aws::Utils::DateTime m_deletionTimestamp{};
193 bool m_deletionTimestampHasBeenSet = false;
194
195 Aws::Vector<Tag> m_tags;
196 bool m_tagsHasBeenSet = false;
197 };
198
199} // namespace Model
200} // namespace EC2
201} // 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