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

Contains information about a source file's formatting.

See * Also:

AWS * API Reference

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

Contains information about how a source CSV data file should be analyzed.

*/ inline const CsvFormatDescriptor& GetCsvFormatDescriptor() const{ return m_csvFormatDescriptor; } /** *

Contains information about how a source CSV data file should be analyzed.

*/ inline bool CsvFormatDescriptorHasBeenSet() const { return m_csvFormatDescriptorHasBeenSet; } /** *

Contains information about how a source CSV data file should be analyzed.

*/ inline void SetCsvFormatDescriptor(const CsvFormatDescriptor& value) { m_csvFormatDescriptorHasBeenSet = true; m_csvFormatDescriptor = value; } /** *

Contains information about how a source CSV data file should be analyzed.

*/ inline void SetCsvFormatDescriptor(CsvFormatDescriptor&& value) { m_csvFormatDescriptorHasBeenSet = true; m_csvFormatDescriptor = std::move(value); } /** *

Contains information about how a source CSV data file should be analyzed.

*/ inline FileFormatDescriptor& WithCsvFormatDescriptor(const CsvFormatDescriptor& value) { SetCsvFormatDescriptor(value); return *this;} /** *

Contains information about how a source CSV data file should be analyzed.

*/ inline FileFormatDescriptor& WithCsvFormatDescriptor(CsvFormatDescriptor&& value) { SetCsvFormatDescriptor(std::move(value)); return *this;} /** *

Contains information about how a source JSON data file should be * analyzed.

*/ inline const JsonFormatDescriptor& GetJsonFormatDescriptor() const{ return m_jsonFormatDescriptor; } /** *

Contains information about how a source JSON data file should be * analyzed.

*/ inline bool JsonFormatDescriptorHasBeenSet() const { return m_jsonFormatDescriptorHasBeenSet; } /** *

Contains information about how a source JSON data file should be * analyzed.

*/ inline void SetJsonFormatDescriptor(const JsonFormatDescriptor& value) { m_jsonFormatDescriptorHasBeenSet = true; m_jsonFormatDescriptor = value; } /** *

Contains information about how a source JSON data file should be * analyzed.

*/ inline void SetJsonFormatDescriptor(JsonFormatDescriptor&& value) { m_jsonFormatDescriptorHasBeenSet = true; m_jsonFormatDescriptor = std::move(value); } /** *

Contains information about how a source JSON data file should be * analyzed.

*/ inline FileFormatDescriptor& WithJsonFormatDescriptor(const JsonFormatDescriptor& value) { SetJsonFormatDescriptor(value); return *this;} /** *

Contains information about how a source JSON data file should be * analyzed.

*/ inline FileFormatDescriptor& WithJsonFormatDescriptor(JsonFormatDescriptor&& value) { SetJsonFormatDescriptor(std::move(value)); return *this;} private: CsvFormatDescriptor m_csvFormatDescriptor; bool m_csvFormatDescriptorHasBeenSet = false; JsonFormatDescriptor m_jsonFormatDescriptor; bool m_jsonFormatDescriptorHasBeenSet = false; }; } // namespace Model } // namespace LookoutMetrics } // namespace Aws