/** * 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 IoTAnalytics { namespace Model { /** *

The destination to which dataset contents are delivered.

See * Also:

AWS * API Reference

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

Configuration information for delivery of dataset contents to IoT Events.

*/ inline const IotEventsDestinationConfiguration& GetIotEventsDestinationConfiguration() const{ return m_iotEventsDestinationConfiguration; } /** *

Configuration information for delivery of dataset contents to IoT Events.

*/ inline bool IotEventsDestinationConfigurationHasBeenSet() const { return m_iotEventsDestinationConfigurationHasBeenSet; } /** *

Configuration information for delivery of dataset contents to IoT Events.

*/ inline void SetIotEventsDestinationConfiguration(const IotEventsDestinationConfiguration& value) { m_iotEventsDestinationConfigurationHasBeenSet = true; m_iotEventsDestinationConfiguration = value; } /** *

Configuration information for delivery of dataset contents to IoT Events.

*/ inline void SetIotEventsDestinationConfiguration(IotEventsDestinationConfiguration&& value) { m_iotEventsDestinationConfigurationHasBeenSet = true; m_iotEventsDestinationConfiguration = std::move(value); } /** *

Configuration information for delivery of dataset contents to IoT Events.

*/ inline DatasetContentDeliveryDestination& WithIotEventsDestinationConfiguration(const IotEventsDestinationConfiguration& value) { SetIotEventsDestinationConfiguration(value); return *this;} /** *

Configuration information for delivery of dataset contents to IoT Events.

*/ inline DatasetContentDeliveryDestination& WithIotEventsDestinationConfiguration(IotEventsDestinationConfiguration&& value) { SetIotEventsDestinationConfiguration(std::move(value)); return *this;} /** *

Configuration information for delivery of dataset contents to Amazon S3.

*/ inline const S3DestinationConfiguration& GetS3DestinationConfiguration() const{ return m_s3DestinationConfiguration; } /** *

Configuration information for delivery of dataset contents to Amazon S3.

*/ inline bool S3DestinationConfigurationHasBeenSet() const { return m_s3DestinationConfigurationHasBeenSet; } /** *

Configuration information for delivery of dataset contents to Amazon S3.

*/ inline void SetS3DestinationConfiguration(const S3DestinationConfiguration& value) { m_s3DestinationConfigurationHasBeenSet = true; m_s3DestinationConfiguration = value; } /** *

Configuration information for delivery of dataset contents to Amazon S3.

*/ inline void SetS3DestinationConfiguration(S3DestinationConfiguration&& value) { m_s3DestinationConfigurationHasBeenSet = true; m_s3DestinationConfiguration = std::move(value); } /** *

Configuration information for delivery of dataset contents to Amazon S3.

*/ inline DatasetContentDeliveryDestination& WithS3DestinationConfiguration(const S3DestinationConfiguration& value) { SetS3DestinationConfiguration(value); return *this;} /** *

Configuration information for delivery of dataset contents to Amazon S3.

*/ inline DatasetContentDeliveryDestination& WithS3DestinationConfiguration(S3DestinationConfiguration&& value) { SetS3DestinationConfiguration(std::move(value)); return *this;} private: IotEventsDestinationConfiguration m_iotEventsDestinationConfiguration; bool m_iotEventsDestinationConfigurationHasBeenSet = false; S3DestinationConfiguration m_s3DestinationConfiguration; bool m_s3DestinationConfigurationHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws