Struct aws_sdk_honeycode::input::query_table_rows_input::Builder
source · pub struct Builder { /* private fields */ }Expand description
A builder for QueryTableRowsInput.
Implementations§
source§impl Builder
impl Builder
sourcepub fn workbook_id(self, input: impl Into<String>) -> Self
pub fn workbook_id(self, input: impl Into<String>) -> Self
The ID of the workbook whose table rows are being queried.
If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
sourcepub fn set_workbook_id(self, input: Option<String>) -> Self
pub fn set_workbook_id(self, input: Option<String>) -> Self
The ID of the workbook whose table rows are being queried.
If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
sourcepub fn table_id(self, input: impl Into<String>) -> Self
pub fn table_id(self, input: impl Into<String>) -> Self
The ID of the table whose rows are being queried.
If a table with the specified id could not be found, this API throws ResourceNotFoundException.
sourcepub fn set_table_id(self, input: Option<String>) -> Self
pub fn set_table_id(self, input: Option<String>) -> Self
The ID of the table whose rows are being queried.
If a table with the specified id could not be found, this API throws ResourceNotFoundException.
sourcepub fn filter_formula(self, input: Filter) -> Self
pub fn filter_formula(self, input: Filter) -> Self
An object that represents a filter formula along with the id of the context row under which the filter function needs to evaluate.
sourcepub fn set_filter_formula(self, input: Option<Filter>) -> Self
pub fn set_filter_formula(self, input: Option<Filter>) -> Self
An object that represents a filter formula along with the id of the context row under which the filter function needs to evaluate.
sourcepub fn max_results(self, input: i32) -> Self
pub fn max_results(self, input: i32) -> Self
The maximum number of rows to return in each page of the results.
sourcepub fn set_max_results(self, input: Option<i32>) -> Self
pub fn set_max_results(self, input: Option<i32>) -> Self
The maximum number of rows to return in each page of the results.
sourcepub fn next_token(self, input: impl Into<String>) -> Self
pub fn next_token(self, input: impl Into<String>) -> Self
This parameter is optional. If a nextToken is not specified, the API returns the first page of data.
Pagination tokens expire after 1 hour. If you use a token that was returned more than an hour back, the API will throw ValidationException.
sourcepub fn set_next_token(self, input: Option<String>) -> Self
pub fn set_next_token(self, input: Option<String>) -> Self
This parameter is optional. If a nextToken is not specified, the API returns the first page of data.
Pagination tokens expire after 1 hour. If you use a token that was returned more than an hour back, the API will throw ValidationException.
sourcepub fn build(self) -> Result<QueryTableRowsInput, BuildError>
pub fn build(self) -> Result<QueryTableRowsInput, BuildError>
Consumes the builder and constructs a QueryTableRowsInput.
Examples found in repository?
1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677
pub async fn customize(
self,
) -> std::result::Result<
crate::operation::customize::CustomizableOperation<
crate::operation::QueryTableRows,
aws_http::retry::AwsResponseRetryClassifier,
>,
aws_smithy_http::result::SdkError<crate::error::QueryTableRowsError>,
> {
let handle = self.handle.clone();
let operation = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
Ok(crate::operation::customize::CustomizableOperation { handle, operation })
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> std::result::Result<
crate::output::QueryTableRowsOutput,
aws_smithy_http::result::SdkError<crate::error::QueryTableRowsError>,
> {
let op = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&self.handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
self.handle.client.call(op).await
}More examples
367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431
pub fn send(
self,
) -> impl tokio_stream::Stream<
Item = std::result::Result<
crate::output::QueryTableRowsOutput,
aws_smithy_http::result::SdkError<crate::error::QueryTableRowsError>,
>,
> + Unpin {
// Move individual fields out of self for the borrow checker
let builder = self.builder;
let handle = self.handle;
aws_smithy_async::future::fn_stream::FnStream::new(move |tx| {
Box::pin(async move {
// Build the input for the first time. If required fields are missing, this is where we'll produce an early error.
let mut input = match builder
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)
{
Ok(input) => input,
Err(e) => {
let _ = tx.send(Err(e)).await;
return;
}
};
loop {
let op = match input
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)
{
Ok(op) => op,
Err(e) => {
let _ = tx.send(Err(e)).await;
return;
}
};
let resp = handle.client.call(op).await;
// If the input member is None or it was an error
let done = match resp {
Ok(ref resp) => {
let new_token = crate::lens::reflens_structure_crate_output_query_table_rows_output_next_token(resp);
let is_empty = new_token.map(|token| token.is_empty()).unwrap_or(true);
if !is_empty
&& new_token == input.next_token.as_ref()
&& self.stop_on_duplicate_token
{
true
} else {
input.next_token = new_token.cloned();
is_empty
}
}
Err(_) => true,
};
if tx.send(resp).await.is_err() {
// receiving end was dropped
return;
}
if done {
return;
}
}
})
})
}