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

For a SQL-based Kinesis Data Analytics application, provides additional * mapping information when the record format uses delimiters, such as CSV. For * example, the following sample records use CSV format, where the records use the * '\n' as the row delimiter and a comma (",") as the column delimiter:

*

"name1", "address1"

"name2", "address2" *

See Also:

AWS * API Reference

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

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline const Aws::String& GetRecordRowDelimiter() const{ return m_recordRowDelimiter; } /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline bool RecordRowDelimiterHasBeenSet() const { return m_recordRowDelimiterHasBeenSet; } /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline void SetRecordRowDelimiter(const Aws::String& value) { m_recordRowDelimiterHasBeenSet = true; m_recordRowDelimiter = value; } /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline void SetRecordRowDelimiter(Aws::String&& value) { m_recordRowDelimiterHasBeenSet = true; m_recordRowDelimiter = std::move(value); } /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline void SetRecordRowDelimiter(const char* value) { m_recordRowDelimiterHasBeenSet = true; m_recordRowDelimiter.assign(value); } /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline CSVMappingParameters& WithRecordRowDelimiter(const Aws::String& value) { SetRecordRowDelimiter(value); return *this;} /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline CSVMappingParameters& WithRecordRowDelimiter(Aws::String&& value) { SetRecordRowDelimiter(std::move(value)); return *this;} /** *

The row delimiter. For example, in a CSV format, '\n' is the typical * row delimiter.

*/ inline CSVMappingParameters& WithRecordRowDelimiter(const char* value) { SetRecordRowDelimiter(value); return *this;} /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline const Aws::String& GetRecordColumnDelimiter() const{ return m_recordColumnDelimiter; } /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline bool RecordColumnDelimiterHasBeenSet() const { return m_recordColumnDelimiterHasBeenSet; } /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline void SetRecordColumnDelimiter(const Aws::String& value) { m_recordColumnDelimiterHasBeenSet = true; m_recordColumnDelimiter = value; } /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline void SetRecordColumnDelimiter(Aws::String&& value) { m_recordColumnDelimiterHasBeenSet = true; m_recordColumnDelimiter = std::move(value); } /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline void SetRecordColumnDelimiter(const char* value) { m_recordColumnDelimiterHasBeenSet = true; m_recordColumnDelimiter.assign(value); } /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline CSVMappingParameters& WithRecordColumnDelimiter(const Aws::String& value) { SetRecordColumnDelimiter(value); return *this;} /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline CSVMappingParameters& WithRecordColumnDelimiter(Aws::String&& value) { SetRecordColumnDelimiter(std::move(value)); return *this;} /** *

The column delimiter. For example, in a CSV format, a comma (",") is the * typical column delimiter.

*/ inline CSVMappingParameters& WithRecordColumnDelimiter(const char* value) { SetRecordColumnDelimiter(value); return *this;} private: Aws::String m_recordRowDelimiter; bool m_recordRowDelimiterHasBeenSet = false; Aws::String m_recordColumnDelimiter; bool m_recordColumnDelimiterHasBeenSet = false; }; } // namespace Model } // namespace KinesisAnalyticsV2 } // namespace Aws