AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
TransitGatewayPeeringAttachment.h
1
6#pragma once
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/PeeringTgwInfo.h>
11#include <aws/ec2/model/TransitGatewayPeeringAttachmentOptions.h>
12#include <aws/ec2/model/PeeringAttachmentStatus.h>
13#include <aws/ec2/model/TransitGatewayAttachmentState.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16#include <aws/ec2/model/Tag.h>
17#include <utility>
18
19namespace Aws
20{
21namespace Utils
22{
23namespace Xml
24{
25 class XmlNode;
26} // namespace Xml
27} // namespace Utils
28namespace EC2
29{
30namespace Model
31{
32
40 {
41 public:
42 AWS_EC2_API TransitGatewayPeeringAttachment() = default;
45
46 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
48
49
51
54 inline const Aws::String& GetTransitGatewayAttachmentId() const { return m_transitGatewayAttachmentId; }
55 inline bool TransitGatewayAttachmentIdHasBeenSet() const { return m_transitGatewayAttachmentIdHasBeenSet; }
56 template<typename TransitGatewayAttachmentIdT = Aws::String>
57 void SetTransitGatewayAttachmentId(TransitGatewayAttachmentIdT&& value) { m_transitGatewayAttachmentIdHasBeenSet = true; m_transitGatewayAttachmentId = std::forward<TransitGatewayAttachmentIdT>(value); }
58 template<typename TransitGatewayAttachmentIdT = Aws::String>
59 TransitGatewayPeeringAttachment& WithTransitGatewayAttachmentId(TransitGatewayAttachmentIdT&& value) { SetTransitGatewayAttachmentId(std::forward<TransitGatewayAttachmentIdT>(value)); return *this;}
61
63
66 inline const Aws::String& GetAccepterTransitGatewayAttachmentId() const { return m_accepterTransitGatewayAttachmentId; }
67 inline bool AccepterTransitGatewayAttachmentIdHasBeenSet() const { return m_accepterTransitGatewayAttachmentIdHasBeenSet; }
68 template<typename AccepterTransitGatewayAttachmentIdT = Aws::String>
69 void SetAccepterTransitGatewayAttachmentId(AccepterTransitGatewayAttachmentIdT&& value) { m_accepterTransitGatewayAttachmentIdHasBeenSet = true; m_accepterTransitGatewayAttachmentId = std::forward<AccepterTransitGatewayAttachmentIdT>(value); }
70 template<typename AccepterTransitGatewayAttachmentIdT = Aws::String>
71 TransitGatewayPeeringAttachment& WithAccepterTransitGatewayAttachmentId(AccepterTransitGatewayAttachmentIdT&& value) { SetAccepterTransitGatewayAttachmentId(std::forward<AccepterTransitGatewayAttachmentIdT>(value)); return *this;}
73
75
78 inline const PeeringTgwInfo& GetRequesterTgwInfo() const { return m_requesterTgwInfo; }
79 inline bool RequesterTgwInfoHasBeenSet() const { return m_requesterTgwInfoHasBeenSet; }
80 template<typename RequesterTgwInfoT = PeeringTgwInfo>
81 void SetRequesterTgwInfo(RequesterTgwInfoT&& value) { m_requesterTgwInfoHasBeenSet = true; m_requesterTgwInfo = std::forward<RequesterTgwInfoT>(value); }
82 template<typename RequesterTgwInfoT = PeeringTgwInfo>
83 TransitGatewayPeeringAttachment& WithRequesterTgwInfo(RequesterTgwInfoT&& value) { SetRequesterTgwInfo(std::forward<RequesterTgwInfoT>(value)); return *this;}
85
87
90 inline const PeeringTgwInfo& GetAccepterTgwInfo() const { return m_accepterTgwInfo; }
91 inline bool AccepterTgwInfoHasBeenSet() const { return m_accepterTgwInfoHasBeenSet; }
92 template<typename AccepterTgwInfoT = PeeringTgwInfo>
93 void SetAccepterTgwInfo(AccepterTgwInfoT&& value) { m_accepterTgwInfoHasBeenSet = true; m_accepterTgwInfo = std::forward<AccepterTgwInfoT>(value); }
94 template<typename AccepterTgwInfoT = PeeringTgwInfo>
95 TransitGatewayPeeringAttachment& WithAccepterTgwInfo(AccepterTgwInfoT&& value) { SetAccepterTgwInfo(std::forward<AccepterTgwInfoT>(value)); return *this;}
97
99
102 inline const TransitGatewayPeeringAttachmentOptions& GetOptions() const { return m_options; }
103 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
104 template<typename OptionsT = TransitGatewayPeeringAttachmentOptions>
105 void SetOptions(OptionsT&& value) { m_optionsHasBeenSet = true; m_options = std::forward<OptionsT>(value); }
106 template<typename OptionsT = TransitGatewayPeeringAttachmentOptions>
107 TransitGatewayPeeringAttachment& WithOptions(OptionsT&& value) { SetOptions(std::forward<OptionsT>(value)); return *this;}
109
111
114 inline const PeeringAttachmentStatus& GetStatus() const { return m_status; }
115 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
116 template<typename StatusT = PeeringAttachmentStatus>
117 void SetStatus(StatusT&& value) { m_statusHasBeenSet = true; m_status = std::forward<StatusT>(value); }
118 template<typename StatusT = PeeringAttachmentStatus>
119 TransitGatewayPeeringAttachment& WithStatus(StatusT&& value) { SetStatus(std::forward<StatusT>(value)); return *this;}
121
123
127 inline TransitGatewayAttachmentState GetState() const { return m_state; }
128 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
129 inline void SetState(TransitGatewayAttachmentState value) { m_stateHasBeenSet = true; m_state = value; }
132
134
137 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
138 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
139 template<typename CreationTimeT = Aws::Utils::DateTime>
140 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
141 template<typename CreationTimeT = Aws::Utils::DateTime>
142 TransitGatewayPeeringAttachment& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
144
146
149 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
150 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
151 template<typename TagsT = Aws::Vector<Tag>>
152 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
153 template<typename TagsT = Aws::Vector<Tag>>
154 TransitGatewayPeeringAttachment& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
155 template<typename TagsT = Tag>
156 TransitGatewayPeeringAttachment& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
158 private:
159
160 Aws::String m_transitGatewayAttachmentId;
161 bool m_transitGatewayAttachmentIdHasBeenSet = false;
162
163 Aws::String m_accepterTransitGatewayAttachmentId;
164 bool m_accepterTransitGatewayAttachmentIdHasBeenSet = false;
165
166 PeeringTgwInfo m_requesterTgwInfo;
167 bool m_requesterTgwInfoHasBeenSet = false;
168
169 PeeringTgwInfo m_accepterTgwInfo;
170 bool m_accepterTgwInfoHasBeenSet = false;
171
173 bool m_optionsHasBeenSet = false;
174
176 bool m_statusHasBeenSet = false;
177
179 bool m_stateHasBeenSet = false;
180
181 Aws::Utils::DateTime m_creationTime{};
182 bool m_creationTimeHasBeenSet = false;
183
184 Aws::Vector<Tag> m_tags;
185 bool m_tagsHasBeenSet = false;
186 };
187
188} // namespace Model
189} // namespace EC2
190} // namespace Aws
TransitGatewayPeeringAttachment & WithState(TransitGatewayAttachmentState value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
TransitGatewayPeeringAttachment & AddTags(TagsT &&value)
void SetAccepterTransitGatewayAttachmentId(AccepterTransitGatewayAttachmentIdT &&value)
TransitGatewayPeeringAttachment & WithAccepterTransitGatewayAttachmentId(AccepterTransitGatewayAttachmentIdT &&value)
TransitGatewayPeeringAttachment & WithTags(TagsT &&value)
const TransitGatewayPeeringAttachmentOptions & GetOptions() const
TransitGatewayPeeringAttachment & WithOptions(OptionsT &&value)
TransitGatewayPeeringAttachment & WithAccepterTgwInfo(AccepterTgwInfoT &&value)
TransitGatewayPeeringAttachment & WithCreationTime(CreationTimeT &&value)
AWS_EC2_API TransitGatewayPeeringAttachment(const Aws::Utils::Xml::XmlNode &xmlNode)
TransitGatewayPeeringAttachment & WithRequesterTgwInfo(RequesterTgwInfoT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetTransitGatewayAttachmentId(TransitGatewayAttachmentIdT &&value)
TransitGatewayPeeringAttachment & WithTransitGatewayAttachmentId(TransitGatewayAttachmentIdT &&value)
TransitGatewayPeeringAttachment & WithStatus(StatusT &&value)
AWS_EC2_API TransitGatewayPeeringAttachment & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
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