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

Notification configuration for a scheduled query. A notification is sent by * Timestream when a scheduled query is created, its state is updated or when it is * deleted.

See Also:

AWS * API Reference

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

Details on SNS configuration.

*/ inline const SnsConfiguration& GetSnsConfiguration() const{ return m_snsConfiguration; } /** *

Details on SNS configuration.

*/ inline bool SnsConfigurationHasBeenSet() const { return m_snsConfigurationHasBeenSet; } /** *

Details on SNS configuration.

*/ inline void SetSnsConfiguration(const SnsConfiguration& value) { m_snsConfigurationHasBeenSet = true; m_snsConfiguration = value; } /** *

Details on SNS configuration.

*/ inline void SetSnsConfiguration(SnsConfiguration&& value) { m_snsConfigurationHasBeenSet = true; m_snsConfiguration = std::move(value); } /** *

Details on SNS configuration.

*/ inline NotificationConfiguration& WithSnsConfiguration(const SnsConfiguration& value) { SetSnsConfiguration(value); return *this;} /** *

Details on SNS configuration.

*/ inline NotificationConfiguration& WithSnsConfiguration(SnsConfiguration&& value) { SetSnsConfiguration(std::move(value)); return *this;} private: SnsConfiguration m_snsConfiguration; bool m_snsConfigurationHasBeenSet = false; }; } // namespace Model } // namespace TimestreamQuery } // namespace Aws