AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
TransitGatewayAttachment.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/Tag.h>
13#include <aws/ec2/model/TransitGatewayAttachmentAssociation.h>
14#include <aws/ec2/model/TransitGatewayAttachmentResourceType.h>
15#include <aws/ec2/model/TransitGatewayAttachmentState.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Xml {
22class XmlNode;
23} // namespace Xml
24} // namespace Utils
25namespace EC2 {
26namespace Model {
27
35 public:
36 AWS_EC2_API TransitGatewayAttachment() = default;
39
40 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
44
47 inline const Aws::String& GetTransitGatewayAttachmentId() const { return m_transitGatewayAttachmentId; }
48 inline bool TransitGatewayAttachmentIdHasBeenSet() const { return m_transitGatewayAttachmentIdHasBeenSet; }
49 template <typename TransitGatewayAttachmentIdT = Aws::String>
50 void SetTransitGatewayAttachmentId(TransitGatewayAttachmentIdT&& value) {
51 m_transitGatewayAttachmentIdHasBeenSet = true;
52 m_transitGatewayAttachmentId = std::forward<TransitGatewayAttachmentIdT>(value);
53 }
54 template <typename TransitGatewayAttachmentIdT = Aws::String>
55 TransitGatewayAttachment& WithTransitGatewayAttachmentId(TransitGatewayAttachmentIdT&& value) {
56 SetTransitGatewayAttachmentId(std::forward<TransitGatewayAttachmentIdT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetTransitGatewayId() const { return m_transitGatewayId; }
66 inline bool TransitGatewayIdHasBeenSet() const { return m_transitGatewayIdHasBeenSet; }
67 template <typename TransitGatewayIdT = Aws::String>
68 void SetTransitGatewayId(TransitGatewayIdT&& value) {
69 m_transitGatewayIdHasBeenSet = true;
70 m_transitGatewayId = std::forward<TransitGatewayIdT>(value);
71 }
72 template <typename TransitGatewayIdT = Aws::String>
73 TransitGatewayAttachment& WithTransitGatewayId(TransitGatewayIdT&& value) {
74 SetTransitGatewayId(std::forward<TransitGatewayIdT>(value));
75 return *this;
76 }
78
80
83 inline const Aws::String& GetTransitGatewayOwnerId() const { return m_transitGatewayOwnerId; }
84 inline bool TransitGatewayOwnerIdHasBeenSet() const { return m_transitGatewayOwnerIdHasBeenSet; }
85 template <typename TransitGatewayOwnerIdT = Aws::String>
86 void SetTransitGatewayOwnerId(TransitGatewayOwnerIdT&& value) {
87 m_transitGatewayOwnerIdHasBeenSet = true;
88 m_transitGatewayOwnerId = std::forward<TransitGatewayOwnerIdT>(value);
89 }
90 template <typename TransitGatewayOwnerIdT = Aws::String>
91 TransitGatewayAttachment& WithTransitGatewayOwnerId(TransitGatewayOwnerIdT&& value) {
92 SetTransitGatewayOwnerId(std::forward<TransitGatewayOwnerIdT>(value));
93 return *this;
94 }
96
98
101 inline const Aws::String& GetResourceOwnerId() const { return m_resourceOwnerId; }
102 inline bool ResourceOwnerIdHasBeenSet() const { return m_resourceOwnerIdHasBeenSet; }
103 template <typename ResourceOwnerIdT = Aws::String>
104 void SetResourceOwnerId(ResourceOwnerIdT&& value) {
105 m_resourceOwnerIdHasBeenSet = true;
106 m_resourceOwnerId = std::forward<ResourceOwnerIdT>(value);
107 }
108 template <typename ResourceOwnerIdT = Aws::String>
110 SetResourceOwnerId(std::forward<ResourceOwnerIdT>(value));
111 return *this;
112 }
114
116
120 inline TransitGatewayAttachmentResourceType GetResourceType() const { return m_resourceType; }
121 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
123 m_resourceTypeHasBeenSet = true;
124 m_resourceType = value;
125 }
127 SetResourceType(value);
128 return *this;
129 }
131
133
136 inline const Aws::String& GetResourceId() const { return m_resourceId; }
137 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; }
138 template <typename ResourceIdT = Aws::String>
139 void SetResourceId(ResourceIdT&& value) {
140 m_resourceIdHasBeenSet = true;
141 m_resourceId = std::forward<ResourceIdT>(value);
142 }
143 template <typename ResourceIdT = Aws::String>
145 SetResourceId(std::forward<ResourceIdT>(value));
146 return *this;
147 }
149
151
155 inline TransitGatewayAttachmentState GetState() const { return m_state; }
156 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
158 m_stateHasBeenSet = true;
159 m_state = value;
160 }
162 SetState(value);
163 return *this;
164 }
166
168
171 inline const TransitGatewayAttachmentAssociation& GetAssociation() const { return m_association; }
172 inline bool AssociationHasBeenSet() const { return m_associationHasBeenSet; }
173 template <typename AssociationT = TransitGatewayAttachmentAssociation>
174 void SetAssociation(AssociationT&& value) {
175 m_associationHasBeenSet = true;
176 m_association = std::forward<AssociationT>(value);
177 }
178 template <typename AssociationT = TransitGatewayAttachmentAssociation>
180 SetAssociation(std::forward<AssociationT>(value));
181 return *this;
182 }
184
186
189 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
190 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
191 template <typename CreationTimeT = Aws::Utils::DateTime>
192 void SetCreationTime(CreationTimeT&& value) {
193 m_creationTimeHasBeenSet = true;
194 m_creationTime = std::forward<CreationTimeT>(value);
195 }
196 template <typename CreationTimeT = Aws::Utils::DateTime>
198 SetCreationTime(std::forward<CreationTimeT>(value));
199 return *this;
200 }
202
204
207 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
208 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
209 template <typename TagsT = Aws::Vector<Tag>>
210 void SetTags(TagsT&& value) {
211 m_tagsHasBeenSet = true;
212 m_tags = std::forward<TagsT>(value);
213 }
214 template <typename TagsT = Aws::Vector<Tag>>
216 SetTags(std::forward<TagsT>(value));
217 return *this;
218 }
219 template <typename TagsT = Tag>
221 m_tagsHasBeenSet = true;
222 m_tags.emplace_back(std::forward<TagsT>(value));
223 return *this;
224 }
226 private:
227 Aws::String m_transitGatewayAttachmentId;
228
229 Aws::String m_transitGatewayId;
230
231 Aws::String m_transitGatewayOwnerId;
232
233 Aws::String m_resourceOwnerId;
234
236
237 Aws::String m_resourceId;
238
240
241 TransitGatewayAttachmentAssociation m_association;
242
243 Aws::Utils::DateTime m_creationTime{};
244
245 Aws::Vector<Tag> m_tags;
246 bool m_transitGatewayAttachmentIdHasBeenSet = false;
247 bool m_transitGatewayIdHasBeenSet = false;
248 bool m_transitGatewayOwnerIdHasBeenSet = false;
249 bool m_resourceOwnerIdHasBeenSet = false;
250 bool m_resourceTypeHasBeenSet = false;
251 bool m_resourceIdHasBeenSet = false;
252 bool m_stateHasBeenSet = false;
253 bool m_associationHasBeenSet = false;
254 bool m_creationTimeHasBeenSet = false;
255 bool m_tagsHasBeenSet = false;
256};
257
258} // namespace Model
259} // namespace EC2
260} // namespace Aws
TransitGatewayAttachment & WithCreationTime(CreationTimeT &&value)
TransitGatewayAttachment & WithResourceOwnerId(ResourceOwnerIdT &&value)
TransitGatewayAttachment & WithAssociation(AssociationT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
const TransitGatewayAttachmentAssociation & GetAssociation() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
TransitGatewayAttachmentState GetState() const
void SetTransitGatewayOwnerId(TransitGatewayOwnerIdT &&value)
void SetTransitGatewayAttachmentId(TransitGatewayAttachmentIdT &&value)
AWS_EC2_API TransitGatewayAttachment(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetTransitGatewayAttachmentId() const
AWS_EC2_API TransitGatewayAttachment()=default
TransitGatewayAttachment & WithResourceType(TransitGatewayAttachmentResourceType value)
void SetResourceType(TransitGatewayAttachmentResourceType value)
TransitGatewayAttachmentResourceType GetResourceType() const
TransitGatewayAttachment & WithTransitGatewayId(TransitGatewayIdT &&value)
TransitGatewayAttachment & WithTags(TagsT &&value)
TransitGatewayAttachment & WithTransitGatewayAttachmentId(TransitGatewayAttachmentIdT &&value)
TransitGatewayAttachment & WithResourceId(ResourceIdT &&value)
void SetTransitGatewayId(TransitGatewayIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API TransitGatewayAttachment & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
TransitGatewayAttachment & AddTags(TagsT &&value)
void SetState(TransitGatewayAttachmentState value)
TransitGatewayAttachment & WithTransitGatewayOwnerId(TransitGatewayOwnerIdT &&value)
TransitGatewayAttachment & WithState(TransitGatewayAttachmentState 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