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>
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>
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>
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>
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>
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>
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>
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>>
166 template<
typename TagsT = Tag>
172 bool m_exclusionIdHasBeenSet =
false;
175 bool m_internetGatewayExclusionModeHasBeenSet =
false;
178 bool m_resourceArnHasBeenSet =
false;
181 bool m_stateHasBeenSet =
false;
184 bool m_reasonHasBeenSet =
false;
187 bool m_creationTimestampHasBeenSet =
false;
190 bool m_lastUpdateTimestampHasBeenSet =
false;
193 bool m_deletionTimestampHasBeenSet =
false;
196 bool m_tagsHasBeenSet =
false;
bool CreationTimestampHasBeenSet() const
VpcBlockPublicAccessExclusion & WithState(VpcBlockPublicAccessExclusionState value)
bool InternetGatewayExclusionModeHasBeenSet() const
void SetReason(ReasonT &&value)
VpcBlockPublicAccessExclusion & AddTags(TagsT &&value)
const Aws::String & GetReason() const
void SetResourceArn(ResourceArnT &&value)
void SetState(VpcBlockPublicAccessExclusionState value)
void SetExclusionId(ExclusionIdT &&value)
void SetCreationTimestamp(CreationTimestampT &&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)
bool DeletionTimestampHasBeenSet() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetDeletionTimestamp(DeletionTimestampT &&value)
VpcBlockPublicAccessExclusion & WithDeletionTimestamp(DeletionTimestampT &&value)
VpcBlockPublicAccessExclusionState GetState() const
const Aws::Vector< Tag > & GetTags() const
const Aws::String & GetExclusionId() const
VpcBlockPublicAccessExclusion & WithCreationTimestamp(CreationTimestampT &&value)
bool ExclusionIdHasBeenSet() const
AWS_EC2_API VpcBlockPublicAccessExclusion(const Aws::Utils::Xml::XmlNode &xmlNode)
bool TagsHasBeenSet() const
VpcBlockPublicAccessExclusion & WithLastUpdateTimestamp(LastUpdateTimestampT &&value)
void SetTags(TagsT &&value)
void SetInternetGatewayExclusionMode(InternetGatewayExclusionMode value)
const Aws::Utils::DateTime & GetDeletionTimestamp() const
InternetGatewayExclusionMode GetInternetGatewayExclusionMode() const
bool LastUpdateTimestampHasBeenSet() const
void SetLastUpdateTimestamp(LastUpdateTimestampT &&value)
const Aws::String & GetResourceArn() const
VpcBlockPublicAccessExclusion & WithTags(TagsT &&value)
const Aws::Utils::DateTime & GetCreationTimestamp() const
bool ReasonHasBeenSet() const
const Aws::Utils::DateTime & GetLastUpdateTimestamp() const
bool ResourceArnHasBeenSet() const
bool StateHasBeenSet() const
VpcBlockPublicAccessExclusion & WithInternetGatewayExclusionMode(InternetGatewayExclusionMode value)
AWS_EC2_API VpcBlockPublicAccessExclusion()=default
VpcBlockPublicAccessExclusion & WithReason(ReasonT &&value)
VpcBlockPublicAccessExclusion & WithExclusionId(ExclusionIdT &&value)
VpcBlockPublicAccessExclusion & WithResourceArn(ResourceArnT &&value)
VpcBlockPublicAccessExclusionState
InternetGatewayExclusionMode
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