aws-sdk-licensemanager 1.95.0

AWS SDK for AWS License Manager
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::list_received_grants::_list_received_grants_output::ListReceivedGrantsOutputBuilder;

pub use crate::operation::list_received_grants::_list_received_grants_input::ListReceivedGrantsInputBuilder;

impl crate::operation::list_received_grants::builders::ListReceivedGrantsInputBuilder {
    /// Sends a request with this input using the given client.
    pub async fn send_with(
        self,
        client: &crate::Client,
    ) -> ::std::result::Result<
        crate::operation::list_received_grants::ListReceivedGrantsOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::list_received_grants::ListReceivedGrantsError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let mut fluent_builder = client.list_received_grants();
        fluent_builder.inner = self;
        fluent_builder.send().await
    }
}
/// Fluent builder constructing a request to `ListReceivedGrants`.
///
/// <p>Lists grants that are received. Received grants are grants created while specifying the recipient as this Amazon Web Services account, your organization, or an organizational unit (OU) to which this member account belongs.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct ListReceivedGrantsFluentBuilder {
    handle: ::std::sync::Arc<crate::client::Handle>,
    inner: crate::operation::list_received_grants::builders::ListReceivedGrantsInputBuilder,
    config_override: ::std::option::Option<crate::config::Builder>,
}
impl
    crate::client::customize::internal::CustomizableSend<
        crate::operation::list_received_grants::ListReceivedGrantsOutput,
        crate::operation::list_received_grants::ListReceivedGrantsError,
    > for ListReceivedGrantsFluentBuilder
{
    fn send(
        self,
        config_override: crate::config::Builder,
    ) -> crate::client::customize::internal::BoxFuture<
        crate::client::customize::internal::SendResult<
            crate::operation::list_received_grants::ListReceivedGrantsOutput,
            crate::operation::list_received_grants::ListReceivedGrantsError,
        >,
    > {
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
    }
}
impl ListReceivedGrantsFluentBuilder {
    /// Creates a new `ListReceivedGrantsFluentBuilder`.
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
        Self {
            handle,
            inner: ::std::default::Default::default(),
            config_override: ::std::option::Option::None,
        }
    }
    /// Access the ListReceivedGrants as a reference.
    pub fn as_input(&self) -> &crate::operation::list_received_grants::builders::ListReceivedGrantsInputBuilder {
        &self.inner
    }
    /// 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::operation::list_received_grants::ListReceivedGrantsOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::list_received_grants::ListReceivedGrantsError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let input = self
            .inner
            .build()
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
        let runtime_plugins = crate::operation::list_received_grants::ListReceivedGrants::operation_runtime_plugins(
            self.handle.runtime_plugins.clone(),
            &self.handle.conf,
            self.config_override,
        );
        crate::operation::list_received_grants::ListReceivedGrants::orchestrate(&runtime_plugins, input).await
    }

    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
    pub fn customize(
        self,
    ) -> crate::client::customize::CustomizableOperation<
        crate::operation::list_received_grants::ListReceivedGrantsOutput,
        crate::operation::list_received_grants::ListReceivedGrantsError,
        Self,
    > {
        crate::client::customize::CustomizableOperation::new(self)
    }
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
        self.set_config_override(::std::option::Option::Some(config_override.into()));
        self
    }

    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
        self.config_override = config_override;
        self
    }
    ///
    /// Appends an item to `GrantArns`.
    ///
    /// To override the contents of this collection use [`set_grant_arns`](Self::set_grant_arns).
    ///
    /// <p>Amazon Resource Names (ARNs) of the grants.</p>
    pub fn grant_arns(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.grant_arns(input.into());
        self
    }
    /// <p>Amazon Resource Names (ARNs) of the grants.</p>
    pub fn set_grant_arns(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
        self.inner = self.inner.set_grant_arns(input);
        self
    }
    /// <p>Amazon Resource Names (ARNs) of the grants.</p>
    pub fn get_grant_arns(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
        self.inner.get_grant_arns()
    }
    ///
    /// Appends an item to `Filters`.
    ///
    /// To override the contents of this collection use [`set_filters`](Self::set_filters).
    ///
    /// <p>Filters to scope the results. The following filters are supported:</p>
    /// <ul>
    /// <li>
    /// <p><code>ProductSKU</code></p></li>
    /// <li>
    /// <p><code>LicenseIssuerName</code></p></li>
    /// <li>
    /// <p><code>LicenseArn</code></p></li>
    /// <li>
    /// <p><code>GrantStatus</code></p></li>
    /// <li>
    /// <p><code>GranterAccountId</code></p></li>
    /// </ul>
    pub fn filters(mut self, input: crate::types::Filter) -> Self {
        self.inner = self.inner.filters(input);
        self
    }
    /// <p>Filters to scope the results. The following filters are supported:</p>
    /// <ul>
    /// <li>
    /// <p><code>ProductSKU</code></p></li>
    /// <li>
    /// <p><code>LicenseIssuerName</code></p></li>
    /// <li>
    /// <p><code>LicenseArn</code></p></li>
    /// <li>
    /// <p><code>GrantStatus</code></p></li>
    /// <li>
    /// <p><code>GranterAccountId</code></p></li>
    /// </ul>
    pub fn set_filters(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Filter>>) -> Self {
        self.inner = self.inner.set_filters(input);
        self
    }
    /// <p>Filters to scope the results. The following filters are supported:</p>
    /// <ul>
    /// <li>
    /// <p><code>ProductSKU</code></p></li>
    /// <li>
    /// <p><code>LicenseIssuerName</code></p></li>
    /// <li>
    /// <p><code>LicenseArn</code></p></li>
    /// <li>
    /// <p><code>GrantStatus</code></p></li>
    /// <li>
    /// <p><code>GranterAccountId</code></p></li>
    /// </ul>
    pub fn get_filters(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Filter>> {
        self.inner.get_filters()
    }
    /// <p>Token for the next set of results.</p>
    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.next_token(input.into());
        self
    }
    /// <p>Token for the next set of results.</p>
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_next_token(input);
        self
    }
    /// <p>Token for the next set of results.</p>
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_next_token()
    }
    /// <p>Maximum number of results to return in a single call.</p>
    pub fn max_results(mut self, input: i32) -> Self {
        self.inner = self.inner.max_results(input);
        self
    }
    /// <p>Maximum number of results to return in a single call.</p>
    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
        self.inner = self.inner.set_max_results(input);
        self
    }
    /// <p>Maximum number of results to return in a single call.</p>
    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
        self.inner.get_max_results()
    }
}