#[non_exhaustive]
pub struct SelectObjectContentInput { pub bucket: Option<String>, pub key: Option<String>, pub sse_customer_algorithm: Option<String>, pub sse_customer_key: Option<String>, pub sse_customer_key_md5: Option<String>, pub expression: Option<String>, pub expression_type: Option<ExpressionType>, pub request_progress: Option<RequestProgress>, pub input_serialization: Option<InputSerialization>, pub output_serialization: Option<OutputSerialization>, pub scan_range: Option<ScanRange>, pub expected_bucket_owner: Option<String>, }
Expand description

Request to filter the contents of an Amazon S3 object based on a simple Structured Query Language (SQL) statement. In the request, along with the SQL expression, you must specify a data serialization format (JSON or CSV) of the object. Amazon S3 uses this to parse object data into records. It returns only records that match the specified SQL expression. You must also specify the data serialization format for the response. For more information, see S3Select API Documentation.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§bucket: Option<String>

The S3 bucket.

§key: Option<String>

The object key.

§sse_customer_algorithm: Option<String>

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

§sse_customer_key: Option<String>

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

§sse_customer_key_md5: Option<String>

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

§expression: Option<String>

The expression that is used to query the object.

§expression_type: Option<ExpressionType>

The type of the provided expression (for example, SQL).

§request_progress: Option<RequestProgress>

Specifies if periodic request progress information should be enabled.

§input_serialization: Option<InputSerialization>

Describes the format of the data in the object that is being queried.

§output_serialization: Option<OutputSerialization>

Describes the format of the data that you want Amazon S3 to return in response.

§scan_range: Option<ScanRange>

Specifies the byte range of the object to get the records from. A record is processed when its first byte is contained by the range. This parameter is optional, but when specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the start and end of the range.

ScanRangemay be used in the following ways:

  • 50 100 - process only the records starting between the bytes 50 and 100 (inclusive, counting from zero)

  • 50 - process only the records starting after the byte 50

  • 50 - process only the records within the last 50 bytes of the file.

§expected_bucket_owner: Option<String>

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

Implementations§

source§

impl SelectObjectContentInput

source

pub fn bucket(&self) -> Option<&str>

The S3 bucket.

source

pub fn key(&self) -> Option<&str>

The object key.

source

pub fn sse_customer_algorithm(&self) -> Option<&str>

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

source

pub fn sse_customer_key(&self) -> Option<&str>

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

source

pub fn sse_customer_key_md5(&self) -> Option<&str>

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

source

pub fn expression(&self) -> Option<&str>

The expression that is used to query the object.

source

pub fn expression_type(&self) -> Option<&ExpressionType>

The type of the provided expression (for example, SQL).

source

pub fn request_progress(&self) -> Option<&RequestProgress>

Specifies if periodic request progress information should be enabled.

source

pub fn input_serialization(&self) -> Option<&InputSerialization>

Describes the format of the data in the object that is being queried.

source

pub fn output_serialization(&self) -> Option<&OutputSerialization>

Describes the format of the data that you want Amazon S3 to return in response.

source

pub fn scan_range(&self) -> Option<&ScanRange>

Specifies the byte range of the object to get the records from. A record is processed when its first byte is contained by the range. This parameter is optional, but when specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the start and end of the range.

ScanRangemay be used in the following ways:

  • 50 100 - process only the records starting between the bytes 50 and 100 (inclusive, counting from zero)

  • 50 - process only the records starting after the byte 50

  • 50 - process only the records within the last 50 bytes of the file.

source

pub fn expected_bucket_owner(&self) -> Option<&str>

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

source§

impl SelectObjectContentInput

source

pub fn builder() -> SelectObjectContentInputBuilder

Creates a new builder-style object to manufacture SelectObjectContentInput.

Trait Implementations§

source§

impl Clone for SelectObjectContentInput

source§

fn clone(&self) -> SelectObjectContentInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SelectObjectContentInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for SelectObjectContentInput

source§

fn eq(&self, other: &SelectObjectContentInput) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for SelectObjectContentInput

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more