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

A summary of compliance information by compliance type.

See * Also:

AWS * API Reference

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

The type of compliance item. For example, the compliance type can be * Association, Patch, or Custom:string.

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

A list of COMPLIANT items for the specified compliance type.

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

A list of COMPLIANT items for the specified compliance type.

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

A list of COMPLIANT items for the specified compliance type.

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

A list of COMPLIANT items for the specified compliance type.

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

A list of COMPLIANT items for the specified compliance type.

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

A list of COMPLIANT items for the specified compliance type.

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

A list of NON_COMPLIANT items for the specified compliance type.

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

A list of NON_COMPLIANT items for the specified compliance type.

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

A list of NON_COMPLIANT items for the specified compliance type.

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

A list of NON_COMPLIANT items for the specified compliance type.

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

A list of NON_COMPLIANT items for the specified compliance type.

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

A list of NON_COMPLIANT items for the specified compliance type.

*/ inline ComplianceSummaryItem& WithNonCompliantSummary(NonCompliantSummary&& value) { SetNonCompliantSummary(std::move(value)); return *this;} private: Aws::String m_complianceType; bool m_complianceTypeHasBeenSet = false; CompliantSummary m_compliantSummary; bool m_compliantSummaryHasBeenSet = false; NonCompliantSummary m_nonCompliantSummary; bool m_nonCompliantSummaryHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws