aws-sdk-licensemanagerusersubscriptions 1.97.0

AWS SDK for AWS License Manager User Subscriptions
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct ListInstancesOutput {
    /// <p>An array of <code>InstanceSummary</code> resources that contain details about the instances that provide user-based subscriptions and also meet the request criteria.</p>
    pub instance_summaries: ::std::option::Option<::std::vec::Vec<crate::types::InstanceSummary>>,
    /// <p>The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.</p>
    pub next_token: ::std::option::Option<::std::string::String>,
    _request_id: Option<String>,
}
impl ListInstancesOutput {
    /// <p>An array of <code>InstanceSummary</code> resources that contain details about the instances that provide user-based subscriptions and also meet the request criteria.</p>
    ///
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.instance_summaries.is_none()`.
    pub fn instance_summaries(&self) -> &[crate::types::InstanceSummary] {
        self.instance_summaries.as_deref().unwrap_or_default()
    }
    /// <p>The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.</p>
    pub fn next_token(&self) -> ::std::option::Option<&str> {
        self.next_token.as_deref()
    }
}
impl ::aws_types::request_id::RequestId for ListInstancesOutput {
    fn request_id(&self) -> Option<&str> {
        self._request_id.as_deref()
    }
}
impl ListInstancesOutput {
    /// Creates a new builder-style object to manufacture [`ListInstancesOutput`](crate::operation::list_instances::ListInstancesOutput).
    pub fn builder() -> crate::operation::list_instances::builders::ListInstancesOutputBuilder {
        crate::operation::list_instances::builders::ListInstancesOutputBuilder::default()
    }
}

/// A builder for [`ListInstancesOutput`](crate::operation::list_instances::ListInstancesOutput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct ListInstancesOutputBuilder {
    pub(crate) instance_summaries: ::std::option::Option<::std::vec::Vec<crate::types::InstanceSummary>>,
    pub(crate) next_token: ::std::option::Option<::std::string::String>,
    _request_id: Option<String>,
}
impl ListInstancesOutputBuilder {
    /// Appends an item to `instance_summaries`.
    ///
    /// To override the contents of this collection use [`set_instance_summaries`](Self::set_instance_summaries).
    ///
    /// <p>An array of <code>InstanceSummary</code> resources that contain details about the instances that provide user-based subscriptions and also meet the request criteria.</p>
    pub fn instance_summaries(mut self, input: crate::types::InstanceSummary) -> Self {
        let mut v = self.instance_summaries.unwrap_or_default();
        v.push(input);
        self.instance_summaries = ::std::option::Option::Some(v);
        self
    }
    /// <p>An array of <code>InstanceSummary</code> resources that contain details about the instances that provide user-based subscriptions and also meet the request criteria.</p>
    pub fn set_instance_summaries(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InstanceSummary>>) -> Self {
        self.instance_summaries = input;
        self
    }
    /// <p>An array of <code>InstanceSummary</code> resources that contain details about the instances that provide user-based subscriptions and also meet the request criteria.</p>
    pub fn get_instance_summaries(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InstanceSummary>> {
        &self.instance_summaries
    }
    /// <p>The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.</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>The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.</p>
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.next_token = input;
        self
    }
    /// <p>The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.</p>
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
        &self.next_token
    }
    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 [`ListInstancesOutput`](crate::operation::list_instances::ListInstancesOutput).
    pub fn build(self) -> crate::operation::list_instances::ListInstancesOutput {
        crate::operation::list_instances::ListInstancesOutput {
            instance_summaries: self.instance_summaries,
            next_token: self.next_token,
            _request_id: self._request_id,
        }
    }
}