AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
TransitGateway.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/TransitGatewayOptions.h>
14#include <aws/ec2/model/TransitGatewayState.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Xml {
21class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace EC2 {
25namespace Model {
26
33 public:
34 AWS_EC2_API TransitGateway() = default;
35 AWS_EC2_API TransitGateway(const Aws::Utils::Xml::XmlNode& xmlNode);
37
38 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
39 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
40
42
45 inline const Aws::String& GetTransitGatewayId() const { return m_transitGatewayId; }
46 inline bool TransitGatewayIdHasBeenSet() const { return m_transitGatewayIdHasBeenSet; }
47 template <typename TransitGatewayIdT = Aws::String>
48 void SetTransitGatewayId(TransitGatewayIdT&& value) {
49 m_transitGatewayIdHasBeenSet = true;
50 m_transitGatewayId = std::forward<TransitGatewayIdT>(value);
51 }
52 template <typename TransitGatewayIdT = Aws::String>
53 TransitGateway& WithTransitGatewayId(TransitGatewayIdT&& value) {
54 SetTransitGatewayId(std::forward<TransitGatewayIdT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetTransitGatewayArn() const { return m_transitGatewayArn; }
64 inline bool TransitGatewayArnHasBeenSet() const { return m_transitGatewayArnHasBeenSet; }
65 template <typename TransitGatewayArnT = Aws::String>
66 void SetTransitGatewayArn(TransitGatewayArnT&& value) {
67 m_transitGatewayArnHasBeenSet = true;
68 m_transitGatewayArn = std::forward<TransitGatewayArnT>(value);
69 }
70 template <typename TransitGatewayArnT = Aws::String>
71 TransitGateway& WithTransitGatewayArn(TransitGatewayArnT&& value) {
72 SetTransitGatewayArn(std::forward<TransitGatewayArnT>(value));
73 return *this;
74 }
76
78
81 inline TransitGatewayState GetState() const { return m_state; }
82 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
83 inline void SetState(TransitGatewayState value) {
84 m_stateHasBeenSet = true;
85 m_state = value;
86 }
88 SetState(value);
89 return *this;
90 }
92
94
97 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
98 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
99 template <typename OwnerIdT = Aws::String>
100 void SetOwnerId(OwnerIdT&& value) {
101 m_ownerIdHasBeenSet = true;
102 m_ownerId = std::forward<OwnerIdT>(value);
103 }
104 template <typename OwnerIdT = Aws::String>
105 TransitGateway& WithOwnerId(OwnerIdT&& value) {
106 SetOwnerId(std::forward<OwnerIdT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetDescription() const { return m_description; }
116 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
117 template <typename DescriptionT = Aws::String>
118 void SetDescription(DescriptionT&& value) {
119 m_descriptionHasBeenSet = true;
120 m_description = std::forward<DescriptionT>(value);
121 }
122 template <typename DescriptionT = Aws::String>
123 TransitGateway& WithDescription(DescriptionT&& value) {
124 SetDescription(std::forward<DescriptionT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
134 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
135 template <typename CreationTimeT = Aws::Utils::DateTime>
136 void SetCreationTime(CreationTimeT&& value) {
137 m_creationTimeHasBeenSet = true;
138 m_creationTime = std::forward<CreationTimeT>(value);
139 }
140 template <typename CreationTimeT = Aws::Utils::DateTime>
141 TransitGateway& WithCreationTime(CreationTimeT&& value) {
142 SetCreationTime(std::forward<CreationTimeT>(value));
143 return *this;
144 }
146
148
151 inline const TransitGatewayOptions& GetOptions() const { return m_options; }
152 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
153 template <typename OptionsT = TransitGatewayOptions>
154 void SetOptions(OptionsT&& value) {
155 m_optionsHasBeenSet = true;
156 m_options = std::forward<OptionsT>(value);
157 }
158 template <typename OptionsT = TransitGatewayOptions>
159 TransitGateway& WithOptions(OptionsT&& value) {
160 SetOptions(std::forward<OptionsT>(value));
161 return *this;
162 }
164
166
169 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
170 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
171 template <typename TagsT = Aws::Vector<Tag>>
172 void SetTags(TagsT&& value) {
173 m_tagsHasBeenSet = true;
174 m_tags = std::forward<TagsT>(value);
175 }
176 template <typename TagsT = Aws::Vector<Tag>>
177 TransitGateway& WithTags(TagsT&& value) {
178 SetTags(std::forward<TagsT>(value));
179 return *this;
180 }
181 template <typename TagsT = Tag>
182 TransitGateway& AddTags(TagsT&& value) {
183 m_tagsHasBeenSet = true;
184 m_tags.emplace_back(std::forward<TagsT>(value));
185 return *this;
186 }
188 private:
189 Aws::String m_transitGatewayId;
190
191 Aws::String m_transitGatewayArn;
192
194
195 Aws::String m_ownerId;
196
197 Aws::String m_description;
198
199 Aws::Utils::DateTime m_creationTime{};
200
201 TransitGatewayOptions m_options;
202
203 Aws::Vector<Tag> m_tags;
204 bool m_transitGatewayIdHasBeenSet = false;
205 bool m_transitGatewayArnHasBeenSet = false;
206 bool m_stateHasBeenSet = false;
207 bool m_ownerIdHasBeenSet = false;
208 bool m_descriptionHasBeenSet = false;
209 bool m_creationTimeHasBeenSet = false;
210 bool m_optionsHasBeenSet = false;
211 bool m_tagsHasBeenSet = false;
212};
213
214} // namespace Model
215} // namespace EC2
216} // namespace Aws
TransitGateway & AddTags(TagsT &&value)
const Aws::String & GetTransitGatewayArn() const
TransitGateway & WithCreationTime(CreationTimeT &&value)
void SetTransitGatewayId(TransitGatewayIdT &&value)
void SetState(TransitGatewayState value)
const Aws::Utils::DateTime & GetCreationTime() const
TransitGateway & WithOptions(OptionsT &&value)
void SetTransitGatewayArn(TransitGatewayArnT &&value)
AWS_EC2_API TransitGateway()=default
TransitGateway & WithTransitGatewayArn(TransitGatewayArnT &&value)
TransitGateway & WithDescription(DescriptionT &&value)
const Aws::String & GetTransitGatewayId() const
TransitGatewayState GetState() const
void SetOwnerId(OwnerIdT &&value)
void SetOptions(OptionsT &&value)
AWS_EC2_API TransitGateway(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API TransitGateway & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetOwnerId() const
TransitGateway & WithTags(TagsT &&value)
void SetCreationTime(CreationTimeT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
TransitGateway & WithState(TransitGatewayState value)
const Aws::Vector< Tag > & GetTags() const
const TransitGatewayOptions & GetOptions() const
TransitGateway & WithTransitGatewayId(TransitGatewayIdT &&value)
const Aws::String & GetDescription() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
TransitGateway & WithOwnerId(OwnerIdT &&value)
void SetDescription(DescriptionT &&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