pub struct Client { /* private fields */ }Expand description
Client for Account Access
Client for invoking operations on Account Access. Each operation on Account Access is a method on this
this struct. .send() MUST be invoked on the generated operations to dispatch the request to the service.
§Constructing a Client
A Config is required to construct a client. For most use cases, the aws-config
crate should be used to automatically resolve this config using
aws_config::load_from_env(), since this will resolve an SdkConfig which can be shared
across multiple different AWS SDK clients. This config resolution process can be customized
by calling aws_config::from_env() instead, which returns a ConfigLoader that uses
the builder pattern to customize the default config.
In the simplest case, creating a client looks as follows:
let config = aws_config::load_from_env().await;
let client = aws_sdk_accountaccess::Client::new(&config);Occasionally, SDKs may have additional service-specific values that can be set on the Config that
is absent from SdkConfig, or slightly different settings for a specific client may be desired.
The Builder struct implements From<&SdkConfig>, so setting these specific settings can be
done as follows:
let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_accountaccess::config::Builder::from(&sdk_config)
.some_service_specific_setting("value")
.build();See the aws-config docs and Config for more information on customizing configuration.
Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.
§Using the Client
A client has a function for every operation that can be performed by the service.
For example, the CreateEntitlement operation has
a Client::create_entitlement, function which returns a builder for that operation.
The fluent builder ultimately has a send() function that returns an async future that
returns a result, as illustrated below:
let result = client.create_entitlement()
.application_arn("example")
.send()
.await;The underlying HTTP requests that get made by this can be modified with the customize_operation
function on the fluent builder. See the customize module for more
information.
§Waiters
This client provides wait_until methods behind the Waiters trait.
To use them, simply import the trait, and then call one of the wait_until methods. This will
return a waiter fluent builder that takes various parameters, which are documented on the builder
type. Once parameters have been provided, the wait method can be called to initiate waiting.
For example, if there was a wait_until_thing method, it could look like:
let result = client.wait_until_thing()
.thing_id("someId")
.wait(Duration::from_secs(120))
.await;Implementations§
Source§impl Client
impl Client
Sourcepub fn create_application(&self) -> CreateApplicationFluentBuilder
pub fn create_application(&self) -> CreateApplicationFluentBuilder
Constructs a fluent builder for the CreateApplication operation.
- The fluent builder is configurable:
identity_source(IdentitySource)/set_identity_source(Option<IdentitySource>):
required: trueSpecifies the identity source for the application. The identity source defines the IAM Identity Center instance that provides principals for entitlements.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap::<String, String>>):
required: falseSpecifies the tags to assign to the application.
- On success, responds with
CreateApplicationOutputwith field(s):application_arn(String):The Amazon Resource Name (ARN) of the created application.
- On failure, responds with
SdkError<CreateApplicationError>
Source§impl Client
impl Client
Sourcepub fn create_entitlement(&self) -> CreateEntitlementFluentBuilder
pub fn create_entitlement(&self) -> CreateEntitlementFluentBuilder
Constructs a fluent builder for the CreateEntitlement operation.
- The fluent builder is configurable:
application_arn(impl Into<String>)/set_application_arn(Option<String>):
required: trueSpecifies the ARN of the application to create the entitlement for.
entitlement(Entitlement)/set_entitlement(Option<Entitlement>):
required: trueSpecifies the entitlement configuration, including the principal and the IAM role to grant access to.
- On success, responds with
CreateEntitlementOutputwith field(s):entitlement_id(String):The unique identifier of the created entitlement.
- On failure, responds with
SdkError<CreateEntitlementError>
Source§impl Client
impl Client
Sourcepub fn delete_application(&self) -> DeleteApplicationFluentBuilder
pub fn delete_application(&self) -> DeleteApplicationFluentBuilder
Constructs a fluent builder for the DeleteApplication operation.
- The fluent builder is configurable:
application_arn(impl Into<String>)/set_application_arn(Option<String>):
required: trueSpecifies the ARN of the application to delete.
- On success, responds with
DeleteApplicationOutput - On failure, responds with
SdkError<DeleteApplicationError>
Source§impl Client
impl Client
Sourcepub fn delete_entitlement(&self) -> DeleteEntitlementFluentBuilder
pub fn delete_entitlement(&self) -> DeleteEntitlementFluentBuilder
Constructs a fluent builder for the DeleteEntitlement operation.
- The fluent builder is configurable:
application_arn(impl Into<String>)/set_application_arn(Option<String>):
required: trueSpecifies the ARN of the application that the entitlement belongs to.
entitlement_id(impl Into<String>)/set_entitlement_id(Option<String>):
required: trueSpecifies the unique identifier of the entitlement to delete.
- On success, responds with
DeleteEntitlementOutput - On failure, responds with
SdkError<DeleteEntitlementError>
Source§impl Client
impl Client
Sourcepub fn get_application(&self) -> GetApplicationFluentBuilder
pub fn get_application(&self) -> GetApplicationFluentBuilder
Constructs a fluent builder for the GetApplication operation.
- The fluent builder is configurable:
application_arn(impl Into<String>)/set_application_arn(Option<String>):
required: trueSpecifies the ARN of the application to retrieve.
- On success, responds with
GetApplicationOutputwith field(s):identity_source(Option<IdentitySourceDetails>):The identity source details for the application, including the IAM Identity Center instance configuration.
status(Status):The current status of the application.
tenant_id(Option<String>):The tenant identifier associated with the application.
created_at(DateTime):The date and time when the application was created.
updated_at(DateTime):The date and time when the application was last updated.
tags(Option<HashMap::<String, String>>):The tags associated with the application.
error(Option<ErrorDetails>):The error details if the application is in a failed state.
- On failure, responds with
SdkError<GetApplicationError>
Source§impl Client
impl Client
Sourcepub fn get_entitlement(&self) -> GetEntitlementFluentBuilder
pub fn get_entitlement(&self) -> GetEntitlementFluentBuilder
Constructs a fluent builder for the GetEntitlement operation.
- The fluent builder is configurable:
application_arn(impl Into<String>)/set_application_arn(Option<String>):
required: trueSpecifies the ARN of the application that the entitlement belongs to.
entitlement_id(impl Into<String>)/set_entitlement_id(Option<String>):
required: trueSpecifies the unique identifier of the entitlement to retrieve.
- On success, responds with
GetEntitlementOutputwith field(s):application_arn(String):The ARN of the application that the entitlement belongs to.
entitlement_id(String):The unique identifier of the entitlement.
entitlement(Option<EntitlementDetails>):The entitlement details, including the principal, IAM role, and target account.
created_at(DateTime):The date and time when the entitlement was created.
- On failure, responds with
SdkError<GetEntitlementError>
Source§impl Client
impl Client
Sourcepub fn list_applications(&self) -> ListApplicationsFluentBuilder
pub fn list_applications(&self) -> ListApplicationsFluentBuilder
Constructs a fluent builder for the ListApplications operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
max_results(i32)/set_max_results(Option<i32>):
required: falseSpecifies the maximum number of results to return in a single call.
next_token(impl Into<String>)/set_next_token(Option<String>):
required: falseSpecifies the pagination token from a previous call to retrieve the next set of results.
- On success, responds with
ListApplicationsOutputwith field(s):applications(Vec::<ApplicationSummary>):The list of applications.
next_token(Option<String>):The pagination token to use in a subsequent request to retrieve the next set of results. This value is null when there are no more results to return.
- On failure, responds with
SdkError<ListApplicationsError>
Source§impl Client
impl Client
Sourcepub fn list_entitlements(&self) -> ListEntitlementsFluentBuilder
pub fn list_entitlements(&self) -> ListEntitlementsFluentBuilder
Constructs a fluent builder for the ListEntitlements operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
application_arn(impl Into<String>)/set_application_arn(Option<String>):
required: trueSpecifies the ARN of the application to list entitlements for.
filter(EntitlementFilter)/set_filter(Option<EntitlementFilter>):
required: trueSpecifies filter criteria to narrow the entitlements returned. You can filter by principal, IAM role, or account.
next_token(impl Into<String>)/set_next_token(Option<String>):
required: falseSpecifies the pagination token from a previous call to retrieve the next set of results.
max_results(i32)/set_max_results(Option<i32>):
required: falseSpecifies the maximum number of results to return in a single call.
- On success, responds with
ListEntitlementsOutputwith field(s):entitlements(Vec::<EntitlementsListMember>):The list of entitlements for the specified application.
next_token(Option<String>):The pagination token to use in a subsequent request to retrieve the next set of results. This value is null when there are no more results to return.
- On failure, responds with
SdkError<ListEntitlementsError>
Source§impl Client
impl Client
Constructs a fluent builder for the ListTagsForResource operation.
- The fluent builder is configurable:
resource_arn(impl Into<String>)/set_resource_arn(Option<String>):
required: trueSpecifies the ARN of the resource to list tags for.
- On success, responds with
ListTagsForResourceOutputwith field(s):tags(Option<HashMap::<String, String>>):The tags associated with the resource.
- On failure, responds with
SdkError<ListTagsForResourceError>
Source§impl Client
impl Client
Sourcepub fn tag_resource(&self) -> TagResourceFluentBuilder
pub fn tag_resource(&self) -> TagResourceFluentBuilder
Constructs a fluent builder for the TagResource operation.
- The fluent builder is configurable:
resource_arn(impl Into<String>)/set_resource_arn(Option<String>):
required: trueSpecifies the ARN of the resource to add tags to.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap::<String, String>>):
required: trueSpecifies the tags to add to the resource.
- On success, responds with
TagResourceOutput - On failure, responds with
SdkError<TagResourceError>
Source§impl Client
impl Client
Sourcepub fn untag_resource(&self) -> UntagResourceFluentBuilder
pub fn untag_resource(&self) -> UntagResourceFluentBuilder
Constructs a fluent builder for the UntagResource operation.
- The fluent builder is configurable:
resource_arn(impl Into<String>)/set_resource_arn(Option<String>):
required: trueSpecifies the ARN of the resource to remove tags from.
tag_keys(impl Into<String>)/set_tag_keys(Option<Vec::<String>>):
required: trueSpecifies the tag keys to remove from the resource.
- On success, responds with
UntagResourceOutput - On failure, responds with
SdkError<UntagResourceError>
Source§impl Client
impl Client
Sourcepub fn from_conf(conf: Config) -> Self
pub fn from_conf(conf: Config) -> Self
Creates a new client from the service Config.
§Panics
This method will panic in the following cases:
- Retries or timeouts are enabled without a
sleep_implconfigured. - Identity caching is enabled without a
sleep_implandtime_sourceconfigured. - No
behavior_versionis provided.
The panic message for each of these will have instructions on how to resolve them.
Source§impl Client
impl Client
Sourcepub fn new(sdk_config: &SdkConfig) -> Self
pub fn new(sdk_config: &SdkConfig) -> Self
Creates a new client from an SDK Config.
§Panics
- This method will panic if the
sdk_configis missing an async sleep implementation. If you experience this panic, set thesleep_implon the Config passed into this function to fix it. - This method will panic if the
sdk_configis missing an HTTP connector. If you experience this panic, set thehttp_connectoron the Config passed into this function to fix it. - This method will panic if no
BehaviorVersionis provided. If you experience this panic, setbehavior_versionon the Config or enable thebehavior-version-latestCargo feature.
Trait Implementations§
Source§impl Waiters for Client
impl Waiters for Client
Source§fn wait_until_application_active(&self) -> ApplicationActiveFluentBuilder
fn wait_until_application_active(&self) -> ApplicationActiveFluentBuilder
application_activeAuto Trait Implementations§
impl !RefUnwindSafe for Client
impl !UnwindSafe for Client
impl Freeze for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl UnsafeUnpin for Client
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);