aws-sdk-datasync 1.109.0

AWS SDK for AWS DataSync
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.

/// <p>ListAgentsResponse</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct ListAgentsOutput {
    /// <p>A list of DataSync agents in your Amazon Web Services account in the Amazon Web Services Region specified in the request. The list is ordered by the agents' Amazon Resource Names (ARNs).</p>
    pub agents: ::std::option::Option<::std::vec::Vec<crate::types::AgentListEntry>>,
    /// <p>The opaque string that indicates the position to begin the next list of results in the response.</p>
    pub next_token: ::std::option::Option<::std::string::String>,
    _request_id: Option<String>,
}
impl ListAgentsOutput {
    /// <p>A list of DataSync agents in your Amazon Web Services account in the Amazon Web Services Region specified in the request. The list is ordered by the agents' Amazon Resource Names (ARNs).</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 `.agents.is_none()`.
    pub fn agents(&self) -> &[crate::types::AgentListEntry] {
        self.agents.as_deref().unwrap_or_default()
    }
    /// <p>The opaque string that indicates the position to begin the next list of results in the response.</p>
    pub fn next_token(&self) -> ::std::option::Option<&str> {
        self.next_token.as_deref()
    }
}
impl ::aws_types::request_id::RequestId for ListAgentsOutput {
    fn request_id(&self) -> Option<&str> {
        self._request_id.as_deref()
    }
}
impl ListAgentsOutput {
    /// Creates a new builder-style object to manufacture [`ListAgentsOutput`](crate::operation::list_agents::ListAgentsOutput).
    pub fn builder() -> crate::operation::list_agents::builders::ListAgentsOutputBuilder {
        crate::operation::list_agents::builders::ListAgentsOutputBuilder::default()
    }
}

/// A builder for [`ListAgentsOutput`](crate::operation::list_agents::ListAgentsOutput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct ListAgentsOutputBuilder {
    pub(crate) agents: ::std::option::Option<::std::vec::Vec<crate::types::AgentListEntry>>,
    pub(crate) next_token: ::std::option::Option<::std::string::String>,
    _request_id: Option<String>,
}
impl ListAgentsOutputBuilder {
    /// Appends an item to `agents`.
    ///
    /// To override the contents of this collection use [`set_agents`](Self::set_agents).
    ///
    /// <p>A list of DataSync agents in your Amazon Web Services account in the Amazon Web Services Region specified in the request. The list is ordered by the agents' Amazon Resource Names (ARNs).</p>
    pub fn agents(mut self, input: crate::types::AgentListEntry) -> Self {
        let mut v = self.agents.unwrap_or_default();
        v.push(input);
        self.agents = ::std::option::Option::Some(v);
        self
    }
    /// <p>A list of DataSync agents in your Amazon Web Services account in the Amazon Web Services Region specified in the request. The list is ordered by the agents' Amazon Resource Names (ARNs).</p>
    pub fn set_agents(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AgentListEntry>>) -> Self {
        self.agents = input;
        self
    }
    /// <p>A list of DataSync agents in your Amazon Web Services account in the Amazon Web Services Region specified in the request. The list is ordered by the agents' Amazon Resource Names (ARNs).</p>
    pub fn get_agents(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AgentListEntry>> {
        &self.agents
    }
    /// <p>The opaque string that indicates the position to begin the next list of results in the response.</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 opaque string that indicates the position to begin the next list of results in the response.</p>
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.next_token = input;
        self
    }
    /// <p>The opaque string that indicates the position to begin the next list of results in the response.</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 [`ListAgentsOutput`](crate::operation::list_agents::ListAgentsOutput).
    pub fn build(self) -> crate::operation::list_agents::ListAgentsOutput {
        crate::operation::list_agents::ListAgentsOutput {
            agents: self.agents,
            next_token: self.next_token,
            _request_id: self._request_id,
        }
    }
}