/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace EC2 { namespace Model { /** *

Describes a Network Access Scope analysis.

See Also:

AWS * API Reference

*/ class NetworkInsightsAccessScopeAnalysis { public: AWS_EC2_API NetworkInsightsAccessScopeAnalysis(); AWS_EC2_API NetworkInsightsAccessScopeAnalysis(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_EC2_API NetworkInsightsAccessScopeAnalysis& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The ID of the Network Access Scope analysis.

*/ inline const Aws::String& GetNetworkInsightsAccessScopeAnalysisId() const{ return m_networkInsightsAccessScopeAnalysisId; } /** *

The ID of the Network Access Scope analysis.

*/ inline bool NetworkInsightsAccessScopeAnalysisIdHasBeenSet() const { return m_networkInsightsAccessScopeAnalysisIdHasBeenSet; } /** *

The ID of the Network Access Scope analysis.

*/ inline void SetNetworkInsightsAccessScopeAnalysisId(const Aws::String& value) { m_networkInsightsAccessScopeAnalysisIdHasBeenSet = true; m_networkInsightsAccessScopeAnalysisId = value; } /** *

The ID of the Network Access Scope analysis.

*/ inline void SetNetworkInsightsAccessScopeAnalysisId(Aws::String&& value) { m_networkInsightsAccessScopeAnalysisIdHasBeenSet = true; m_networkInsightsAccessScopeAnalysisId = std::move(value); } /** *

The ID of the Network Access Scope analysis.

*/ inline void SetNetworkInsightsAccessScopeAnalysisId(const char* value) { m_networkInsightsAccessScopeAnalysisIdHasBeenSet = true; m_networkInsightsAccessScopeAnalysisId.assign(value); } /** *

The ID of the Network Access Scope analysis.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeAnalysisId(const Aws::String& value) { SetNetworkInsightsAccessScopeAnalysisId(value); return *this;} /** *

The ID of the Network Access Scope analysis.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeAnalysisId(Aws::String&& value) { SetNetworkInsightsAccessScopeAnalysisId(std::move(value)); return *this;} /** *

The ID of the Network Access Scope analysis.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeAnalysisId(const char* value) { SetNetworkInsightsAccessScopeAnalysisId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline const Aws::String& GetNetworkInsightsAccessScopeAnalysisArn() const{ return m_networkInsightsAccessScopeAnalysisArn; } /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline bool NetworkInsightsAccessScopeAnalysisArnHasBeenSet() const { return m_networkInsightsAccessScopeAnalysisArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline void SetNetworkInsightsAccessScopeAnalysisArn(const Aws::String& value) { m_networkInsightsAccessScopeAnalysisArnHasBeenSet = true; m_networkInsightsAccessScopeAnalysisArn = value; } /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline void SetNetworkInsightsAccessScopeAnalysisArn(Aws::String&& value) { m_networkInsightsAccessScopeAnalysisArnHasBeenSet = true; m_networkInsightsAccessScopeAnalysisArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline void SetNetworkInsightsAccessScopeAnalysisArn(const char* value) { m_networkInsightsAccessScopeAnalysisArnHasBeenSet = true; m_networkInsightsAccessScopeAnalysisArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeAnalysisArn(const Aws::String& value) { SetNetworkInsightsAccessScopeAnalysisArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeAnalysisArn(Aws::String&& value) { SetNetworkInsightsAccessScopeAnalysisArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeAnalysisArn(const char* value) { SetNetworkInsightsAccessScopeAnalysisArn(value); return *this;} /** *

The ID of the Network Access Scope.

*/ inline const Aws::String& GetNetworkInsightsAccessScopeId() const{ return m_networkInsightsAccessScopeId; } /** *

The ID of the Network Access Scope.

*/ inline bool NetworkInsightsAccessScopeIdHasBeenSet() const { return m_networkInsightsAccessScopeIdHasBeenSet; } /** *

The ID of the Network Access Scope.

*/ inline void SetNetworkInsightsAccessScopeId(const Aws::String& value) { m_networkInsightsAccessScopeIdHasBeenSet = true; m_networkInsightsAccessScopeId = value; } /** *

The ID of the Network Access Scope.

*/ inline void SetNetworkInsightsAccessScopeId(Aws::String&& value) { m_networkInsightsAccessScopeIdHasBeenSet = true; m_networkInsightsAccessScopeId = std::move(value); } /** *

The ID of the Network Access Scope.

*/ inline void SetNetworkInsightsAccessScopeId(const char* value) { m_networkInsightsAccessScopeIdHasBeenSet = true; m_networkInsightsAccessScopeId.assign(value); } /** *

The ID of the Network Access Scope.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeId(const Aws::String& value) { SetNetworkInsightsAccessScopeId(value); return *this;} /** *

The ID of the Network Access Scope.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeId(Aws::String&& value) { SetNetworkInsightsAccessScopeId(std::move(value)); return *this;} /** *

The ID of the Network Access Scope.

*/ inline NetworkInsightsAccessScopeAnalysis& WithNetworkInsightsAccessScopeId(const char* value) { SetNetworkInsightsAccessScopeId(value); return *this;} /** *

The status.

*/ inline const AnalysisStatus& GetStatus() const{ return m_status; } /** *

The status.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status.

*/ inline void SetStatus(const AnalysisStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status.

*/ inline void SetStatus(AnalysisStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStatus(const AnalysisStatus& value) { SetStatus(value); return *this;} /** *

The status.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStatus(AnalysisStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The status message.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

The status message.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

The status message.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

The status message.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

The status message.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

The status message.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

The status message.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

The status message.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

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 NetworkInsightsAccessScopeAnalysis& WithWarningMessage(const Aws::String& value) { SetWarningMessage(value); return *this;} /** *

The warning message.

*/ inline NetworkInsightsAccessScopeAnalysis& WithWarningMessage(Aws::String&& value) { SetWarningMessage(std::move(value)); return *this;} /** *

The warning message.

*/ inline NetworkInsightsAccessScopeAnalysis& WithWarningMessage(const char* value) { SetWarningMessage(value); return *this;} /** *

The analysis start date.

*/ inline const Aws::Utils::DateTime& GetStartDate() const{ return m_startDate; } /** *

The analysis start date.

*/ inline bool StartDateHasBeenSet() const { return m_startDateHasBeenSet; } /** *

The analysis start date.

*/ inline void SetStartDate(const Aws::Utils::DateTime& value) { m_startDateHasBeenSet = true; m_startDate = value; } /** *

The analysis start date.

*/ inline void SetStartDate(Aws::Utils::DateTime&& value) { m_startDateHasBeenSet = true; m_startDate = std::move(value); } /** *

The analysis start date.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStartDate(const Aws::Utils::DateTime& value) { SetStartDate(value); return *this;} /** *

The analysis start date.

*/ inline NetworkInsightsAccessScopeAnalysis& WithStartDate(Aws::Utils::DateTime&& value) { SetStartDate(std::move(value)); return *this;} /** *

The analysis end date.

*/ inline const Aws::Utils::DateTime& GetEndDate() const{ return m_endDate; } /** *

The analysis end date.

*/ inline bool EndDateHasBeenSet() const { return m_endDateHasBeenSet; } /** *

The analysis end date.

*/ inline void SetEndDate(const Aws::Utils::DateTime& value) { m_endDateHasBeenSet = true; m_endDate = value; } /** *

The analysis end date.

*/ inline void SetEndDate(Aws::Utils::DateTime&& value) { m_endDateHasBeenSet = true; m_endDate = std::move(value); } /** *

The analysis end date.

*/ inline NetworkInsightsAccessScopeAnalysis& WithEndDate(const Aws::Utils::DateTime& value) { SetEndDate(value); return *this;} /** *

The analysis end date.

*/ inline NetworkInsightsAccessScopeAnalysis& WithEndDate(Aws::Utils::DateTime&& value) { SetEndDate(std::move(value)); return *this;} /** *

Indicates whether there are findings.

*/ inline const FindingsFound& GetFindingsFound() const{ return m_findingsFound; } /** *

Indicates whether there are findings.

*/ inline bool FindingsFoundHasBeenSet() const { return m_findingsFoundHasBeenSet; } /** *

Indicates whether there are findings.

*/ inline void SetFindingsFound(const FindingsFound& value) { m_findingsFoundHasBeenSet = true; m_findingsFound = value; } /** *

Indicates whether there are findings.

*/ inline void SetFindingsFound(FindingsFound&& value) { m_findingsFoundHasBeenSet = true; m_findingsFound = std::move(value); } /** *

Indicates whether there are findings.

*/ inline NetworkInsightsAccessScopeAnalysis& WithFindingsFound(const FindingsFound& value) { SetFindingsFound(value); return *this;} /** *

Indicates whether there are findings.

*/ inline NetworkInsightsAccessScopeAnalysis& WithFindingsFound(FindingsFound&& value) { SetFindingsFound(std::move(value)); return *this;} /** *

The number of network interfaces analyzed.

*/ inline int GetAnalyzedEniCount() const{ return m_analyzedEniCount; } /** *

The number of network interfaces analyzed.

*/ inline bool AnalyzedEniCountHasBeenSet() const { return m_analyzedEniCountHasBeenSet; } /** *

The number of network interfaces analyzed.

*/ inline void SetAnalyzedEniCount(int value) { m_analyzedEniCountHasBeenSet = true; m_analyzedEniCount = value; } /** *

The number of network interfaces analyzed.

*/ inline NetworkInsightsAccessScopeAnalysis& WithAnalyzedEniCount(int value) { SetAnalyzedEniCount(value); return *this;} /** *

The tags.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

The tags.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

The tags.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

The tags.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

The tags.

*/ inline NetworkInsightsAccessScopeAnalysis& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

The tags.

*/ inline NetworkInsightsAccessScopeAnalysis& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

The tags.

*/ inline NetworkInsightsAccessScopeAnalysis& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

The tags.

*/ inline NetworkInsightsAccessScopeAnalysis& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_networkInsightsAccessScopeAnalysisId; bool m_networkInsightsAccessScopeAnalysisIdHasBeenSet = false; Aws::String m_networkInsightsAccessScopeAnalysisArn; bool m_networkInsightsAccessScopeAnalysisArnHasBeenSet = false; Aws::String m_networkInsightsAccessScopeId; bool m_networkInsightsAccessScopeIdHasBeenSet = false; AnalysisStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::String m_warningMessage; bool m_warningMessageHasBeenSet = false; Aws::Utils::DateTime m_startDate; bool m_startDateHasBeenSet = false; Aws::Utils::DateTime m_endDate; bool m_endDateHasBeenSet = false; FindingsFound m_findingsFound; bool m_findingsFoundHasBeenSet = false; int m_analyzedEniCount; bool m_analyzedEniCountHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace EC2 } // namespace Aws