/** * 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 { /** *

Contains the configuration information of file formats. IoT Analytics data * stores support JSON and Parquet.

*

The default file format is JSON. You can specify only one format.

You * can't change the file format after you create the data store.

See * Also:

AWS * API Reference

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

Contains the configuration information of the JSON format.

*/ inline const JsonConfiguration& GetJsonConfiguration() const{ return m_jsonConfiguration; } /** *

Contains the configuration information of the JSON format.

*/ inline bool JsonConfigurationHasBeenSet() const { return m_jsonConfigurationHasBeenSet; } /** *

Contains the configuration information of the JSON format.

*/ inline void SetJsonConfiguration(const JsonConfiguration& value) { m_jsonConfigurationHasBeenSet = true; m_jsonConfiguration = value; } /** *

Contains the configuration information of the JSON format.

*/ inline void SetJsonConfiguration(JsonConfiguration&& value) { m_jsonConfigurationHasBeenSet = true; m_jsonConfiguration = std::move(value); } /** *

Contains the configuration information of the JSON format.

*/ inline FileFormatConfiguration& WithJsonConfiguration(const JsonConfiguration& value) { SetJsonConfiguration(value); return *this;} /** *

Contains the configuration information of the JSON format.

*/ inline FileFormatConfiguration& WithJsonConfiguration(JsonConfiguration&& value) { SetJsonConfiguration(std::move(value)); return *this;} /** *

Contains the configuration information of the Parquet format.

*/ inline const ParquetConfiguration& GetParquetConfiguration() const{ return m_parquetConfiguration; } /** *

Contains the configuration information of the Parquet format.

*/ inline bool ParquetConfigurationHasBeenSet() const { return m_parquetConfigurationHasBeenSet; } /** *

Contains the configuration information of the Parquet format.

*/ inline void SetParquetConfiguration(const ParquetConfiguration& value) { m_parquetConfigurationHasBeenSet = true; m_parquetConfiguration = value; } /** *

Contains the configuration information of the Parquet format.

*/ inline void SetParquetConfiguration(ParquetConfiguration&& value) { m_parquetConfigurationHasBeenSet = true; m_parquetConfiguration = std::move(value); } /** *

Contains the configuration information of the Parquet format.

*/ inline FileFormatConfiguration& WithParquetConfiguration(const ParquetConfiguration& value) { SetParquetConfiguration(value); return *this;} /** *

Contains the configuration information of the Parquet format.

*/ inline FileFormatConfiguration& WithParquetConfiguration(ParquetConfiguration&& value) { SetParquetConfiguration(std::move(value)); return *this;} private: JsonConfiguration m_jsonConfiguration; bool m_jsonConfigurationHasBeenSet = false; ParquetConfiguration m_parquetConfiguration; bool m_parquetConfigurationHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws