/**
* 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