AWS SDK for C++  1.9.71
AWS SDK for C++
EgressOnlyInternetGateway.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
12 #include <aws/ec2/model/Tag.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace Utils
18 {
19 namespace Xml
20 {
21  class XmlNode;
22 } // namespace Xml
23 } // namespace Utils
24 namespace EC2
25 {
26 namespace Model
27 {
28 
35  {
36  public:
40 
41  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
42  void OutputToStream(Aws::OStream& oStream, const char* location) const;
43 
44 
48  inline const Aws::Vector<InternetGatewayAttachment>& GetAttachments() const{ return m_attachments; }
49 
53  inline bool AttachmentsHasBeenSet() const { return m_attachmentsHasBeenSet; }
54 
58  inline void SetAttachments(const Aws::Vector<InternetGatewayAttachment>& value) { m_attachmentsHasBeenSet = true; m_attachments = value; }
59 
63  inline void SetAttachments(Aws::Vector<InternetGatewayAttachment>&& value) { m_attachmentsHasBeenSet = true; m_attachments = std::move(value); }
64 
68  inline EgressOnlyInternetGateway& WithAttachments(const Aws::Vector<InternetGatewayAttachment>& value) { SetAttachments(value); return *this;}
69 
73  inline EgressOnlyInternetGateway& WithAttachments(Aws::Vector<InternetGatewayAttachment>&& value) { SetAttachments(std::move(value)); return *this;}
74 
78  inline EgressOnlyInternetGateway& AddAttachments(const InternetGatewayAttachment& value) { m_attachmentsHasBeenSet = true; m_attachments.push_back(value); return *this; }
79 
83  inline EgressOnlyInternetGateway& AddAttachments(InternetGatewayAttachment&& value) { m_attachmentsHasBeenSet = true; m_attachments.push_back(std::move(value)); return *this; }
84 
85 
89  inline const Aws::String& GetEgressOnlyInternetGatewayId() const{ return m_egressOnlyInternetGatewayId; }
90 
94  inline bool EgressOnlyInternetGatewayIdHasBeenSet() const { return m_egressOnlyInternetGatewayIdHasBeenSet; }
95 
99  inline void SetEgressOnlyInternetGatewayId(const Aws::String& value) { m_egressOnlyInternetGatewayIdHasBeenSet = true; m_egressOnlyInternetGatewayId = value; }
100 
104  inline void SetEgressOnlyInternetGatewayId(Aws::String&& value) { m_egressOnlyInternetGatewayIdHasBeenSet = true; m_egressOnlyInternetGatewayId = std::move(value); }
105 
109  inline void SetEgressOnlyInternetGatewayId(const char* value) { m_egressOnlyInternetGatewayIdHasBeenSet = true; m_egressOnlyInternetGatewayId.assign(value); }
110 
114  inline EgressOnlyInternetGateway& WithEgressOnlyInternetGatewayId(const Aws::String& value) { SetEgressOnlyInternetGatewayId(value); return *this;}
115 
119  inline EgressOnlyInternetGateway& WithEgressOnlyInternetGatewayId(Aws::String&& value) { SetEgressOnlyInternetGatewayId(std::move(value)); return *this;}
120 
124  inline EgressOnlyInternetGateway& WithEgressOnlyInternetGatewayId(const char* value) { SetEgressOnlyInternetGatewayId(value); return *this;}
125 
126 
130  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
131 
135  inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
136 
140  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
141 
145  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
146 
150  inline EgressOnlyInternetGateway& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
151 
155  inline EgressOnlyInternetGateway& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
156 
160  inline EgressOnlyInternetGateway& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
161 
165  inline EgressOnlyInternetGateway& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
166 
167  private:
168 
170  bool m_attachmentsHasBeenSet;
171 
172  Aws::String m_egressOnlyInternetGatewayId;
173  bool m_egressOnlyInternetGatewayIdHasBeenSet;
174 
175  Aws::Vector<Tag> m_tags;
176  bool m_tagsHasBeenSet;
177  };
178 
179 } // namespace Model
180 } // namespace EC2
181 } // namespace Aws
Aws::EC2::Model::EgressOnlyInternetGateway::EgressOnlyInternetGatewayIdHasBeenSet
bool EgressOnlyInternetGatewayIdHasBeenSet() const
Definition: EgressOnlyInternetGateway.h:94
Aws::EC2::Model::EgressOnlyInternetGateway::WithEgressOnlyInternetGatewayId
EgressOnlyInternetGateway & WithEgressOnlyInternetGatewayId(const char *value)
Definition: EgressOnlyInternetGateway.h:124
Aws::EC2::Model::EgressOnlyInternetGateway::WithTags
EgressOnlyInternetGateway & WithTags(Aws::Vector< Tag > &&value)
Definition: EgressOnlyInternetGateway.h:155
Aws::EC2::Model::EgressOnlyInternetGateway::GetAttachments
const Aws::Vector< InternetGatewayAttachment > & GetAttachments() const
Definition: EgressOnlyInternetGateway.h:48
Aws::EC2::Model::EgressOnlyInternetGateway::WithEgressOnlyInternetGatewayId
EgressOnlyInternetGateway & WithEgressOnlyInternetGatewayId(const Aws::String &value)
Definition: EgressOnlyInternetGateway.h:114
Aws::EC2::Model::EgressOnlyInternetGateway::AddAttachments
EgressOnlyInternetGateway & AddAttachments(const InternetGatewayAttachment &value)
Definition: EgressOnlyInternetGateway.h:78
Aws::EC2::Model::Tag
Definition: Tag.h:32
Aws::EC2::Model::EgressOnlyInternetGateway
Definition: EgressOnlyInternetGateway.h:35
Aws::EC2::Model::EgressOnlyInternetGateway::SetTags
void SetTags(const Aws::Vector< Tag > &value)
Definition: EgressOnlyInternetGateway.h:140
Aws::EC2::Model::EgressOnlyInternetGateway::SetEgressOnlyInternetGatewayId
void SetEgressOnlyInternetGatewayId(const Aws::String &value)
Definition: EgressOnlyInternetGateway.h:99
AWS_EC2_API
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
Aws::EC2::Model::EgressOnlyInternetGateway::EgressOnlyInternetGateway
EgressOnlyInternetGateway(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::EC2::Model::EgressOnlyInternetGateway::AddTags
EgressOnlyInternetGateway & AddTags(const Tag &value)
Definition: EgressOnlyInternetGateway.h:160
AWSStreamFwd.h
Aws::EC2::Model::EgressOnlyInternetGateway::GetEgressOnlyInternetGatewayId
const Aws::String & GetEgressOnlyInternetGatewayId() const
Definition: EgressOnlyInternetGateway.h:89
AWSVector.h
Tag.h
Aws::EC2::Model::InternetGatewayAttachment
Definition: InternetGatewayAttachment.h:34
Aws::EC2::Model::EgressOnlyInternetGateway::AddAttachments
EgressOnlyInternetGateway & AddAttachments(InternetGatewayAttachment &&value)
Definition: EgressOnlyInternetGateway.h:83
Aws::EC2::Model::EgressOnlyInternetGateway::SetEgressOnlyInternetGatewayId
void SetEgressOnlyInternetGatewayId(const char *value)
Definition: EgressOnlyInternetGateway.h:109
Aws::EC2::Model::EgressOnlyInternetGateway::AttachmentsHasBeenSet
bool AttachmentsHasBeenSet() const
Definition: EgressOnlyInternetGateway.h:53
Aws::OStream
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
Aws::EC2::Model::EgressOnlyInternetGateway::WithEgressOnlyInternetGatewayId
EgressOnlyInternetGateway & WithEgressOnlyInternetGatewayId(Aws::String &&value)
Definition: EgressOnlyInternetGateway.h:119
Aws::EC2::Model::EgressOnlyInternetGateway::WithAttachments
EgressOnlyInternetGateway & WithAttachments(const Aws::Vector< InternetGatewayAttachment > &value)
Definition: EgressOnlyInternetGateway.h:68
Aws::Utils::Xml::XmlNode
Definition: XmlSerializer.h:53
Aws::EC2::Model::EgressOnlyInternetGateway::TagsHasBeenSet
bool TagsHasBeenSet() const
Definition: EgressOnlyInternetGateway.h:135
InternetGatewayAttachment.h
Aws::EC2::Model::EgressOnlyInternetGateway::OutputToStream
void OutputToStream(Aws::OStream &oStream, const char *location) const
AWSString.h
Aws::EC2::Model::EgressOnlyInternetGateway::GetTags
const Aws::Vector< Tag > & GetTags() const
Definition: EgressOnlyInternetGateway.h:130
Aws::EC2::Model::EgressOnlyInternetGateway::SetEgressOnlyInternetGatewayId
void SetEgressOnlyInternetGatewayId(Aws::String &&value)
Definition: EgressOnlyInternetGateway.h:104
Aws::EC2::Model::EgressOnlyInternetGateway::operator=
EgressOnlyInternetGateway & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Aws::EC2::Model::EgressOnlyInternetGateway::SetTags
void SetTags(Aws::Vector< Tag > &&value)
Definition: EgressOnlyInternetGateway.h:145
Aws::EC2::Model::EgressOnlyInternetGateway::SetAttachments
void SetAttachments(const Aws::Vector< InternetGatewayAttachment > &value)
Definition: EgressOnlyInternetGateway.h:58
Aws
Definition: AccessManagementClient.h:15
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
index
int index
Definition: cJSON.h:181
Aws::EC2::Model::EgressOnlyInternetGateway::WithTags
EgressOnlyInternetGateway & WithTags(const Aws::Vector< Tag > &value)
Definition: EgressOnlyInternetGateway.h:150
Aws::EC2::Model::EgressOnlyInternetGateway::EgressOnlyInternetGateway
EgressOnlyInternetGateway()
Aws::EC2::Model::EgressOnlyInternetGateway::WithAttachments
EgressOnlyInternetGateway & WithAttachments(Aws::Vector< InternetGatewayAttachment > &&value)
Definition: EgressOnlyInternetGateway.h:73
Aws::EC2::Model::EgressOnlyInternetGateway::OutputToStream
void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
EC2_EXPORTS.h
Aws::EC2::Model::EgressOnlyInternetGateway::SetAttachments
void SetAttachments(Aws::Vector< InternetGatewayAttachment > &&value)
Definition: EgressOnlyInternetGateway.h:63
Aws::EC2::Model::EgressOnlyInternetGateway::AddTags
EgressOnlyInternetGateway & AddTags(Tag &&value)
Definition: EgressOnlyInternetGateway.h:165