/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes a network insights analysis.See Also:
AWS
* API Reference
The ID of the network insights analysis.
*/ inline const Aws::String& GetNetworkInsightsAnalysisId() const{ return m_networkInsightsAnalysisId; } /** *The ID of the network insights analysis.
*/ inline bool NetworkInsightsAnalysisIdHasBeenSet() const { return m_networkInsightsAnalysisIdHasBeenSet; } /** *The ID of the network insights analysis.
*/ inline void SetNetworkInsightsAnalysisId(const Aws::String& value) { m_networkInsightsAnalysisIdHasBeenSet = true; m_networkInsightsAnalysisId = value; } /** *The ID of the network insights analysis.
*/ inline void SetNetworkInsightsAnalysisId(Aws::String&& value) { m_networkInsightsAnalysisIdHasBeenSet = true; m_networkInsightsAnalysisId = std::move(value); } /** *The ID of the network insights analysis.
*/ inline void SetNetworkInsightsAnalysisId(const char* value) { m_networkInsightsAnalysisIdHasBeenSet = true; m_networkInsightsAnalysisId.assign(value); } /** *The ID of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsAnalysisId(const Aws::String& value) { SetNetworkInsightsAnalysisId(value); return *this;} /** *The ID of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsAnalysisId(Aws::String&& value) { SetNetworkInsightsAnalysisId(std::move(value)); return *this;} /** *The ID of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsAnalysisId(const char* value) { SetNetworkInsightsAnalysisId(value); return *this;} /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline const Aws::String& GetNetworkInsightsAnalysisArn() const{ return m_networkInsightsAnalysisArn; } /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline bool NetworkInsightsAnalysisArnHasBeenSet() const { return m_networkInsightsAnalysisArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline void SetNetworkInsightsAnalysisArn(const Aws::String& value) { m_networkInsightsAnalysisArnHasBeenSet = true; m_networkInsightsAnalysisArn = value; } /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline void SetNetworkInsightsAnalysisArn(Aws::String&& value) { m_networkInsightsAnalysisArnHasBeenSet = true; m_networkInsightsAnalysisArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline void SetNetworkInsightsAnalysisArn(const char* value) { m_networkInsightsAnalysisArnHasBeenSet = true; m_networkInsightsAnalysisArn.assign(value); } /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsAnalysisArn(const Aws::String& value) { SetNetworkInsightsAnalysisArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsAnalysisArn(Aws::String&& value) { SetNetworkInsightsAnalysisArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsAnalysisArn(const char* value) { SetNetworkInsightsAnalysisArn(value); return *this;} /** *The ID of the path.
*/ inline const Aws::String& GetNetworkInsightsPathId() const{ return m_networkInsightsPathId; } /** *The ID of the path.
*/ inline bool NetworkInsightsPathIdHasBeenSet() const { return m_networkInsightsPathIdHasBeenSet; } /** *The ID of the path.
*/ inline void SetNetworkInsightsPathId(const Aws::String& value) { m_networkInsightsPathIdHasBeenSet = true; m_networkInsightsPathId = value; } /** *The ID of the path.
*/ inline void SetNetworkInsightsPathId(Aws::String&& value) { m_networkInsightsPathIdHasBeenSet = true; m_networkInsightsPathId = std::move(value); } /** *The ID of the path.
*/ inline void SetNetworkInsightsPathId(const char* value) { m_networkInsightsPathIdHasBeenSet = true; m_networkInsightsPathId.assign(value); } /** *The ID of the path.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsPathId(const Aws::String& value) { SetNetworkInsightsPathId(value); return *this;} /** *The ID of the path.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsPathId(Aws::String&& value) { SetNetworkInsightsPathId(std::move(value)); return *this;} /** *The ID of the path.
*/ inline NetworkInsightsAnalysis& WithNetworkInsightsPathId(const char* value) { SetNetworkInsightsPathId(value); return *this;} /** *The member accounts that contain resources that the path can traverse.
*/ inline const Aws::VectorThe member accounts that contain resources that the path can traverse.
*/ inline bool AdditionalAccountsHasBeenSet() const { return m_additionalAccountsHasBeenSet; } /** *The member accounts that contain resources that the path can traverse.
*/ inline void SetAdditionalAccounts(const Aws::VectorThe member accounts that contain resources that the path can traverse.
*/ inline void SetAdditionalAccounts(Aws::VectorThe member accounts that contain resources that the path can traverse.
*/ inline NetworkInsightsAnalysis& WithAdditionalAccounts(const Aws::VectorThe member accounts that contain resources that the path can traverse.
*/ inline NetworkInsightsAnalysis& WithAdditionalAccounts(Aws::VectorThe member accounts that contain resources that the path can traverse.
*/ inline NetworkInsightsAnalysis& AddAdditionalAccounts(const Aws::String& value) { m_additionalAccountsHasBeenSet = true; m_additionalAccounts.push_back(value); return *this; } /** *The member accounts that contain resources that the path can traverse.
*/ inline NetworkInsightsAnalysis& AddAdditionalAccounts(Aws::String&& value) { m_additionalAccountsHasBeenSet = true; m_additionalAccounts.push_back(std::move(value)); return *this; } /** *The member accounts that contain resources that the path can traverse.
*/ inline NetworkInsightsAnalysis& AddAdditionalAccounts(const char* value) { m_additionalAccountsHasBeenSet = true; m_additionalAccounts.push_back(value); return *this; } /** *The Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline const Aws::VectorThe Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline bool FilterInArnsHasBeenSet() const { return m_filterInArnsHasBeenSet; } /** *The Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline void SetFilterInArns(const Aws::VectorThe Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline void SetFilterInArns(Aws::VectorThe Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline NetworkInsightsAnalysis& WithFilterInArns(const Aws::VectorThe Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline NetworkInsightsAnalysis& WithFilterInArns(Aws::VectorThe Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline NetworkInsightsAnalysis& AddFilterInArns(const Aws::String& value) { m_filterInArnsHasBeenSet = true; m_filterInArns.push_back(value); return *this; } /** *The Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline NetworkInsightsAnalysis& AddFilterInArns(Aws::String&& value) { m_filterInArnsHasBeenSet = true; m_filterInArns.push_back(std::move(value)); return *this; } /** *The Amazon Resource Names (ARN) of the resources that the path must * traverse.
*/ inline NetworkInsightsAnalysis& AddFilterInArns(const char* value) { m_filterInArnsHasBeenSet = true; m_filterInArns.push_back(value); return *this; } /** *The time the analysis started.
*/ inline const Aws::Utils::DateTime& GetStartDate() const{ return m_startDate; } /** *The time the analysis started.
*/ inline bool StartDateHasBeenSet() const { return m_startDateHasBeenSet; } /** *The time the analysis started.
*/ inline void SetStartDate(const Aws::Utils::DateTime& value) { m_startDateHasBeenSet = true; m_startDate = value; } /** *The time the analysis started.
*/ inline void SetStartDate(Aws::Utils::DateTime&& value) { m_startDateHasBeenSet = true; m_startDate = std::move(value); } /** *The time the analysis started.
*/ inline NetworkInsightsAnalysis& WithStartDate(const Aws::Utils::DateTime& value) { SetStartDate(value); return *this;} /** *The time the analysis started.
*/ inline NetworkInsightsAnalysis& WithStartDate(Aws::Utils::DateTime&& value) { SetStartDate(std::move(value)); return *this;} /** *The status of the network insights analysis.
*/ inline const AnalysisStatus& GetStatus() const{ return m_status; } /** *The status of the network insights analysis.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The status of the network insights analysis.
*/ inline void SetStatus(const AnalysisStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The status of the network insights analysis.
*/ inline void SetStatus(AnalysisStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The status of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithStatus(const AnalysisStatus& value) { SetStatus(value); return *this;} /** *The status of the network insights analysis.
*/ inline NetworkInsightsAnalysis& WithStatus(AnalysisStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The status message, if the status is failed
.
The status message, if the status is failed
.
The status message, if the status is failed
.
The status message, if the status is failed
.
The status message, if the status is failed
.
The status message, if the status is failed
.
The status message, if the status is failed
.
The status message, if the status is failed
.
The warning message.
*/ inline const Aws::String& GetWarningMessage() const{ return m_warningMessage; } /** *The warning message.
*/ inline bool WarningMessageHasBeenSet() const { return m_warningMessageHasBeenSet; } /** *The warning message.
*/ inline void SetWarningMessage(const Aws::String& value) { m_warningMessageHasBeenSet = true; m_warningMessage = value; } /** *The warning message.
*/ inline void SetWarningMessage(Aws::String&& value) { m_warningMessageHasBeenSet = true; m_warningMessage = std::move(value); } /** *The warning message.
*/ inline void SetWarningMessage(const char* value) { m_warningMessageHasBeenSet = true; m_warningMessage.assign(value); } /** *The warning message.
*/ inline NetworkInsightsAnalysis& WithWarningMessage(const Aws::String& value) { SetWarningMessage(value); return *this;} /** *The warning message.
*/ inline NetworkInsightsAnalysis& WithWarningMessage(Aws::String&& value) { SetWarningMessage(std::move(value)); return *this;} /** *The warning message.
*/ inline NetworkInsightsAnalysis& WithWarningMessage(const char* value) { SetWarningMessage(value); return *this;} /** *Indicates whether the destination is reachable from the source.
*/ inline bool GetNetworkPathFound() const{ return m_networkPathFound; } /** *Indicates whether the destination is reachable from the source.
*/ inline bool NetworkPathFoundHasBeenSet() const { return m_networkPathFoundHasBeenSet; } /** *Indicates whether the destination is reachable from the source.
*/ inline void SetNetworkPathFound(bool value) { m_networkPathFoundHasBeenSet = true; m_networkPathFound = value; } /** *Indicates whether the destination is reachable from the source.
*/ inline NetworkInsightsAnalysis& WithNetworkPathFound(bool value) { SetNetworkPathFound(value); return *this;} /** *The components in the path from source to destination.
*/ inline const Aws::VectorThe components in the path from source to destination.
*/ inline bool ForwardPathComponentsHasBeenSet() const { return m_forwardPathComponentsHasBeenSet; } /** *The components in the path from source to destination.
*/ inline void SetForwardPathComponents(const Aws::VectorThe components in the path from source to destination.
*/ inline void SetForwardPathComponents(Aws::VectorThe components in the path from source to destination.
*/ inline NetworkInsightsAnalysis& WithForwardPathComponents(const Aws::VectorThe components in the path from source to destination.
*/ inline NetworkInsightsAnalysis& WithForwardPathComponents(Aws::VectorThe components in the path from source to destination.
*/ inline NetworkInsightsAnalysis& AddForwardPathComponents(const PathComponent& value) { m_forwardPathComponentsHasBeenSet = true; m_forwardPathComponents.push_back(value); return *this; } /** *The components in the path from source to destination.
*/ inline NetworkInsightsAnalysis& AddForwardPathComponents(PathComponent&& value) { m_forwardPathComponentsHasBeenSet = true; m_forwardPathComponents.push_back(std::move(value)); return *this; } /** *The components in the path from destination to source.
*/ inline const Aws::VectorThe components in the path from destination to source.
*/ inline bool ReturnPathComponentsHasBeenSet() const { return m_returnPathComponentsHasBeenSet; } /** *The components in the path from destination to source.
*/ inline void SetReturnPathComponents(const Aws::VectorThe components in the path from destination to source.
*/ inline void SetReturnPathComponents(Aws::VectorThe components in the path from destination to source.
*/ inline NetworkInsightsAnalysis& WithReturnPathComponents(const Aws::VectorThe components in the path from destination to source.
*/ inline NetworkInsightsAnalysis& WithReturnPathComponents(Aws::VectorThe components in the path from destination to source.
*/ inline NetworkInsightsAnalysis& AddReturnPathComponents(const PathComponent& value) { m_returnPathComponentsHasBeenSet = true; m_returnPathComponents.push_back(value); return *this; } /** *The components in the path from destination to source.
*/ inline NetworkInsightsAnalysis& AddReturnPathComponents(PathComponent&& value) { m_returnPathComponentsHasBeenSet = true; m_returnPathComponents.push_back(std::move(value)); return *this; } /** *The explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline const Aws::VectorThe explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline bool ExplanationsHasBeenSet() const { return m_explanationsHasBeenSet; } /** *The explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline void SetExplanations(const Aws::VectorThe explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline void SetExplanations(Aws::VectorThe explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline NetworkInsightsAnalysis& WithExplanations(const Aws::VectorThe explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline NetworkInsightsAnalysis& WithExplanations(Aws::VectorThe explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline NetworkInsightsAnalysis& AddExplanations(const Explanation& value) { m_explanationsHasBeenSet = true; m_explanations.push_back(value); return *this; } /** *The explanations. For more information, see Reachability * Analyzer explanation codes.
*/ inline NetworkInsightsAnalysis& AddExplanations(Explanation&& value) { m_explanationsHasBeenSet = true; m_explanations.push_back(std::move(value)); return *this; } /** *Potential intermediate components.
*/ inline const Aws::VectorPotential intermediate components.
*/ inline bool AlternatePathHintsHasBeenSet() const { return m_alternatePathHintsHasBeenSet; } /** *Potential intermediate components.
*/ inline void SetAlternatePathHints(const Aws::VectorPotential intermediate components.
*/ inline void SetAlternatePathHints(Aws::VectorPotential intermediate components.
*/ inline NetworkInsightsAnalysis& WithAlternatePathHints(const Aws::VectorPotential intermediate components.
*/ inline NetworkInsightsAnalysis& WithAlternatePathHints(Aws::VectorPotential intermediate components.
*/ inline NetworkInsightsAnalysis& AddAlternatePathHints(const AlternatePathHint& value) { m_alternatePathHintsHasBeenSet = true; m_alternatePathHints.push_back(value); return *this; } /** *Potential intermediate components.
*/ inline NetworkInsightsAnalysis& AddAlternatePathHints(AlternatePathHint&& value) { m_alternatePathHintsHasBeenSet = true; m_alternatePathHints.push_back(std::move(value)); return *this; } /** *Potential intermediate accounts.
*/ inline const Aws::VectorPotential intermediate accounts.
*/ inline bool SuggestedAccountsHasBeenSet() const { return m_suggestedAccountsHasBeenSet; } /** *Potential intermediate accounts.
*/ inline void SetSuggestedAccounts(const Aws::VectorPotential intermediate accounts.
*/ inline void SetSuggestedAccounts(Aws::VectorPotential intermediate accounts.
*/ inline NetworkInsightsAnalysis& WithSuggestedAccounts(const Aws::VectorPotential intermediate accounts.
*/ inline NetworkInsightsAnalysis& WithSuggestedAccounts(Aws::VectorPotential intermediate accounts.
*/ inline NetworkInsightsAnalysis& AddSuggestedAccounts(const Aws::String& value) { m_suggestedAccountsHasBeenSet = true; m_suggestedAccounts.push_back(value); return *this; } /** *Potential intermediate accounts.
*/ inline NetworkInsightsAnalysis& AddSuggestedAccounts(Aws::String&& value) { m_suggestedAccountsHasBeenSet = true; m_suggestedAccounts.push_back(std::move(value)); return *this; } /** *Potential intermediate accounts.
*/ inline NetworkInsightsAnalysis& AddSuggestedAccounts(const char* value) { m_suggestedAccountsHasBeenSet = true; m_suggestedAccounts.push_back(value); return *this; } /** *The tags.
*/ inline const Aws::VectorThe tags.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The tags.
*/ inline void SetTags(const Aws::VectorThe tags.
*/ inline void SetTags(Aws::VectorThe tags.
*/ inline NetworkInsightsAnalysis& WithTags(const Aws::VectorThe tags.
*/ inline NetworkInsightsAnalysis& WithTags(Aws::VectorThe tags.
*/ inline NetworkInsightsAnalysis& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *The tags.
*/ inline NetworkInsightsAnalysis& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_networkInsightsAnalysisId; bool m_networkInsightsAnalysisIdHasBeenSet = false; Aws::String m_networkInsightsAnalysisArn; bool m_networkInsightsAnalysisArnHasBeenSet = false; Aws::String m_networkInsightsPathId; bool m_networkInsightsPathIdHasBeenSet = false; Aws::Vector