AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Tunnel.h
1
6#pragma once
7#include <aws/iotsecuretunneling/IoTSecureTunneling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iotsecuretunneling/model/TunnelStatus.h>
10#include <aws/iotsecuretunneling/model/ConnectionState.h>
11#include <aws/iotsecuretunneling/model/DestinationConfig.h>
12#include <aws/iotsecuretunneling/model/TimeoutConfig.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/iotsecuretunneling/model/Tag.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace IoTSecureTunneling
29{
30namespace Model
31{
32
39 class Tunnel
40 {
41 public:
42 AWS_IOTSECURETUNNELING_API Tunnel() = default;
43 AWS_IOTSECURETUNNELING_API Tunnel(Aws::Utils::Json::JsonView jsonValue);
44 AWS_IOTSECURETUNNELING_API Tunnel& operator=(Aws::Utils::Json::JsonView jsonValue);
45 AWS_IOTSECURETUNNELING_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
52 inline const Aws::String& GetTunnelId() const { return m_tunnelId; }
53 inline bool TunnelIdHasBeenSet() const { return m_tunnelIdHasBeenSet; }
54 template<typename TunnelIdT = Aws::String>
55 void SetTunnelId(TunnelIdT&& value) { m_tunnelIdHasBeenSet = true; m_tunnelId = std::forward<TunnelIdT>(value); }
56 template<typename TunnelIdT = Aws::String>
57 Tunnel& WithTunnelId(TunnelIdT&& value) { SetTunnelId(std::forward<TunnelIdT>(value)); return *this;}
59
61
64 inline const Aws::String& GetTunnelArn() const { return m_tunnelArn; }
65 inline bool TunnelArnHasBeenSet() const { return m_tunnelArnHasBeenSet; }
66 template<typename TunnelArnT = Aws::String>
67 void SetTunnelArn(TunnelArnT&& value) { m_tunnelArnHasBeenSet = true; m_tunnelArn = std::forward<TunnelArnT>(value); }
68 template<typename TunnelArnT = Aws::String>
69 Tunnel& WithTunnelArn(TunnelArnT&& value) { SetTunnelArn(std::forward<TunnelArnT>(value)); return *this;}
71
73
76 inline TunnelStatus GetStatus() const { return m_status; }
77 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
78 inline void SetStatus(TunnelStatus value) { m_statusHasBeenSet = true; m_status = value; }
79 inline Tunnel& WithStatus(TunnelStatus value) { SetStatus(value); return *this;}
81
83
86 inline const ConnectionState& GetSourceConnectionState() const { return m_sourceConnectionState; }
87 inline bool SourceConnectionStateHasBeenSet() const { return m_sourceConnectionStateHasBeenSet; }
88 template<typename SourceConnectionStateT = ConnectionState>
89 void SetSourceConnectionState(SourceConnectionStateT&& value) { m_sourceConnectionStateHasBeenSet = true; m_sourceConnectionState = std::forward<SourceConnectionStateT>(value); }
90 template<typename SourceConnectionStateT = ConnectionState>
91 Tunnel& WithSourceConnectionState(SourceConnectionStateT&& value) { SetSourceConnectionState(std::forward<SourceConnectionStateT>(value)); return *this;}
93
95
98 inline const ConnectionState& GetDestinationConnectionState() const { return m_destinationConnectionState; }
99 inline bool DestinationConnectionStateHasBeenSet() const { return m_destinationConnectionStateHasBeenSet; }
100 template<typename DestinationConnectionStateT = ConnectionState>
101 void SetDestinationConnectionState(DestinationConnectionStateT&& value) { m_destinationConnectionStateHasBeenSet = true; m_destinationConnectionState = std::forward<DestinationConnectionStateT>(value); }
102 template<typename DestinationConnectionStateT = ConnectionState>
103 Tunnel& WithDestinationConnectionState(DestinationConnectionStateT&& value) { SetDestinationConnectionState(std::forward<DestinationConnectionStateT>(value)); return *this;}
105
107
110 inline const Aws::String& GetDescription() const { return m_description; }
111 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
112 template<typename DescriptionT = Aws::String>
113 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
114 template<typename DescriptionT = Aws::String>
115 Tunnel& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
117
119
124 inline const DestinationConfig& GetDestinationConfig() const { return m_destinationConfig; }
125 inline bool DestinationConfigHasBeenSet() const { return m_destinationConfigHasBeenSet; }
126 template<typename DestinationConfigT = DestinationConfig>
127 void SetDestinationConfig(DestinationConfigT&& value) { m_destinationConfigHasBeenSet = true; m_destinationConfig = std::forward<DestinationConfigT>(value); }
128 template<typename DestinationConfigT = DestinationConfig>
129 Tunnel& WithDestinationConfig(DestinationConfigT&& value) { SetDestinationConfig(std::forward<DestinationConfigT>(value)); return *this;}
131
133
136 inline const TimeoutConfig& GetTimeoutConfig() const { return m_timeoutConfig; }
137 inline bool TimeoutConfigHasBeenSet() const { return m_timeoutConfigHasBeenSet; }
138 template<typename TimeoutConfigT = TimeoutConfig>
139 void SetTimeoutConfig(TimeoutConfigT&& value) { m_timeoutConfigHasBeenSet = true; m_timeoutConfig = std::forward<TimeoutConfigT>(value); }
140 template<typename TimeoutConfigT = TimeoutConfig>
141 Tunnel& WithTimeoutConfig(TimeoutConfigT&& value) { SetTimeoutConfig(std::forward<TimeoutConfigT>(value)); return *this;}
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) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
152 template<typename TagsT = Aws::Vector<Tag>>
153 Tunnel& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
154 template<typename TagsT = Tag>
155 Tunnel& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
157
159
162 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
163 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
164 template<typename CreatedAtT = Aws::Utils::DateTime>
165 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
166 template<typename CreatedAtT = Aws::Utils::DateTime>
167 Tunnel& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
169
171
174 inline const Aws::Utils::DateTime& GetLastUpdatedAt() const { return m_lastUpdatedAt; }
175 inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; }
176 template<typename LastUpdatedAtT = Aws::Utils::DateTime>
177 void SetLastUpdatedAt(LastUpdatedAtT&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::forward<LastUpdatedAtT>(value); }
178 template<typename LastUpdatedAtT = Aws::Utils::DateTime>
179 Tunnel& WithLastUpdatedAt(LastUpdatedAtT&& value) { SetLastUpdatedAt(std::forward<LastUpdatedAtT>(value)); return *this;}
181 private:
182
183 Aws::String m_tunnelId;
184 bool m_tunnelIdHasBeenSet = false;
185
186 Aws::String m_tunnelArn;
187 bool m_tunnelArnHasBeenSet = false;
188
190 bool m_statusHasBeenSet = false;
191
192 ConnectionState m_sourceConnectionState;
193 bool m_sourceConnectionStateHasBeenSet = false;
194
195 ConnectionState m_destinationConnectionState;
196 bool m_destinationConnectionStateHasBeenSet = false;
197
198 Aws::String m_description;
199 bool m_descriptionHasBeenSet = false;
200
201 DestinationConfig m_destinationConfig;
202 bool m_destinationConfigHasBeenSet = false;
203
204 TimeoutConfig m_timeoutConfig;
205 bool m_timeoutConfigHasBeenSet = false;
206
207 Aws::Vector<Tag> m_tags;
208 bool m_tagsHasBeenSet = false;
209
210 Aws::Utils::DateTime m_createdAt{};
211 bool m_createdAtHasBeenSet = false;
212
213 Aws::Utils::DateTime m_lastUpdatedAt{};
214 bool m_lastUpdatedAtHasBeenSet = false;
215 };
216
217} // namespace Model
218} // namespace IoTSecureTunneling
219} // namespace Aws
const Aws::String & GetTunnelId() const
Definition Tunnel.h:52
const Aws::Utils::DateTime & GetLastUpdatedAt() const
Definition Tunnel.h:174
void SetDestinationConfig(DestinationConfigT &&value)
Definition Tunnel.h:127
const Aws::Utils::DateTime & GetCreatedAt() const
Definition Tunnel.h:162
void SetDestinationConnectionState(DestinationConnectionStateT &&value)
Definition Tunnel.h:101
const Aws::String & GetDescription() const
Definition Tunnel.h:110
Tunnel & WithTimeoutConfig(TimeoutConfigT &&value)
Definition Tunnel.h:141
const ConnectionState & GetDestinationConnectionState() const
Definition Tunnel.h:98
void SetTimeoutConfig(TimeoutConfigT &&value)
Definition Tunnel.h:139
void SetTunnelArn(TunnelArnT &&value)
Definition Tunnel.h:67
Tunnel & WithStatus(TunnelStatus value)
Definition Tunnel.h:79
AWS_IOTSECURETUNNELING_API Tunnel(Aws::Utils::Json::JsonView jsonValue)
void SetCreatedAt(CreatedAtT &&value)
Definition Tunnel.h:165
AWS_IOTSECURETUNNELING_API Tunnel()=default
AWS_IOTSECURETUNNELING_API Tunnel & operator=(Aws::Utils::Json::JsonView jsonValue)
Tunnel & WithLastUpdatedAt(LastUpdatedAtT &&value)
Definition Tunnel.h:179
Tunnel & WithTags(TagsT &&value)
Definition Tunnel.h:153
const DestinationConfig & GetDestinationConfig() const
Definition Tunnel.h:124
void SetDescription(DescriptionT &&value)
Definition Tunnel.h:113
Tunnel & WithDestinationConfig(DestinationConfigT &&value)
Definition Tunnel.h:129
Tunnel & WithDescription(DescriptionT &&value)
Definition Tunnel.h:115
Tunnel & WithTunnelId(TunnelIdT &&value)
Definition Tunnel.h:57
void SetTunnelId(TunnelIdT &&value)
Definition Tunnel.h:55
void SetStatus(TunnelStatus value)
Definition Tunnel.h:78
void SetSourceConnectionState(SourceConnectionStateT &&value)
Definition Tunnel.h:89
bool DestinationConnectionStateHasBeenSet() const
Definition Tunnel.h:99
Tunnel & WithCreatedAt(CreatedAtT &&value)
Definition Tunnel.h:167
Tunnel & WithTunnelArn(TunnelArnT &&value)
Definition Tunnel.h:69
const Aws::Vector< Tag > & GetTags() const
Definition Tunnel.h:148
Tunnel & WithSourceConnectionState(SourceConnectionStateT &&value)
Definition Tunnel.h:91
AWS_IOTSECURETUNNELING_API Aws::Utils::Json::JsonValue Jsonize() const
void SetLastUpdatedAt(LastUpdatedAtT &&value)
Definition Tunnel.h:177
const ConnectionState & GetSourceConnectionState() const
Definition Tunnel.h:86
bool SourceConnectionStateHasBeenSet() const
Definition Tunnel.h:87
Tunnel & AddTags(TagsT &&value)
Definition Tunnel.h:155
const TimeoutConfig & GetTimeoutConfig() const
Definition Tunnel.h:136
const Aws::String & GetTunnelArn() const
Definition Tunnel.h:64
Tunnel & WithDestinationConnectionState(DestinationConnectionStateT &&value)
Definition Tunnel.h:103
TunnelStatus GetStatus() const
Definition Tunnel.h:76
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue