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
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
/// <p>A structure for the output.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct GetWorkUnitsOutput {
/// <p>A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.</p>
pub next_token: ::std::option::Option<::std::string::String>,
/// <p>The ID of the plan query operation.</p>
pub query_id: ::std::string::String,
/// <p>A <code>WorkUnitRangeList</code> object that specifies the valid range of work unit IDs for querying the execution service.</p>
pub work_unit_ranges: ::std::vec::Vec<crate::types::WorkUnitRange>,
_request_id: Option<String>,
}
impl GetWorkUnitsOutput {
/// <p>A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.</p>
pub fn next_token(&self) -> ::std::option::Option<&str> {
self.next_token.as_deref()
}
/// <p>The ID of the plan query operation.</p>
pub fn query_id(&self) -> &str {
use std::ops::Deref;
self.query_id.deref()
}
/// <p>A <code>WorkUnitRangeList</code> object that specifies the valid range of work unit IDs for querying the execution service.</p>
pub fn work_unit_ranges(&self) -> &[crate::types::WorkUnitRange] {
use std::ops::Deref;
self.work_unit_ranges.deref()
}
}
impl ::aws_types::request_id::RequestId for GetWorkUnitsOutput {
fn request_id(&self) -> Option<&str> {
self._request_id.as_deref()
}
}
impl GetWorkUnitsOutput {
/// Creates a new builder-style object to manufacture [`GetWorkUnitsOutput`](crate::operation::get_work_units::GetWorkUnitsOutput).
pub fn builder() -> crate::operation::get_work_units::builders::GetWorkUnitsOutputBuilder {
crate::operation::get_work_units::builders::GetWorkUnitsOutputBuilder::default()
}
}
/// A builder for [`GetWorkUnitsOutput`](crate::operation::get_work_units::GetWorkUnitsOutput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct GetWorkUnitsOutputBuilder {
pub(crate) next_token: ::std::option::Option<::std::string::String>,
pub(crate) query_id: ::std::option::Option<::std::string::String>,
pub(crate) work_unit_ranges: ::std::option::Option<::std::vec::Vec<crate::types::WorkUnitRange>>,
_request_id: Option<String>,
}
impl GetWorkUnitsOutputBuilder {
/// <p>A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.</p>
pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.next_token = ::std::option::Option::Some(input.into());
self
}
/// <p>A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.</p>
pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.next_token = input;
self
}
/// <p>A continuation token for paginating the returned list of tokens, returned if the current segment of the list is not the last.</p>
pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
&self.next_token
}
/// <p>The ID of the plan query operation.</p>
/// This field is required.
pub fn query_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.query_id = ::std::option::Option::Some(input.into());
self
}
/// <p>The ID of the plan query operation.</p>
pub fn set_query_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.query_id = input;
self
}
/// <p>The ID of the plan query operation.</p>
pub fn get_query_id(&self) -> &::std::option::Option<::std::string::String> {
&self.query_id
}
/// Appends an item to `work_unit_ranges`.
///
/// To override the contents of this collection use [`set_work_unit_ranges`](Self::set_work_unit_ranges).
///
/// <p>A <code>WorkUnitRangeList</code> object that specifies the valid range of work unit IDs for querying the execution service.</p>
pub fn work_unit_ranges(mut self, input: crate::types::WorkUnitRange) -> Self {
let mut v = self.work_unit_ranges.unwrap_or_default();
v.push(input);
self.work_unit_ranges = ::std::option::Option::Some(v);
self
}
/// <p>A <code>WorkUnitRangeList</code> object that specifies the valid range of work unit IDs for querying the execution service.</p>
pub fn set_work_unit_ranges(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::WorkUnitRange>>) -> Self {
self.work_unit_ranges = input;
self
}
/// <p>A <code>WorkUnitRangeList</code> object that specifies the valid range of work unit IDs for querying the execution service.</p>
pub fn get_work_unit_ranges(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::WorkUnitRange>> {
&self.work_unit_ranges
}
pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
self._request_id = Some(request_id.into());
self
}
pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
self._request_id = request_id;
self
}
/// Consumes the builder and constructs a [`GetWorkUnitsOutput`](crate::operation::get_work_units::GetWorkUnitsOutput).
/// This method will fail if any of the following fields are not set:
/// - [`query_id`](crate::operation::get_work_units::builders::GetWorkUnitsOutputBuilder::query_id)
/// - [`work_unit_ranges`](crate::operation::get_work_units::builders::GetWorkUnitsOutputBuilder::work_unit_ranges)
pub fn build(
self,
) -> ::std::result::Result<crate::operation::get_work_units::GetWorkUnitsOutput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::get_work_units::GetWorkUnitsOutput {
next_token: self.next_token,
query_id: self.query_id.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"query_id",
"query_id was not specified but it is required when building GetWorkUnitsOutput",
)
})?,
work_unit_ranges: self.work_unit_ranges.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"work_unit_ranges",
"work_unit_ranges was not specified but it is required when building GetWorkUnitsOutput",
)
})?,
_request_id: self._request_id,
})
}
}