/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SSM { namespace Model { /** *

Compliance summary information for a specific resource.

See * Also:

AWS * API Reference

*/ class ResourceComplianceSummaryItem { public: AWS_SSM_API ResourceComplianceSummaryItem(); AWS_SSM_API ResourceComplianceSummaryItem(Aws::Utils::Json::JsonView jsonValue); AWS_SSM_API ResourceComplianceSummaryItem& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SSM_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The compliance type.

*/ inline const Aws::String& GetComplianceType() const{ return m_complianceType; } /** *

The compliance type.

*/ inline bool ComplianceTypeHasBeenSet() const { return m_complianceTypeHasBeenSet; } /** *

The compliance type.

*/ inline void SetComplianceType(const Aws::String& value) { m_complianceTypeHasBeenSet = true; m_complianceType = value; } /** *

The compliance type.

*/ inline void SetComplianceType(Aws::String&& value) { m_complianceTypeHasBeenSet = true; m_complianceType = std::move(value); } /** *

The compliance type.

*/ inline void SetComplianceType(const char* value) { m_complianceTypeHasBeenSet = true; m_complianceType.assign(value); } /** *

The compliance type.

*/ inline ResourceComplianceSummaryItem& WithComplianceType(const Aws::String& value) { SetComplianceType(value); return *this;} /** *

The compliance type.

*/ inline ResourceComplianceSummaryItem& WithComplianceType(Aws::String&& value) { SetComplianceType(std::move(value)); return *this;} /** *

The compliance type.

*/ inline ResourceComplianceSummaryItem& WithComplianceType(const char* value) { SetComplianceType(value); return *this;} /** *

The resource type.

*/ inline const Aws::String& GetResourceType() const{ return m_resourceType; } /** *

The resource type.

*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

The resource type.

*/ inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

The resource type.

*/ inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

The resource type.

*/ inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } /** *

The resource type.

*/ inline ResourceComplianceSummaryItem& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} /** *

The resource type.

*/ inline ResourceComplianceSummaryItem& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} /** *

The resource type.

*/ inline ResourceComplianceSummaryItem& WithResourceType(const char* value) { SetResourceType(value); return *this;} /** *

The resource ID.

*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *

The resource ID.

*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *

The resource ID.

*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *

The resource ID.

*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *

The resource ID.

*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *

The resource ID.

*/ inline ResourceComplianceSummaryItem& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} /** *

The resource ID.

*/ inline ResourceComplianceSummaryItem& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} /** *

The resource ID.

*/ inline ResourceComplianceSummaryItem& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *

The compliance status for the resource.

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

The compliance status for the resource.

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

The compliance status for the resource.

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

The compliance status for the resource.

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

The compliance status for the resource.

*/ inline ResourceComplianceSummaryItem& WithStatus(const ComplianceStatus& value) { SetStatus(value); return *this;} /** *

The compliance status for the resource.

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

The highest severity item found for the resource. The resource is compliant * for this item.

*/ inline const ComplianceSeverity& GetOverallSeverity() const{ return m_overallSeverity; } /** *

The highest severity item found for the resource. The resource is compliant * for this item.

*/ inline bool OverallSeverityHasBeenSet() const { return m_overallSeverityHasBeenSet; } /** *

The highest severity item found for the resource. The resource is compliant * for this item.

*/ inline void SetOverallSeverity(const ComplianceSeverity& value) { m_overallSeverityHasBeenSet = true; m_overallSeverity = value; } /** *

The highest severity item found for the resource. The resource is compliant * for this item.

*/ inline void SetOverallSeverity(ComplianceSeverity&& value) { m_overallSeverityHasBeenSet = true; m_overallSeverity = std::move(value); } /** *

The highest severity item found for the resource. The resource is compliant * for this item.

*/ inline ResourceComplianceSummaryItem& WithOverallSeverity(const ComplianceSeverity& value) { SetOverallSeverity(value); return *this;} /** *

The highest severity item found for the resource. The resource is compliant * for this item.

*/ inline ResourceComplianceSummaryItem& WithOverallSeverity(ComplianceSeverity&& value) { SetOverallSeverity(std::move(value)); return *this;} /** *

Information about the execution.

*/ inline const ComplianceExecutionSummary& GetExecutionSummary() const{ return m_executionSummary; } /** *

Information about the execution.

*/ inline bool ExecutionSummaryHasBeenSet() const { return m_executionSummaryHasBeenSet; } /** *

Information about the execution.

*/ inline void SetExecutionSummary(const ComplianceExecutionSummary& value) { m_executionSummaryHasBeenSet = true; m_executionSummary = value; } /** *

Information about the execution.

*/ inline void SetExecutionSummary(ComplianceExecutionSummary&& value) { m_executionSummaryHasBeenSet = true; m_executionSummary = std::move(value); } /** *

Information about the execution.

*/ inline ResourceComplianceSummaryItem& WithExecutionSummary(const ComplianceExecutionSummary& value) { SetExecutionSummary(value); return *this;} /** *

Information about the execution.

*/ inline ResourceComplianceSummaryItem& WithExecutionSummary(ComplianceExecutionSummary&& value) { SetExecutionSummary(std::move(value)); return *this;} /** *

A list of items that are compliant for the resource.

*/ inline const CompliantSummary& GetCompliantSummary() const{ return m_compliantSummary; } /** *

A list of items that are compliant for the resource.

*/ inline bool CompliantSummaryHasBeenSet() const { return m_compliantSummaryHasBeenSet; } /** *

A list of items that are compliant for the resource.

*/ inline void SetCompliantSummary(const CompliantSummary& value) { m_compliantSummaryHasBeenSet = true; m_compliantSummary = value; } /** *

A list of items that are compliant for the resource.

*/ inline void SetCompliantSummary(CompliantSummary&& value) { m_compliantSummaryHasBeenSet = true; m_compliantSummary = std::move(value); } /** *

A list of items that are compliant for the resource.

*/ inline ResourceComplianceSummaryItem& WithCompliantSummary(const CompliantSummary& value) { SetCompliantSummary(value); return *this;} /** *

A list of items that are compliant for the resource.

*/ inline ResourceComplianceSummaryItem& WithCompliantSummary(CompliantSummary&& value) { SetCompliantSummary(std::move(value)); return *this;} /** *

A list of items that aren't compliant for the resource.

*/ inline const NonCompliantSummary& GetNonCompliantSummary() const{ return m_nonCompliantSummary; } /** *

A list of items that aren't compliant for the resource.

*/ inline bool NonCompliantSummaryHasBeenSet() const { return m_nonCompliantSummaryHasBeenSet; } /** *

A list of items that aren't compliant for the resource.

*/ inline void SetNonCompliantSummary(const NonCompliantSummary& value) { m_nonCompliantSummaryHasBeenSet = true; m_nonCompliantSummary = value; } /** *

A list of items that aren't compliant for the resource.

*/ inline void SetNonCompliantSummary(NonCompliantSummary&& value) { m_nonCompliantSummaryHasBeenSet = true; m_nonCompliantSummary = std::move(value); } /** *

A list of items that aren't compliant for the resource.

*/ inline ResourceComplianceSummaryItem& WithNonCompliantSummary(const NonCompliantSummary& value) { SetNonCompliantSummary(value); return *this;} /** *

A list of items that aren't compliant for the resource.

*/ inline ResourceComplianceSummaryItem& WithNonCompliantSummary(NonCompliantSummary&& value) { SetNonCompliantSummary(std::move(value)); return *this;} private: Aws::String m_complianceType; bool m_complianceTypeHasBeenSet = false; Aws::String m_resourceType; bool m_resourceTypeHasBeenSet = false; Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; ComplianceStatus m_status; bool m_statusHasBeenSet = false; ComplianceSeverity m_overallSeverity; bool m_overallSeverityHasBeenSet = false; ComplianceExecutionSummary m_executionSummary; bool m_executionSummaryHasBeenSet = false; CompliantSummary m_compliantSummary; bool m_compliantSummaryHasBeenSet = false; NonCompliantSummary m_nonCompliantSummary; bool m_nonCompliantSummaryHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws