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

Contains information about the comma-separated value (CSV) file to select * from.

See Also:

AWS * API Reference

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

Describes the first line of input. Valid values are None, * Ignore, and Use.

*/ inline const FileHeaderInfo& GetFileHeaderInfo() const{ return m_fileHeaderInfo; } /** *

Describes the first line of input. Valid values are None, * Ignore, and Use.

*/ inline bool FileHeaderInfoHasBeenSet() const { return m_fileHeaderInfoHasBeenSet; } /** *

Describes the first line of input. Valid values are None, * Ignore, and Use.

*/ inline void SetFileHeaderInfo(const FileHeaderInfo& value) { m_fileHeaderInfoHasBeenSet = true; m_fileHeaderInfo = value; } /** *

Describes the first line of input. Valid values are None, * Ignore, and Use.

*/ inline void SetFileHeaderInfo(FileHeaderInfo&& value) { m_fileHeaderInfoHasBeenSet = true; m_fileHeaderInfo = std::move(value); } /** *

Describes the first line of input. Valid values are None, * Ignore, and Use.

*/ inline CSVInput& WithFileHeaderInfo(const FileHeaderInfo& value) { SetFileHeaderInfo(value); return *this;} /** *

Describes the first line of input. Valid values are None, * Ignore, and Use.

*/ inline CSVInput& WithFileHeaderInfo(FileHeaderInfo&& value) { SetFileHeaderInfo(std::move(value)); return *this;} /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline const Aws::String& GetComments() const{ return m_comments; } /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline bool CommentsHasBeenSet() const { return m_commentsHasBeenSet; } /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline void SetComments(const Aws::String& value) { m_commentsHasBeenSet = true; m_comments = value; } /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline void SetComments(Aws::String&& value) { m_commentsHasBeenSet = true; m_comments = std::move(value); } /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline void SetComments(const char* value) { m_commentsHasBeenSet = true; m_comments.assign(value); } /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline CSVInput& WithComments(const Aws::String& value) { SetComments(value); return *this;} /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline CSVInput& WithComments(Aws::String&& value) { SetComments(std::move(value)); return *this;} /** *

A single character used to indicate that a row should be ignored when the * character is present at the start of that row.

*/ inline CSVInput& WithComments(const char* value) { SetComments(value); return *this;} /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline const Aws::String& GetQuoteEscapeCharacter() const{ return m_quoteEscapeCharacter; } /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline bool QuoteEscapeCharacterHasBeenSet() const { return m_quoteEscapeCharacterHasBeenSet; } /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline void SetQuoteEscapeCharacter(const Aws::String& value) { m_quoteEscapeCharacterHasBeenSet = true; m_quoteEscapeCharacter = value; } /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline void SetQuoteEscapeCharacter(Aws::String&& value) { m_quoteEscapeCharacterHasBeenSet = true; m_quoteEscapeCharacter = std::move(value); } /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline void SetQuoteEscapeCharacter(const char* value) { m_quoteEscapeCharacterHasBeenSet = true; m_quoteEscapeCharacter.assign(value); } /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline CSVInput& WithQuoteEscapeCharacter(const Aws::String& value) { SetQuoteEscapeCharacter(value); return *this;} /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline CSVInput& WithQuoteEscapeCharacter(Aws::String&& value) { SetQuoteEscapeCharacter(std::move(value)); return *this;} /** *

A single character used for escaping the quotation-mark character inside an * already escaped value.

*/ inline CSVInput& WithQuoteEscapeCharacter(const char* value) { SetQuoteEscapeCharacter(value); return *this;} /** *

A value used to separate individual records from each other.

*/ inline const Aws::String& GetRecordDelimiter() const{ return m_recordDelimiter; } /** *

A value used to separate individual records from each other.

*/ inline bool RecordDelimiterHasBeenSet() const { return m_recordDelimiterHasBeenSet; } /** *

A value used to separate individual records from each other.

*/ inline void SetRecordDelimiter(const Aws::String& value) { m_recordDelimiterHasBeenSet = true; m_recordDelimiter = value; } /** *

A value used to separate individual records from each other.

*/ inline void SetRecordDelimiter(Aws::String&& value) { m_recordDelimiterHasBeenSet = true; m_recordDelimiter = std::move(value); } /** *

A value used to separate individual records from each other.

*/ inline void SetRecordDelimiter(const char* value) { m_recordDelimiterHasBeenSet = true; m_recordDelimiter.assign(value); } /** *

A value used to separate individual records from each other.

*/ inline CSVInput& WithRecordDelimiter(const Aws::String& value) { SetRecordDelimiter(value); return *this;} /** *

A value used to separate individual records from each other.

*/ inline CSVInput& WithRecordDelimiter(Aws::String&& value) { SetRecordDelimiter(std::move(value)); return *this;} /** *

A value used to separate individual records from each other.

*/ inline CSVInput& WithRecordDelimiter(const char* value) { SetRecordDelimiter(value); return *this;} /** *

A value used to separate individual fields from each other within a * record.

*/ inline const Aws::String& GetFieldDelimiter() const{ return m_fieldDelimiter; } /** *

A value used to separate individual fields from each other within a * record.

*/ inline bool FieldDelimiterHasBeenSet() const { return m_fieldDelimiterHasBeenSet; } /** *

A value used to separate individual fields from each other within a * record.

*/ inline void SetFieldDelimiter(const Aws::String& value) { m_fieldDelimiterHasBeenSet = true; m_fieldDelimiter = value; } /** *

A value used to separate individual fields from each other within a * record.

*/ inline void SetFieldDelimiter(Aws::String&& value) { m_fieldDelimiterHasBeenSet = true; m_fieldDelimiter = std::move(value); } /** *

A value used to separate individual fields from each other within a * record.

*/ inline void SetFieldDelimiter(const char* value) { m_fieldDelimiterHasBeenSet = true; m_fieldDelimiter.assign(value); } /** *

A value used to separate individual fields from each other within a * record.

*/ inline CSVInput& WithFieldDelimiter(const Aws::String& value) { SetFieldDelimiter(value); return *this;} /** *

A value used to separate individual fields from each other within a * record.

*/ inline CSVInput& WithFieldDelimiter(Aws::String&& value) { SetFieldDelimiter(std::move(value)); return *this;} /** *

A value used to separate individual fields from each other within a * record.

*/ inline CSVInput& WithFieldDelimiter(const char* value) { SetFieldDelimiter(value); return *this;} /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline const Aws::String& GetQuoteCharacter() const{ return m_quoteCharacter; } /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline bool QuoteCharacterHasBeenSet() const { return m_quoteCharacterHasBeenSet; } /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline void SetQuoteCharacter(const Aws::String& value) { m_quoteCharacterHasBeenSet = true; m_quoteCharacter = value; } /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline void SetQuoteCharacter(Aws::String&& value) { m_quoteCharacterHasBeenSet = true; m_quoteCharacter = std::move(value); } /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline void SetQuoteCharacter(const char* value) { m_quoteCharacterHasBeenSet = true; m_quoteCharacter.assign(value); } /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline CSVInput& WithQuoteCharacter(const Aws::String& value) { SetQuoteCharacter(value); return *this;} /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline CSVInput& WithQuoteCharacter(Aws::String&& value) { SetQuoteCharacter(std::move(value)); return *this;} /** *

A value used as an escape character where the field delimiter is part of the * value.

*/ inline CSVInput& WithQuoteCharacter(const char* value) { SetQuoteCharacter(value); return *this;} private: FileHeaderInfo m_fileHeaderInfo; bool m_fileHeaderInfoHasBeenSet = false; Aws::String m_comments; bool m_commentsHasBeenSet = false; Aws::String m_quoteEscapeCharacter; bool m_quoteEscapeCharacterHasBeenSet = false; Aws::String m_recordDelimiter; bool m_recordDelimiterHasBeenSet = false; Aws::String m_fieldDelimiter; bool m_fieldDelimiterHasBeenSet = false; Aws::String m_quoteCharacter; bool m_quoteCharacterHasBeenSet = false; }; } // namespace Model } // namespace Glacier } // namespace Aws