1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
/// <p>Describes how uncompressed comma-separated values (CSV)-formatted results are formatted.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct CsvOutput {
/// <p>Indicates whether to use quotation marks around output fields.</p>
/// <ul>
/// <li>
/// <p><code>ALWAYS</code>: Always use quotation marks for output fields.</p></li>
/// <li>
/// <p><code>ASNEEDED</code>: Use quotation marks for output fields when needed.</p></li>
/// </ul>
pub quote_fields: ::std::option::Option<crate::types::QuoteFields>,
/// <p>The single character used for escaping the quote character inside an already escaped value.</p>
pub quote_escape_character: ::std::option::Option<::std::string::String>,
/// <p>A single character used to separate individual records in the output. Instead of the default value, you can specify an arbitrary delimiter.</p>
pub record_delimiter: ::std::option::Option<::std::string::String>,
/// <p>The value used to separate individual fields in a record. You can specify an arbitrary delimiter.</p>
pub field_delimiter: ::std::option::Option<::std::string::String>,
/// <p>A single character used for escaping when the field delimiter is part of the value. For example, if the value is <code>a, b</code>, Amazon S3 wraps this field value in quotation marks, as follows: <code>" a , b "</code>.</p>
pub quote_character: ::std::option::Option<::std::string::String>,
}
impl CsvOutput {
/// <p>Indicates whether to use quotation marks around output fields.</p>
/// <ul>
/// <li>
/// <p><code>ALWAYS</code>: Always use quotation marks for output fields.</p></li>
/// <li>
/// <p><code>ASNEEDED</code>: Use quotation marks for output fields when needed.</p></li>
/// </ul>
pub fn quote_fields(&self) -> ::std::option::Option<&crate::types::QuoteFields> {
self.quote_fields.as_ref()
}
/// <p>The single character used for escaping the quote character inside an already escaped value.</p>
pub fn quote_escape_character(&self) -> ::std::option::Option<&str> {
self.quote_escape_character.as_deref()
}
/// <p>A single character used to separate individual records in the output. Instead of the default value, you can specify an arbitrary delimiter.</p>
pub fn record_delimiter(&self) -> ::std::option::Option<&str> {
self.record_delimiter.as_deref()
}
/// <p>The value used to separate individual fields in a record. You can specify an arbitrary delimiter.</p>
pub fn field_delimiter(&self) -> ::std::option::Option<&str> {
self.field_delimiter.as_deref()
}
/// <p>A single character used for escaping when the field delimiter is part of the value. For example, if the value is <code>a, b</code>, Amazon S3 wraps this field value in quotation marks, as follows: <code>" a , b "</code>.</p>
pub fn quote_character(&self) -> ::std::option::Option<&str> {
self.quote_character.as_deref()
}
}
impl CsvOutput {
/// Creates a new builder-style object to manufacture [`CsvOutput`](crate::types::CsvOutput).
pub fn builder() -> crate::types::builders::CsvOutputBuilder {
crate::types::builders::CsvOutputBuilder::default()
}
}
/// A builder for [`CsvOutput`](crate::types::CsvOutput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct CsvOutputBuilder {
pub(crate) quote_fields: ::std::option::Option<crate::types::QuoteFields>,
pub(crate) quote_escape_character: ::std::option::Option<::std::string::String>,
pub(crate) record_delimiter: ::std::option::Option<::std::string::String>,
pub(crate) field_delimiter: ::std::option::Option<::std::string::String>,
pub(crate) quote_character: ::std::option::Option<::std::string::String>,
}
impl CsvOutputBuilder {
/// <p>Indicates whether to use quotation marks around output fields.</p>
/// <ul>
/// <li>
/// <p><code>ALWAYS</code>: Always use quotation marks for output fields.</p></li>
/// <li>
/// <p><code>ASNEEDED</code>: Use quotation marks for output fields when needed.</p></li>
/// </ul>
pub fn quote_fields(mut self, input: crate::types::QuoteFields) -> Self {
self.quote_fields = ::std::option::Option::Some(input);
self
}
/// <p>Indicates whether to use quotation marks around output fields.</p>
/// <ul>
/// <li>
/// <p><code>ALWAYS</code>: Always use quotation marks for output fields.</p></li>
/// <li>
/// <p><code>ASNEEDED</code>: Use quotation marks for output fields when needed.</p></li>
/// </ul>
pub fn set_quote_fields(mut self, input: ::std::option::Option<crate::types::QuoteFields>) -> Self {
self.quote_fields = input;
self
}
/// <p>Indicates whether to use quotation marks around output fields.</p>
/// <ul>
/// <li>
/// <p><code>ALWAYS</code>: Always use quotation marks for output fields.</p></li>
/// <li>
/// <p><code>ASNEEDED</code>: Use quotation marks for output fields when needed.</p></li>
/// </ul>
pub fn get_quote_fields(&self) -> &::std::option::Option<crate::types::QuoteFields> {
&self.quote_fields
}
/// <p>The single character used for escaping the quote character inside an already escaped value.</p>
pub fn quote_escape_character(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.quote_escape_character = ::std::option::Option::Some(input.into());
self
}
/// <p>The single character used for escaping the quote character inside an already escaped value.</p>
pub fn set_quote_escape_character(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.quote_escape_character = input;
self
}
/// <p>The single character used for escaping the quote character inside an already escaped value.</p>
pub fn get_quote_escape_character(&self) -> &::std::option::Option<::std::string::String> {
&self.quote_escape_character
}
/// <p>A single character used to separate individual records in the output. Instead of the default value, you can specify an arbitrary delimiter.</p>
pub fn record_delimiter(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.record_delimiter = ::std::option::Option::Some(input.into());
self
}
/// <p>A single character used to separate individual records in the output. Instead of the default value, you can specify an arbitrary delimiter.</p>
pub fn set_record_delimiter(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.record_delimiter = input;
self
}
/// <p>A single character used to separate individual records in the output. Instead of the default value, you can specify an arbitrary delimiter.</p>
pub fn get_record_delimiter(&self) -> &::std::option::Option<::std::string::String> {
&self.record_delimiter
}
/// <p>The value used to separate individual fields in a record. You can specify an arbitrary delimiter.</p>
pub fn field_delimiter(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.field_delimiter = ::std::option::Option::Some(input.into());
self
}
/// <p>The value used to separate individual fields in a record. You can specify an arbitrary delimiter.</p>
pub fn set_field_delimiter(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.field_delimiter = input;
self
}
/// <p>The value used to separate individual fields in a record. You can specify an arbitrary delimiter.</p>
pub fn get_field_delimiter(&self) -> &::std::option::Option<::std::string::String> {
&self.field_delimiter
}
/// <p>A single character used for escaping when the field delimiter is part of the value. For example, if the value is <code>a, b</code>, Amazon S3 wraps this field value in quotation marks, as follows: <code>" a , b "</code>.</p>
pub fn quote_character(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.quote_character = ::std::option::Option::Some(input.into());
self
}
/// <p>A single character used for escaping when the field delimiter is part of the value. For example, if the value is <code>a, b</code>, Amazon S3 wraps this field value in quotation marks, as follows: <code>" a , b "</code>.</p>
pub fn set_quote_character(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.quote_character = input;
self
}
/// <p>A single character used for escaping when the field delimiter is part of the value. For example, if the value is <code>a, b</code>, Amazon S3 wraps this field value in quotation marks, as follows: <code>" a , b "</code>.</p>
pub fn get_quote_character(&self) -> &::std::option::Option<::std::string::String> {
&self.quote_character
}
/// Consumes the builder and constructs a [`CsvOutput`](crate::types::CsvOutput).
pub fn build(self) -> crate::types::CsvOutput {
crate::types::CsvOutput {
quote_fields: self.quote_fields,
quote_escape_character: self.quote_escape_character,
record_delimiter: self.record_delimiter,
field_delimiter: self.field_delimiter,
quote_character: self.quote_character,
}
}
}