AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
NetworkInsightsAnalysis.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/AlternatePathHint.h>
13#include <aws/ec2/model/AnalysisStatus.h>
14#include <aws/ec2/model/Explanation.h>
15#include <aws/ec2/model/PathComponent.h>
16#include <aws/ec2/model/Tag.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Xml {
23class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2 {
27namespace Model {
28
35 public:
36 AWS_EC2_API NetworkInsightsAnalysis() = 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& GetNetworkInsightsAnalysisId() const { return m_networkInsightsAnalysisId; }
48 inline bool NetworkInsightsAnalysisIdHasBeenSet() const { return m_networkInsightsAnalysisIdHasBeenSet; }
49 template <typename NetworkInsightsAnalysisIdT = Aws::String>
50 void SetNetworkInsightsAnalysisId(NetworkInsightsAnalysisIdT&& value) {
51 m_networkInsightsAnalysisIdHasBeenSet = true;
52 m_networkInsightsAnalysisId = std::forward<NetworkInsightsAnalysisIdT>(value);
53 }
54 template <typename NetworkInsightsAnalysisIdT = Aws::String>
55 NetworkInsightsAnalysis& WithNetworkInsightsAnalysisId(NetworkInsightsAnalysisIdT&& value) {
56 SetNetworkInsightsAnalysisId(std::forward<NetworkInsightsAnalysisIdT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetNetworkInsightsAnalysisArn() const { return m_networkInsightsAnalysisArn; }
66 inline bool NetworkInsightsAnalysisArnHasBeenSet() const { return m_networkInsightsAnalysisArnHasBeenSet; }
67 template <typename NetworkInsightsAnalysisArnT = Aws::String>
68 void SetNetworkInsightsAnalysisArn(NetworkInsightsAnalysisArnT&& value) {
69 m_networkInsightsAnalysisArnHasBeenSet = true;
70 m_networkInsightsAnalysisArn = std::forward<NetworkInsightsAnalysisArnT>(value);
71 }
72 template <typename NetworkInsightsAnalysisArnT = Aws::String>
73 NetworkInsightsAnalysis& WithNetworkInsightsAnalysisArn(NetworkInsightsAnalysisArnT&& value) {
74 SetNetworkInsightsAnalysisArn(std::forward<NetworkInsightsAnalysisArnT>(value));
75 return *this;
76 }
78
80
83 inline const Aws::String& GetNetworkInsightsPathId() const { return m_networkInsightsPathId; }
84 inline bool NetworkInsightsPathIdHasBeenSet() const { return m_networkInsightsPathIdHasBeenSet; }
85 template <typename NetworkInsightsPathIdT = Aws::String>
86 void SetNetworkInsightsPathId(NetworkInsightsPathIdT&& value) {
87 m_networkInsightsPathIdHasBeenSet = true;
88 m_networkInsightsPathId = std::forward<NetworkInsightsPathIdT>(value);
89 }
90 template <typename NetworkInsightsPathIdT = Aws::String>
91 NetworkInsightsAnalysis& WithNetworkInsightsPathId(NetworkInsightsPathIdT&& value) {
92 SetNetworkInsightsPathId(std::forward<NetworkInsightsPathIdT>(value));
93 return *this;
94 }
96
98
101 inline const Aws::Vector<Aws::String>& GetAdditionalAccounts() const { return m_additionalAccounts; }
102 inline bool AdditionalAccountsHasBeenSet() const { return m_additionalAccountsHasBeenSet; }
103 template <typename AdditionalAccountsT = Aws::Vector<Aws::String>>
104 void SetAdditionalAccounts(AdditionalAccountsT&& value) {
105 m_additionalAccountsHasBeenSet = true;
106 m_additionalAccounts = std::forward<AdditionalAccountsT>(value);
107 }
108 template <typename AdditionalAccountsT = Aws::Vector<Aws::String>>
109 NetworkInsightsAnalysis& WithAdditionalAccounts(AdditionalAccountsT&& value) {
110 SetAdditionalAccounts(std::forward<AdditionalAccountsT>(value));
111 return *this;
112 }
113 template <typename AdditionalAccountsT = Aws::String>
114 NetworkInsightsAnalysis& AddAdditionalAccounts(AdditionalAccountsT&& value) {
115 m_additionalAccountsHasBeenSet = true;
116 m_additionalAccounts.emplace_back(std::forward<AdditionalAccountsT>(value));
117 return *this;
118 }
120
122
126 inline const Aws::Vector<Aws::String>& GetFilterInArns() const { return m_filterInArns; }
127 inline bool FilterInArnsHasBeenSet() const { return m_filterInArnsHasBeenSet; }
128 template <typename FilterInArnsT = Aws::Vector<Aws::String>>
129 void SetFilterInArns(FilterInArnsT&& value) {
130 m_filterInArnsHasBeenSet = true;
131 m_filterInArns = std::forward<FilterInArnsT>(value);
132 }
133 template <typename FilterInArnsT = Aws::Vector<Aws::String>>
135 SetFilterInArns(std::forward<FilterInArnsT>(value));
136 return *this;
137 }
138 template <typename FilterInArnsT = Aws::String>
139 NetworkInsightsAnalysis& AddFilterInArns(FilterInArnsT&& value) {
140 m_filterInArnsHasBeenSet = true;
141 m_filterInArns.emplace_back(std::forward<FilterInArnsT>(value));
142 return *this;
143 }
145
147
151 inline const Aws::Vector<Aws::String>& GetFilterOutArns() const { return m_filterOutArns; }
152 inline bool FilterOutArnsHasBeenSet() const { return m_filterOutArnsHasBeenSet; }
153 template <typename FilterOutArnsT = Aws::Vector<Aws::String>>
154 void SetFilterOutArns(FilterOutArnsT&& value) {
155 m_filterOutArnsHasBeenSet = true;
156 m_filterOutArns = std::forward<FilterOutArnsT>(value);
157 }
158 template <typename FilterOutArnsT = Aws::Vector<Aws::String>>
160 SetFilterOutArns(std::forward<FilterOutArnsT>(value));
161 return *this;
162 }
163 template <typename FilterOutArnsT = Aws::String>
164 NetworkInsightsAnalysis& AddFilterOutArns(FilterOutArnsT&& value) {
165 m_filterOutArnsHasBeenSet = true;
166 m_filterOutArns.emplace_back(std::forward<FilterOutArnsT>(value));
167 return *this;
168 }
170
172
175 inline const Aws::Utils::DateTime& GetStartDate() const { return m_startDate; }
176 inline bool StartDateHasBeenSet() const { return m_startDateHasBeenSet; }
177 template <typename StartDateT = Aws::Utils::DateTime>
178 void SetStartDate(StartDateT&& value) {
179 m_startDateHasBeenSet = true;
180 m_startDate = std::forward<StartDateT>(value);
181 }
182 template <typename StartDateT = Aws::Utils::DateTime>
184 SetStartDate(std::forward<StartDateT>(value));
185 return *this;
186 }
188
190
193 inline AnalysisStatus GetStatus() const { return m_status; }
194 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
195 inline void SetStatus(AnalysisStatus value) {
196 m_statusHasBeenSet = true;
197 m_status = value;
198 }
200 SetStatus(value);
201 return *this;
202 }
204
206
209 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
210 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
211 template <typename StatusMessageT = Aws::String>
212 void SetStatusMessage(StatusMessageT&& value) {
213 m_statusMessageHasBeenSet = true;
214 m_statusMessage = std::forward<StatusMessageT>(value);
215 }
216 template <typename StatusMessageT = Aws::String>
218 SetStatusMessage(std::forward<StatusMessageT>(value));
219 return *this;
220 }
222
224
227 inline const Aws::String& GetWarningMessage() const { return m_warningMessage; }
228 inline bool WarningMessageHasBeenSet() const { return m_warningMessageHasBeenSet; }
229 template <typename WarningMessageT = Aws::String>
230 void SetWarningMessage(WarningMessageT&& value) {
231 m_warningMessageHasBeenSet = true;
232 m_warningMessage = std::forward<WarningMessageT>(value);
233 }
234 template <typename WarningMessageT = Aws::String>
235 NetworkInsightsAnalysis& WithWarningMessage(WarningMessageT&& value) {
236 SetWarningMessage(std::forward<WarningMessageT>(value));
237 return *this;
238 }
240
242
245 inline bool GetNetworkPathFound() const { return m_networkPathFound; }
246 inline bool NetworkPathFoundHasBeenSet() const { return m_networkPathFoundHasBeenSet; }
247 inline void SetNetworkPathFound(bool value) {
248 m_networkPathFoundHasBeenSet = true;
249 m_networkPathFound = value;
250 }
252 SetNetworkPathFound(value);
253 return *this;
254 }
256
258
261 inline const Aws::Vector<PathComponent>& GetForwardPathComponents() const { return m_forwardPathComponents; }
262 inline bool ForwardPathComponentsHasBeenSet() const { return m_forwardPathComponentsHasBeenSet; }
263 template <typename ForwardPathComponentsT = Aws::Vector<PathComponent>>
264 void SetForwardPathComponents(ForwardPathComponentsT&& value) {
265 m_forwardPathComponentsHasBeenSet = true;
266 m_forwardPathComponents = std::forward<ForwardPathComponentsT>(value);
267 }
268 template <typename ForwardPathComponentsT = Aws::Vector<PathComponent>>
269 NetworkInsightsAnalysis& WithForwardPathComponents(ForwardPathComponentsT&& value) {
270 SetForwardPathComponents(std::forward<ForwardPathComponentsT>(value));
271 return *this;
272 }
273 template <typename ForwardPathComponentsT = PathComponent>
274 NetworkInsightsAnalysis& AddForwardPathComponents(ForwardPathComponentsT&& value) {
275 m_forwardPathComponentsHasBeenSet = true;
276 m_forwardPathComponents.emplace_back(std::forward<ForwardPathComponentsT>(value));
277 return *this;
278 }
280
282
285 inline const Aws::Vector<PathComponent>& GetReturnPathComponents() const { return m_returnPathComponents; }
286 inline bool ReturnPathComponentsHasBeenSet() const { return m_returnPathComponentsHasBeenSet; }
287 template <typename ReturnPathComponentsT = Aws::Vector<PathComponent>>
288 void SetReturnPathComponents(ReturnPathComponentsT&& value) {
289 m_returnPathComponentsHasBeenSet = true;
290 m_returnPathComponents = std::forward<ReturnPathComponentsT>(value);
291 }
292 template <typename ReturnPathComponentsT = Aws::Vector<PathComponent>>
293 NetworkInsightsAnalysis& WithReturnPathComponents(ReturnPathComponentsT&& value) {
294 SetReturnPathComponents(std::forward<ReturnPathComponentsT>(value));
295 return *this;
296 }
297 template <typename ReturnPathComponentsT = PathComponent>
298 NetworkInsightsAnalysis& AddReturnPathComponents(ReturnPathComponentsT&& value) {
299 m_returnPathComponentsHasBeenSet = true;
300 m_returnPathComponents.emplace_back(std::forward<ReturnPathComponentsT>(value));
301 return *this;
302 }
304
306
311 inline const Aws::Vector<Explanation>& GetExplanations() const { return m_explanations; }
312 inline bool ExplanationsHasBeenSet() const { return m_explanationsHasBeenSet; }
313 template <typename ExplanationsT = Aws::Vector<Explanation>>
314 void SetExplanations(ExplanationsT&& value) {
315 m_explanationsHasBeenSet = true;
316 m_explanations = std::forward<ExplanationsT>(value);
317 }
318 template <typename ExplanationsT = Aws::Vector<Explanation>>
320 SetExplanations(std::forward<ExplanationsT>(value));
321 return *this;
322 }
323 template <typename ExplanationsT = Explanation>
324 NetworkInsightsAnalysis& AddExplanations(ExplanationsT&& value) {
325 m_explanationsHasBeenSet = true;
326 m_explanations.emplace_back(std::forward<ExplanationsT>(value));
327 return *this;
328 }
330
332
335 inline const Aws::Vector<AlternatePathHint>& GetAlternatePathHints() const { return m_alternatePathHints; }
336 inline bool AlternatePathHintsHasBeenSet() const { return m_alternatePathHintsHasBeenSet; }
337 template <typename AlternatePathHintsT = Aws::Vector<AlternatePathHint>>
338 void SetAlternatePathHints(AlternatePathHintsT&& value) {
339 m_alternatePathHintsHasBeenSet = true;
340 m_alternatePathHints = std::forward<AlternatePathHintsT>(value);
341 }
342 template <typename AlternatePathHintsT = Aws::Vector<AlternatePathHint>>
343 NetworkInsightsAnalysis& WithAlternatePathHints(AlternatePathHintsT&& value) {
344 SetAlternatePathHints(std::forward<AlternatePathHintsT>(value));
345 return *this;
346 }
347 template <typename AlternatePathHintsT = AlternatePathHint>
348 NetworkInsightsAnalysis& AddAlternatePathHints(AlternatePathHintsT&& value) {
349 m_alternatePathHintsHasBeenSet = true;
350 m_alternatePathHints.emplace_back(std::forward<AlternatePathHintsT>(value));
351 return *this;
352 }
354
356
359 inline const Aws::Vector<Aws::String>& GetSuggestedAccounts() const { return m_suggestedAccounts; }
360 inline bool SuggestedAccountsHasBeenSet() const { return m_suggestedAccountsHasBeenSet; }
361 template <typename SuggestedAccountsT = Aws::Vector<Aws::String>>
362 void SetSuggestedAccounts(SuggestedAccountsT&& value) {
363 m_suggestedAccountsHasBeenSet = true;
364 m_suggestedAccounts = std::forward<SuggestedAccountsT>(value);
365 }
366 template <typename SuggestedAccountsT = Aws::Vector<Aws::String>>
367 NetworkInsightsAnalysis& WithSuggestedAccounts(SuggestedAccountsT&& value) {
368 SetSuggestedAccounts(std::forward<SuggestedAccountsT>(value));
369 return *this;
370 }
371 template <typename SuggestedAccountsT = Aws::String>
372 NetworkInsightsAnalysis& AddSuggestedAccounts(SuggestedAccountsT&& value) {
373 m_suggestedAccountsHasBeenSet = true;
374 m_suggestedAccounts.emplace_back(std::forward<SuggestedAccountsT>(value));
375 return *this;
376 }
378
380
383 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
384 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
385 template <typename TagsT = Aws::Vector<Tag>>
386 void SetTags(TagsT&& value) {
387 m_tagsHasBeenSet = true;
388 m_tags = std::forward<TagsT>(value);
389 }
390 template <typename TagsT = Aws::Vector<Tag>>
392 SetTags(std::forward<TagsT>(value));
393 return *this;
394 }
395 template <typename TagsT = Tag>
397 m_tagsHasBeenSet = true;
398 m_tags.emplace_back(std::forward<TagsT>(value));
399 return *this;
400 }
402 private:
403 Aws::String m_networkInsightsAnalysisId;
404
405 Aws::String m_networkInsightsAnalysisArn;
406
407 Aws::String m_networkInsightsPathId;
408
409 Aws::Vector<Aws::String> m_additionalAccounts;
410
411 Aws::Vector<Aws::String> m_filterInArns;
412
413 Aws::Vector<Aws::String> m_filterOutArns;
414
415 Aws::Utils::DateTime m_startDate{};
416
418
419 Aws::String m_statusMessage;
420
421 Aws::String m_warningMessage;
422
423 bool m_networkPathFound{false};
424
425 Aws::Vector<PathComponent> m_forwardPathComponents;
426
427 Aws::Vector<PathComponent> m_returnPathComponents;
428
429 Aws::Vector<Explanation> m_explanations;
430
431 Aws::Vector<AlternatePathHint> m_alternatePathHints;
432
433 Aws::Vector<Aws::String> m_suggestedAccounts;
434
435 Aws::Vector<Tag> m_tags;
436 bool m_networkInsightsAnalysisIdHasBeenSet = false;
437 bool m_networkInsightsAnalysisArnHasBeenSet = false;
438 bool m_networkInsightsPathIdHasBeenSet = false;
439 bool m_additionalAccountsHasBeenSet = false;
440 bool m_filterInArnsHasBeenSet = false;
441 bool m_filterOutArnsHasBeenSet = false;
442 bool m_startDateHasBeenSet = false;
443 bool m_statusHasBeenSet = false;
444 bool m_statusMessageHasBeenSet = false;
445 bool m_warningMessageHasBeenSet = false;
446 bool m_networkPathFoundHasBeenSet = false;
447 bool m_forwardPathComponentsHasBeenSet = false;
448 bool m_returnPathComponentsHasBeenSet = false;
449 bool m_explanationsHasBeenSet = false;
450 bool m_alternatePathHintsHasBeenSet = false;
451 bool m_suggestedAccountsHasBeenSet = false;
452 bool m_tagsHasBeenSet = false;
453};
454
455} // namespace Model
456} // namespace EC2
457} // namespace Aws
const Aws::Vector< Aws::String > & GetFilterOutArns() const
NetworkInsightsAnalysis & WithReturnPathComponents(ReturnPathComponentsT &&value)
const Aws::Vector< Explanation > & GetExplanations() const
NetworkInsightsAnalysis & AddAlternatePathHints(AlternatePathHintsT &&value)
const Aws::Vector< AlternatePathHint > & GetAlternatePathHints() const
NetworkInsightsAnalysis & WithNetworkInsightsAnalysisArn(NetworkInsightsAnalysisArnT &&value)
NetworkInsightsAnalysis & WithFilterOutArns(FilterOutArnsT &&value)
NetworkInsightsAnalysis & AddFilterOutArns(FilterOutArnsT &&value)
void SetNetworkInsightsAnalysisId(NetworkInsightsAnalysisIdT &&value)
NetworkInsightsAnalysis & AddReturnPathComponents(ReturnPathComponentsT &&value)
const Aws::Vector< Tag > & GetTags() const
const Aws::String & GetNetworkInsightsAnalysisId() const
AWS_EC2_API NetworkInsightsAnalysis & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInsightsAnalysis & WithAlternatePathHints(AlternatePathHintsT &&value)
NetworkInsightsAnalysis & WithTags(TagsT &&value)
NetworkInsightsAnalysis & AddSuggestedAccounts(SuggestedAccountsT &&value)
const Aws::Vector< Aws::String > & GetFilterInArns() const
NetworkInsightsAnalysis & AddForwardPathComponents(ForwardPathComponentsT &&value)
NetworkInsightsAnalysis & AddFilterInArns(FilterInArnsT &&value)
NetworkInsightsAnalysis & WithStatusMessage(StatusMessageT &&value)
NetworkInsightsAnalysis & WithStartDate(StartDateT &&value)
NetworkInsightsAnalysis & WithWarningMessage(WarningMessageT &&value)
void SetAlternatePathHints(AlternatePathHintsT &&value)
NetworkInsightsAnalysis & AddTags(TagsT &&value)
void SetAdditionalAccounts(AdditionalAccountsT &&value)
NetworkInsightsAnalysis & WithSuggestedAccounts(SuggestedAccountsT &&value)
AWS_EC2_API NetworkInsightsAnalysis(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< PathComponent > & GetReturnPathComponents() const
NetworkInsightsAnalysis & AddExplanations(ExplanationsT &&value)
NetworkInsightsAnalysis & AddAdditionalAccounts(AdditionalAccountsT &&value)
NetworkInsightsAnalysis & WithStatus(AnalysisStatus value)
const Aws::Vector< Aws::String > & GetAdditionalAccounts() const
const Aws::String & GetNetworkInsightsPathId() const
NetworkInsightsAnalysis & WithNetworkInsightsAnalysisId(NetworkInsightsAnalysisIdT &&value)
NetworkInsightsAnalysis & WithNetworkPathFound(bool value)
void SetForwardPathComponents(ForwardPathComponentsT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::Utils::DateTime & GetStartDate() const
void SetSuggestedAccounts(SuggestedAccountsT &&value)
NetworkInsightsAnalysis & WithAdditionalAccounts(AdditionalAccountsT &&value)
NetworkInsightsAnalysis & WithExplanations(ExplanationsT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
NetworkInsightsAnalysis & WithFilterInArns(FilterInArnsT &&value)
AWS_EC2_API NetworkInsightsAnalysis()=default
NetworkInsightsAnalysis & WithForwardPathComponents(ForwardPathComponentsT &&value)
const Aws::Vector< Aws::String > & GetSuggestedAccounts() const
const Aws::String & GetNetworkInsightsAnalysisArn() const
void SetReturnPathComponents(ReturnPathComponentsT &&value)
void SetNetworkInsightsAnalysisArn(NetworkInsightsAnalysisArnT &&value)
const Aws::Vector< PathComponent > & GetForwardPathComponents() const
NetworkInsightsAnalysis & WithNetworkInsightsPathId(NetworkInsightsPathIdT &&value)
void SetNetworkInsightsPathId(NetworkInsightsPathIdT &&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