/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #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 how a source CSV data file should be * analyzed.

See Also:

AWS * API Reference

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

The level of compression of the source CSV file.

*/ inline const CSVFileCompression& GetFileCompression() const{ return m_fileCompression; } /** *

The level of compression of the source CSV file.

*/ inline bool FileCompressionHasBeenSet() const { return m_fileCompressionHasBeenSet; } /** *

The level of compression of the source CSV file.

*/ inline void SetFileCompression(const CSVFileCompression& value) { m_fileCompressionHasBeenSet = true; m_fileCompression = value; } /** *

The level of compression of the source CSV file.

*/ inline void SetFileCompression(CSVFileCompression&& value) { m_fileCompressionHasBeenSet = true; m_fileCompression = std::move(value); } /** *

The level of compression of the source CSV file.

*/ inline CsvFormatDescriptor& WithFileCompression(const CSVFileCompression& value) { SetFileCompression(value); return *this;} /** *

The level of compression of the source CSV file.

*/ inline CsvFormatDescriptor& WithFileCompression(CSVFileCompression&& value) { SetFileCompression(std::move(value)); return *this;} /** *

The character set in which the source CSV file is written.

*/ inline const Aws::String& GetCharset() const{ return m_charset; } /** *

The character set in which the source CSV file is written.

*/ inline bool CharsetHasBeenSet() const { return m_charsetHasBeenSet; } /** *

The character set in which the source CSV file is written.

*/ inline void SetCharset(const Aws::String& value) { m_charsetHasBeenSet = true; m_charset = value; } /** *

The character set in which the source CSV file is written.

*/ inline void SetCharset(Aws::String&& value) { m_charsetHasBeenSet = true; m_charset = std::move(value); } /** *

The character set in which the source CSV file is written.

*/ inline void SetCharset(const char* value) { m_charsetHasBeenSet = true; m_charset.assign(value); } /** *

The character set in which the source CSV file is written.

*/ inline CsvFormatDescriptor& WithCharset(const Aws::String& value) { SetCharset(value); return *this;} /** *

The character set in which the source CSV file is written.

*/ inline CsvFormatDescriptor& WithCharset(Aws::String&& value) { SetCharset(std::move(value)); return *this;} /** *

The character set in which the source CSV file is written.

*/ inline CsvFormatDescriptor& WithCharset(const char* value) { SetCharset(value); return *this;} /** *

Whether or not the source CSV file contains a header.

*/ inline bool GetContainsHeader() const{ return m_containsHeader; } /** *

Whether or not the source CSV file contains a header.

*/ inline bool ContainsHeaderHasBeenSet() const { return m_containsHeaderHasBeenSet; } /** *

Whether or not the source CSV file contains a header.

*/ inline void SetContainsHeader(bool value) { m_containsHeaderHasBeenSet = true; m_containsHeader = value; } /** *

Whether or not the source CSV file contains a header.

*/ inline CsvFormatDescriptor& WithContainsHeader(bool value) { SetContainsHeader(value); return *this;} /** *

The character used to delimit the source CSV file.

*/ inline const Aws::String& GetDelimiter() const{ return m_delimiter; } /** *

The character used to delimit the source CSV file.

*/ inline bool DelimiterHasBeenSet() const { return m_delimiterHasBeenSet; } /** *

The character used to delimit the source CSV file.

*/ inline void SetDelimiter(const Aws::String& value) { m_delimiterHasBeenSet = true; m_delimiter = value; } /** *

The character used to delimit the source CSV file.

*/ inline void SetDelimiter(Aws::String&& value) { m_delimiterHasBeenSet = true; m_delimiter = std::move(value); } /** *

The character used to delimit the source CSV file.

*/ inline void SetDelimiter(const char* value) { m_delimiterHasBeenSet = true; m_delimiter.assign(value); } /** *

The character used to delimit the source CSV file.

*/ inline CsvFormatDescriptor& WithDelimiter(const Aws::String& value) { SetDelimiter(value); return *this;} /** *

The character used to delimit the source CSV file.

*/ inline CsvFormatDescriptor& WithDelimiter(Aws::String&& value) { SetDelimiter(std::move(value)); return *this;} /** *

The character used to delimit the source CSV file.

*/ inline CsvFormatDescriptor& WithDelimiter(const char* value) { SetDelimiter(value); return *this;} /** *

A list of the source CSV file's headers, if any.

*/ inline const Aws::Vector& GetHeaderList() const{ return m_headerList; } /** *

A list of the source CSV file's headers, if any.

*/ inline bool HeaderListHasBeenSet() const { return m_headerListHasBeenSet; } /** *

A list of the source CSV file's headers, if any.

*/ inline void SetHeaderList(const Aws::Vector& value) { m_headerListHasBeenSet = true; m_headerList = value; } /** *

A list of the source CSV file's headers, if any.

*/ inline void SetHeaderList(Aws::Vector&& value) { m_headerListHasBeenSet = true; m_headerList = std::move(value); } /** *

A list of the source CSV file's headers, if any.

*/ inline CsvFormatDescriptor& WithHeaderList(const Aws::Vector& value) { SetHeaderList(value); return *this;} /** *

A list of the source CSV file's headers, if any.

*/ inline CsvFormatDescriptor& WithHeaderList(Aws::Vector&& value) { SetHeaderList(std::move(value)); return *this;} /** *

A list of the source CSV file's headers, if any.

*/ inline CsvFormatDescriptor& AddHeaderList(const Aws::String& value) { m_headerListHasBeenSet = true; m_headerList.push_back(value); return *this; } /** *

A list of the source CSV file's headers, if any.

*/ inline CsvFormatDescriptor& AddHeaderList(Aws::String&& value) { m_headerListHasBeenSet = true; m_headerList.push_back(std::move(value)); return *this; } /** *

A list of the source CSV file's headers, if any.

*/ inline CsvFormatDescriptor& AddHeaderList(const char* value) { m_headerListHasBeenSet = true; m_headerList.push_back(value); return *this; } /** *

The character used as a quote character.

*/ inline const Aws::String& GetQuoteSymbol() const{ return m_quoteSymbol; } /** *

The character used as a quote character.

*/ inline bool QuoteSymbolHasBeenSet() const { return m_quoteSymbolHasBeenSet; } /** *

The character used as a quote character.

*/ inline void SetQuoteSymbol(const Aws::String& value) { m_quoteSymbolHasBeenSet = true; m_quoteSymbol = value; } /** *

The character used as a quote character.

*/ inline void SetQuoteSymbol(Aws::String&& value) { m_quoteSymbolHasBeenSet = true; m_quoteSymbol = std::move(value); } /** *

The character used as a quote character.

*/ inline void SetQuoteSymbol(const char* value) { m_quoteSymbolHasBeenSet = true; m_quoteSymbol.assign(value); } /** *

The character used as a quote character.

*/ inline CsvFormatDescriptor& WithQuoteSymbol(const Aws::String& value) { SetQuoteSymbol(value); return *this;} /** *

The character used as a quote character.

*/ inline CsvFormatDescriptor& WithQuoteSymbol(Aws::String&& value) { SetQuoteSymbol(std::move(value)); return *this;} /** *

The character used as a quote character.

*/ inline CsvFormatDescriptor& WithQuoteSymbol(const char* value) { SetQuoteSymbol(value); return *this;} private: CSVFileCompression m_fileCompression; bool m_fileCompressionHasBeenSet = false; Aws::String m_charset; bool m_charsetHasBeenSet = false; bool m_containsHeader; bool m_containsHeaderHasBeenSet = false; Aws::String m_delimiter; bool m_delimiterHasBeenSet = false; Aws::Vector m_headerList; bool m_headerListHasBeenSet = false; Aws::String m_quoteSymbol; bool m_quoteSymbolHasBeenSet = false; }; } // namespace Model } // namespace LookoutMetrics } // namespace Aws