AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
VpcBlockPublicAccessOptions.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/VpcBlockPublicAccessState.h>
11#include <aws/ec2/model/InternetGatewayBlockMode.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/ec2/model/ManagedBy.h>
14#include <aws/ec2/model/VpcBlockPublicAccessExclusionsAllowed.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
43 {
44 public:
45 AWS_EC2_API VpcBlockPublicAccessOptions() = default;
48
49 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
50 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
51
52
54
57 inline const Aws::String& GetAwsAccountId() const { return m_awsAccountId; }
58 inline bool AwsAccountIdHasBeenSet() const { return m_awsAccountIdHasBeenSet; }
59 template<typename AwsAccountIdT = Aws::String>
60 void SetAwsAccountId(AwsAccountIdT&& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = std::forward<AwsAccountIdT>(value); }
61 template<typename AwsAccountIdT = Aws::String>
62 VpcBlockPublicAccessOptions& WithAwsAccountId(AwsAccountIdT&& value) { SetAwsAccountId(std::forward<AwsAccountIdT>(value)); return *this;}
64
66
69 inline const Aws::String& GetAwsRegion() const { return m_awsRegion; }
70 inline bool AwsRegionHasBeenSet() const { return m_awsRegionHasBeenSet; }
71 template<typename AwsRegionT = Aws::String>
72 void SetAwsRegion(AwsRegionT&& value) { m_awsRegionHasBeenSet = true; m_awsRegion = std::forward<AwsRegionT>(value); }
73 template<typename AwsRegionT = Aws::String>
74 VpcBlockPublicAccessOptions& WithAwsRegion(AwsRegionT&& value) { SetAwsRegion(std::forward<AwsRegionT>(value)); return *this;}
76
78
81 inline VpcBlockPublicAccessState GetState() const { return m_state; }
82 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
83 inline void SetState(VpcBlockPublicAccessState value) { m_stateHasBeenSet = true; m_state = value; }
86
88
100 inline InternetGatewayBlockMode GetInternetGatewayBlockMode() const { return m_internetGatewayBlockMode; }
101 inline bool InternetGatewayBlockModeHasBeenSet() const { return m_internetGatewayBlockModeHasBeenSet; }
102 inline void SetInternetGatewayBlockMode(InternetGatewayBlockMode value) { m_internetGatewayBlockModeHasBeenSet = true; m_internetGatewayBlockMode = value; }
105
107
110 inline const Aws::String& GetReason() const { return m_reason; }
111 inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; }
112 template<typename ReasonT = Aws::String>
113 void SetReason(ReasonT&& value) { m_reasonHasBeenSet = true; m_reason = std::forward<ReasonT>(value); }
114 template<typename ReasonT = Aws::String>
115 VpcBlockPublicAccessOptions& WithReason(ReasonT&& value) { SetReason(std::forward<ReasonT>(value)); return *this;}
117
119
122 inline const Aws::Utils::DateTime& GetLastUpdateTimestamp() const { return m_lastUpdateTimestamp; }
123 inline bool LastUpdateTimestampHasBeenSet() const { return m_lastUpdateTimestampHasBeenSet; }
124 template<typename LastUpdateTimestampT = Aws::Utils::DateTime>
125 void SetLastUpdateTimestamp(LastUpdateTimestampT&& value) { m_lastUpdateTimestampHasBeenSet = true; m_lastUpdateTimestamp = std::forward<LastUpdateTimestampT>(value); }
126 template<typename LastUpdateTimestampT = Aws::Utils::DateTime>
127 VpcBlockPublicAccessOptions& WithLastUpdateTimestamp(LastUpdateTimestampT&& value) { SetLastUpdateTimestamp(std::forward<LastUpdateTimestampT>(value)); return *this;}
129
131
137 inline ManagedBy GetManagedBy() const { return m_managedBy; }
138 inline bool ManagedByHasBeenSet() const { return m_managedByHasBeenSet; }
139 inline void SetManagedBy(ManagedBy value) { m_managedByHasBeenSet = true; m_managedBy = value; }
140 inline VpcBlockPublicAccessOptions& WithManagedBy(ManagedBy value) { SetManagedBy(value); return *this;}
142
144
150 inline VpcBlockPublicAccessExclusionsAllowed GetExclusionsAllowed() const { return m_exclusionsAllowed; }
151 inline bool ExclusionsAllowedHasBeenSet() const { return m_exclusionsAllowedHasBeenSet; }
152 inline void SetExclusionsAllowed(VpcBlockPublicAccessExclusionsAllowed value) { m_exclusionsAllowedHasBeenSet = true; m_exclusionsAllowed = value; }
155 private:
156
157 Aws::String m_awsAccountId;
158 bool m_awsAccountIdHasBeenSet = false;
159
160 Aws::String m_awsRegion;
161 bool m_awsRegionHasBeenSet = false;
162
164 bool m_stateHasBeenSet = false;
165
167 bool m_internetGatewayBlockModeHasBeenSet = false;
168
169 Aws::String m_reason;
170 bool m_reasonHasBeenSet = false;
171
172 Aws::Utils::DateTime m_lastUpdateTimestamp{};
173 bool m_lastUpdateTimestampHasBeenSet = false;
174
175 ManagedBy m_managedBy{ManagedBy::NOT_SET};
176 bool m_managedByHasBeenSet = false;
177
179 bool m_exclusionsAllowedHasBeenSet = false;
180 };
181
182} // namespace Model
183} // namespace EC2
184} // namespace Aws
void SetLastUpdateTimestamp(LastUpdateTimestampT &&value)
AWS_EC2_API VpcBlockPublicAccessOptions & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcBlockPublicAccessOptions & WithAwsRegion(AwsRegionT &&value)
InternetGatewayBlockMode GetInternetGatewayBlockMode() const
AWS_EC2_API VpcBlockPublicAccessOptions()=default
AWS_EC2_API VpcBlockPublicAccessOptions(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcBlockPublicAccessOptions & WithExclusionsAllowed(VpcBlockPublicAccessExclusionsAllowed value)
void SetExclusionsAllowed(VpcBlockPublicAccessExclusionsAllowed value)
VpcBlockPublicAccessOptions & WithAwsAccountId(AwsAccountIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpcBlockPublicAccessOptions & WithInternetGatewayBlockMode(InternetGatewayBlockMode value)
VpcBlockPublicAccessOptions & WithManagedBy(ManagedBy value)
VpcBlockPublicAccessExclusionsAllowed GetExclusionsAllowed() const
VpcBlockPublicAccessOptions & WithReason(ReasonT &&value)
const Aws::Utils::DateTime & GetLastUpdateTimestamp() const
VpcBlockPublicAccessOptions & WithState(VpcBlockPublicAccessState value)
VpcBlockPublicAccessOptions & WithLastUpdateTimestamp(LastUpdateTimestampT &&value)
void SetInternetGatewayBlockMode(InternetGatewayBlockMode value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream