// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::list_service_specific_credentials::_list_service_specific_credentials_input::ListServiceSpecificCredentialsInputBuilder;
pub use crate::operation::list_service_specific_credentials::_list_service_specific_credentials_output::ListServiceSpecificCredentialsOutputBuilder;
impl crate::operation::list_service_specific_credentials::builders::ListServiceSpecificCredentialsInputBuilder {
/// 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_service_specific_credentials::ListServiceSpecificCredentialsOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let mut fluent_builder = client.list_service_specific_credentials();
fluent_builder.inner = self;
fluent_builder.send().await
}
}
/// Fluent builder constructing a request to `ListServiceSpecificCredentials`.
///
/// <p>Returns information about the service-specific credentials associated with the specified IAM user. If none exists, the operation returns an empty list. The service-specific credentials returned by this operation are used only for authenticating the IAM user to a specific service. For more information about using service-specific credentials to authenticate to an Amazon Web Services service, see <a href="https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html">Set up service-specific credentials</a> in the CodeCommit User Guide.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct ListServiceSpecificCredentialsFluentBuilder {
handle: ::std::sync::Arc<crate::client::Handle>,
inner: crate::operation::list_service_specific_credentials::builders::ListServiceSpecificCredentialsInputBuilder,
config_override: ::std::option::Option<crate::config::Builder>,
}
impl
crate::client::customize::internal::CustomizableSend<
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsOutput,
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsError,
> for ListServiceSpecificCredentialsFluentBuilder
{
fn send(
self,
config_override: crate::config::Builder,
) -> crate::client::customize::internal::BoxFuture<
crate::client::customize::internal::SendResult<
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsOutput,
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsError,
>,
> {
::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
}
}
impl ListServiceSpecificCredentialsFluentBuilder {
/// Creates a new `ListServiceSpecificCredentialsFluentBuilder`.
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 ListServiceSpecificCredentials as a reference.
pub fn as_input(&self) -> &crate::operation::list_service_specific_credentials::builders::ListServiceSpecificCredentialsInputBuilder {
&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_service_specific_credentials::ListServiceSpecificCredentialsOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsError,
::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_service_specific_credentials::ListServiceSpecificCredentials::operation_runtime_plugins(
self.handle.runtime_plugins.clone(),
&self.handle.conf,
self.config_override,
);
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentials::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_service_specific_credentials::ListServiceSpecificCredentialsOutput,
crate::operation::list_service_specific_credentials::ListServiceSpecificCredentialsError,
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
}
/// <p>The name of the user whose service-specific credentials you want information about. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation.</p>
/// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
pub fn user_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.user_name(input.into());
self
}
/// <p>The name of the user whose service-specific credentials you want information about. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation.</p>
/// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
pub fn set_user_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_user_name(input);
self
}
/// <p>The name of the user whose service-specific credentials you want information about. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation.</p>
/// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
pub fn get_user_name(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_user_name()
}
/// <p>Filters the returned results to only those for the specified Amazon Web Services service. If not specified, then Amazon Web Services returns service-specific credentials for all services.</p>
pub fn service_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.service_name(input.into());
self
}
/// <p>Filters the returned results to only those for the specified Amazon Web Services service. If not specified, then Amazon Web Services returns service-specific credentials for all services.</p>
pub fn set_service_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_service_name(input);
self
}
/// <p>Filters the returned results to only those for the specified Amazon Web Services service. If not specified, then Amazon Web Services returns service-specific credentials for all services.</p>
pub fn get_service_name(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_service_name()
}
/// <p>A flag indicating whether to list service specific credentials for all users. This parameter cannot be specified together with UserName. When true, returns all credentials associated with the specified service.</p>
pub fn all_users(mut self, input: bool) -> Self {
self.inner = self.inner.all_users(input);
self
}
/// <p>A flag indicating whether to list service specific credentials for all users. This parameter cannot be specified together with UserName. When true, returns all credentials associated with the specified service.</p>
pub fn set_all_users(mut self, input: ::std::option::Option<bool>) -> Self {
self.inner = self.inner.set_all_users(input);
self
}
/// <p>A flag indicating whether to list service specific credentials for all users. This parameter cannot be specified together with UserName. When true, returns all credentials associated with the specified service.</p>
pub fn get_all_users(&self) -> &::std::option::Option<bool> {
self.inner.get_all_users()
}
/// <p>Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker from the response that you received to indicate where the next call should start.</p>
pub fn marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.marker(input.into());
self
}
/// <p>Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker from the response that you received to indicate where the next call should start.</p>
pub fn set_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_marker(input);
self
}
/// <p>Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the Marker from the response that you received to indicate where the next call should start.</p>
pub fn get_marker(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_marker()
}
/// <p>Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.</p>
pub fn max_items(mut self, input: i32) -> Self {
self.inner = self.inner.max_items(input);
self
}
/// <p>Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.</p>
pub fn set_max_items(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_max_items(input);
self
}
/// <p>Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the IsTruncated response element is true.</p>
pub fn get_max_items(&self) -> &::std::option::Option<i32> {
self.inner.get_max_items()
}
}