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

A notification summary return object.

See Also:

AWS * API Reference

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

The type of notification.

*/ inline const NotificationType& GetType() const{ return m_type; } /** *

The type of notification.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of notification.

*/ inline void SetType(const NotificationType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of notification.

*/ inline void SetType(NotificationType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of notification.

*/ inline NotificationSummary& WithType(const NotificationType& value) { SetType(value); return *this;} /** *

The type of notification.

*/ inline NotificationSummary& WithType(NotificationType&& value) { SetType(std::move(value)); return *this;} /** *

Summary of lens upgrade.

*/ inline const LensUpgradeSummary& GetLensUpgradeSummary() const{ return m_lensUpgradeSummary; } /** *

Summary of lens upgrade.

*/ inline bool LensUpgradeSummaryHasBeenSet() const { return m_lensUpgradeSummaryHasBeenSet; } /** *

Summary of lens upgrade.

*/ inline void SetLensUpgradeSummary(const LensUpgradeSummary& value) { m_lensUpgradeSummaryHasBeenSet = true; m_lensUpgradeSummary = value; } /** *

Summary of lens upgrade.

*/ inline void SetLensUpgradeSummary(LensUpgradeSummary&& value) { m_lensUpgradeSummaryHasBeenSet = true; m_lensUpgradeSummary = std::move(value); } /** *

Summary of lens upgrade.

*/ inline NotificationSummary& WithLensUpgradeSummary(const LensUpgradeSummary& value) { SetLensUpgradeSummary(value); return *this;} /** *

Summary of lens upgrade.

*/ inline NotificationSummary& WithLensUpgradeSummary(LensUpgradeSummary&& value) { SetLensUpgradeSummary(std::move(value)); return *this;} private: NotificationType m_type; bool m_typeHasBeenSet = false; LensUpgradeSummary m_lensUpgradeSummary; bool m_lensUpgradeSummaryHasBeenSet = false; }; } // namespace Model } // namespace WellArchitected } // namespace Aws