AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
TransitGatewayRouteTable.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/TransitGatewayRouteTableState.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace EC2 {
24namespace Model {
25
32 public:
33 AWS_EC2_API TransitGatewayRouteTable() = default;
36
37 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const Aws::String& GetTransitGatewayRouteTableId() const { return m_transitGatewayRouteTableId; }
45 inline bool TransitGatewayRouteTableIdHasBeenSet() const { return m_transitGatewayRouteTableIdHasBeenSet; }
46 template <typename TransitGatewayRouteTableIdT = Aws::String>
47 void SetTransitGatewayRouteTableId(TransitGatewayRouteTableIdT&& value) {
48 m_transitGatewayRouteTableIdHasBeenSet = true;
49 m_transitGatewayRouteTableId = std::forward<TransitGatewayRouteTableIdT>(value);
50 }
51 template <typename TransitGatewayRouteTableIdT = Aws::String>
52 TransitGatewayRouteTable& WithTransitGatewayRouteTableId(TransitGatewayRouteTableIdT&& value) {
53 SetTransitGatewayRouteTableId(std::forward<TransitGatewayRouteTableIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetTransitGatewayId() const { return m_transitGatewayId; }
63 inline bool TransitGatewayIdHasBeenSet() const { return m_transitGatewayIdHasBeenSet; }
64 template <typename TransitGatewayIdT = Aws::String>
65 void SetTransitGatewayId(TransitGatewayIdT&& value) {
66 m_transitGatewayIdHasBeenSet = true;
67 m_transitGatewayId = std::forward<TransitGatewayIdT>(value);
68 }
69 template <typename TransitGatewayIdT = Aws::String>
70 TransitGatewayRouteTable& WithTransitGatewayId(TransitGatewayIdT&& value) {
71 SetTransitGatewayId(std::forward<TransitGatewayIdT>(value));
72 return *this;
73 }
75
77
80 inline TransitGatewayRouteTableState GetState() const { return m_state; }
81 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
83 m_stateHasBeenSet = true;
84 m_state = value;
85 }
87 SetState(value);
88 return *this;
89 }
91
93
97 inline bool GetDefaultAssociationRouteTable() const { return m_defaultAssociationRouteTable; }
98 inline bool DefaultAssociationRouteTableHasBeenSet() const { return m_defaultAssociationRouteTableHasBeenSet; }
99 inline void SetDefaultAssociationRouteTable(bool value) {
100 m_defaultAssociationRouteTableHasBeenSet = true;
101 m_defaultAssociationRouteTable = value;
102 }
105 return *this;
106 }
108
110
114 inline bool GetDefaultPropagationRouteTable() const { return m_defaultPropagationRouteTable; }
115 inline bool DefaultPropagationRouteTableHasBeenSet() const { return m_defaultPropagationRouteTableHasBeenSet; }
116 inline void SetDefaultPropagationRouteTable(bool value) {
117 m_defaultPropagationRouteTableHasBeenSet = true;
118 m_defaultPropagationRouteTable = value;
119 }
122 return *this;
123 }
125
127
130 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
131 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
132 template <typename CreationTimeT = Aws::Utils::DateTime>
133 void SetCreationTime(CreationTimeT&& value) {
134 m_creationTimeHasBeenSet = true;
135 m_creationTime = std::forward<CreationTimeT>(value);
136 }
137 template <typename CreationTimeT = Aws::Utils::DateTime>
139 SetCreationTime(std::forward<CreationTimeT>(value));
140 return *this;
141 }
143
145
148 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
149 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
150 template <typename TagsT = Aws::Vector<Tag>>
151 void SetTags(TagsT&& value) {
152 m_tagsHasBeenSet = true;
153 m_tags = std::forward<TagsT>(value);
154 }
155 template <typename TagsT = Aws::Vector<Tag>>
157 SetTags(std::forward<TagsT>(value));
158 return *this;
159 }
160 template <typename TagsT = Tag>
162 m_tagsHasBeenSet = true;
163 m_tags.emplace_back(std::forward<TagsT>(value));
164 return *this;
165 }
167 private:
168 Aws::String m_transitGatewayRouteTableId;
169
170 Aws::String m_transitGatewayId;
171
173
174 bool m_defaultAssociationRouteTable{false};
175
176 bool m_defaultPropagationRouteTable{false};
177
178 Aws::Utils::DateTime m_creationTime{};
179
180 Aws::Vector<Tag> m_tags;
181 bool m_transitGatewayRouteTableIdHasBeenSet = false;
182 bool m_transitGatewayIdHasBeenSet = false;
183 bool m_stateHasBeenSet = false;
184 bool m_defaultAssociationRouteTableHasBeenSet = false;
185 bool m_defaultPropagationRouteTableHasBeenSet = false;
186 bool m_creationTimeHasBeenSet = false;
187 bool m_tagsHasBeenSet = false;
188};
189
190} // namespace Model
191} // namespace EC2
192} // namespace Aws
void SetState(TransitGatewayRouteTableState value)
const Aws::String & GetTransitGatewayRouteTableId() const
void SetTransitGatewayId(TransitGatewayIdT &&value)
TransitGatewayRouteTable & WithTransitGatewayRouteTableId(TransitGatewayRouteTableIdT &&value)
TransitGatewayRouteTable & WithState(TransitGatewayRouteTableState value)
AWS_EC2_API TransitGatewayRouteTable & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
TransitGatewayRouteTable & WithTransitGatewayId(TransitGatewayIdT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
TransitGatewayRouteTableState GetState() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetTransitGatewayRouteTableId(TransitGatewayRouteTableIdT &&value)
AWS_EC2_API TransitGatewayRouteTable()=default
TransitGatewayRouteTable & WithDefaultAssociationRouteTable(bool value)
TransitGatewayRouteTable & WithCreationTime(CreationTimeT &&value)
AWS_EC2_API TransitGatewayRouteTable(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
TransitGatewayRouteTable & WithDefaultPropagationRouteTable(bool value)
TransitGatewayRouteTable & AddTags(TagsT &&value)
TransitGatewayRouteTable & WithTags(TagsT &&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