aws-sdk-acm 1.105.0

AWS SDK for AWS Certificate Manager
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::search_certificates::_search_certificates_input::SearchCertificatesInputBuilder;

pub use crate::operation::search_certificates::_search_certificates_output::SearchCertificatesOutputBuilder;

impl crate::operation::search_certificates::builders::SearchCertificatesInputBuilder {
    /// Sends a request with this input using the given client.
    pub async fn send_with(
        self,
        client: &crate::Client,
    ) -> ::std::result::Result<
        crate::operation::search_certificates::SearchCertificatesOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::search_certificates::SearchCertificatesError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let mut fluent_builder = client.search_certificates();
        fluent_builder.inner = self;
        fluent_builder.send().await
    }
}
/// Fluent builder constructing a request to `SearchCertificates`.
///
/// <p>Retrieves a list of certificates matching search criteria. You can filter certificates by X.509 attributes and ACM specific properties like certificate status, type and renewal eligibility. This operation provides more flexible filtering than <code>ListCertificates</code> by supporting complex filter statements.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct SearchCertificatesFluentBuilder {
    handle: ::std::sync::Arc<crate::client::Handle>,
    inner: crate::operation::search_certificates::builders::SearchCertificatesInputBuilder,
    config_override: ::std::option::Option<crate::config::Builder>,
}
impl
    crate::client::customize::internal::CustomizableSend<
        crate::operation::search_certificates::SearchCertificatesOutput,
        crate::operation::search_certificates::SearchCertificatesError,
    > for SearchCertificatesFluentBuilder
{
    fn send(
        self,
        config_override: crate::config::Builder,
    ) -> crate::client::customize::internal::BoxFuture<
        crate::client::customize::internal::SendResult<
            crate::operation::search_certificates::SearchCertificatesOutput,
            crate::operation::search_certificates::SearchCertificatesError,
        >,
    > {
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
    }
}
impl SearchCertificatesFluentBuilder {
    /// Creates a new `SearchCertificatesFluentBuilder`.
    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 SearchCertificates as a reference.
    pub fn as_input(&self) -> &crate::operation::search_certificates::builders::SearchCertificatesInputBuilder {
        &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::search_certificates::SearchCertificatesOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::search_certificates::SearchCertificatesError,
            ::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::search_certificates::SearchCertificates::operation_runtime_plugins(
            self.handle.runtime_plugins.clone(),
            &self.handle.conf,
            self.config_override,
        );
        crate::operation::search_certificates::SearchCertificates::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::search_certificates::SearchCertificatesOutput,
        crate::operation::search_certificates::SearchCertificatesError,
        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
    }
    /// Create a paginator for this request
    ///
    /// Paginators are used by calling [`send().await`](crate::operation::search_certificates::paginator::SearchCertificatesPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
    pub fn into_paginator(self) -> crate::operation::search_certificates::paginator::SearchCertificatesPaginator {
        crate::operation::search_certificates::paginator::SearchCertificatesPaginator::new(self.handle, self.inner)
    }
    /// <p>A filter statement that defines the search criteria. You can combine multiple filters using AND, OR, and NOT logical operators to create complex queries.</p>
    pub fn filter_statement(mut self, input: crate::types::CertificateFilterStatement) -> Self {
        self.inner = self.inner.filter_statement(input);
        self
    }
    /// <p>A filter statement that defines the search criteria. You can combine multiple filters using AND, OR, and NOT logical operators to create complex queries.</p>
    pub fn set_filter_statement(mut self, input: ::std::option::Option<crate::types::CertificateFilterStatement>) -> Self {
        self.inner = self.inner.set_filter_statement(input);
        self
    }
    /// <p>A filter statement that defines the search criteria. You can combine multiple filters using AND, OR, and NOT logical operators to create complex queries.</p>
    pub fn get_filter_statement(&self) -> &::std::option::Option<crate::types::CertificateFilterStatement> {
        self.inner.get_filter_statement()
    }
    /// <p>The maximum number of results to return in the response. Default is 100.</p>
    pub fn max_results(mut self, input: i32) -> Self {
        self.inner = self.inner.max_results(input);
        self
    }
    /// <p>The maximum number of results to return in the response. Default is 100.</p>
    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
        self.inner = self.inner.set_max_results(input);
        self
    }
    /// <p>The maximum number of results to return in the response. Default is 100.</p>
    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
        self.inner.get_max_results()
    }
    /// <p>Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of <code>NextToken</code> from the response you just received.</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>Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of <code>NextToken</code> from the response you just received.</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>Use this parameter only when paginating results and only in a subsequent request after you receive a response with truncated results. Set it to the value of <code>NextToken</code> from the response you just received.</p>
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_next_token()
    }
    /// <p>Specifies the field to sort results by. Valid values are CREATED_AT, NOT_AFTER, STATUS, RENEWAL_STATUS, EXPORTED, IN_USE, NOT_BEFORE, KEY_ALGORITHM, TYPE, CERTIFICATE_ARN, COMMON_NAME, REVOKED_AT, RENEWAL_ELIGIBILITY, ISSUED_AT, MANAGED_BY, EXPORT_OPTION, VALIDATION_METHOD, and IMPORTED_AT.</p>
    pub fn sort_by(mut self, input: crate::types::SearchCertificatesSortBy) -> Self {
        self.inner = self.inner.sort_by(input);
        self
    }
    /// <p>Specifies the field to sort results by. Valid values are CREATED_AT, NOT_AFTER, STATUS, RENEWAL_STATUS, EXPORTED, IN_USE, NOT_BEFORE, KEY_ALGORITHM, TYPE, CERTIFICATE_ARN, COMMON_NAME, REVOKED_AT, RENEWAL_ELIGIBILITY, ISSUED_AT, MANAGED_BY, EXPORT_OPTION, VALIDATION_METHOD, and IMPORTED_AT.</p>
    pub fn set_sort_by(mut self, input: ::std::option::Option<crate::types::SearchCertificatesSortBy>) -> Self {
        self.inner = self.inner.set_sort_by(input);
        self
    }
    /// <p>Specifies the field to sort results by. Valid values are CREATED_AT, NOT_AFTER, STATUS, RENEWAL_STATUS, EXPORTED, IN_USE, NOT_BEFORE, KEY_ALGORITHM, TYPE, CERTIFICATE_ARN, COMMON_NAME, REVOKED_AT, RENEWAL_ELIGIBILITY, ISSUED_AT, MANAGED_BY, EXPORT_OPTION, VALIDATION_METHOD, and IMPORTED_AT.</p>
    pub fn get_sort_by(&self) -> &::std::option::Option<crate::types::SearchCertificatesSortBy> {
        self.inner.get_sort_by()
    }
    /// <p>Specifies the order of sorted results. Valid values are ASCENDING or DESCENDING.</p>
    pub fn sort_order(mut self, input: crate::types::SearchCertificatesSortOrder) -> Self {
        self.inner = self.inner.sort_order(input);
        self
    }
    /// <p>Specifies the order of sorted results. Valid values are ASCENDING or DESCENDING.</p>
    pub fn set_sort_order(mut self, input: ::std::option::Option<crate::types::SearchCertificatesSortOrder>) -> Self {
        self.inner = self.inner.set_sort_order(input);
        self
    }
    /// <p>Specifies the order of sorted results. Valid values are ASCENDING or DESCENDING.</p>
    pub fn get_sort_order(&self) -> &::std::option::Option<crate::types::SearchCertificatesSortOrder> {
        self.inner.get_sort_order()
    }
}