Struct aws_sdk_applicationcostprofiler::Client
source · pub struct Client { /* private fields */ }
Expand description
Client for AWS Application Cost Profiler
Client for invoking operations on AWS Application Cost Profiler. Each operation on AWS Application Cost Profiler 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_applicationcostprofiler::Client::new(&config);
Occasionally, SDKs may have additional service-specific that can be set on the Config
that
is absent from SdkConfig
, or slightly different settings for a specific client may be desired.
The Config
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_applicationcostprofiler::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 DeleteReportDefinition
operation has
a Client::delete_report_definition
, 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.delete_report_definition()
.report_id("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.
Implementations§
source§impl Client
impl Client
sourcepub fn delete_report_definition(&self) -> DeleteReportDefinitionFluentBuilder
pub fn delete_report_definition(&self) -> DeleteReportDefinitionFluentBuilder
Constructs a fluent builder for the DeleteReportDefinition
operation.
- The fluent builder is configurable:
report_id(impl Into<String>)
/set_report_id(Option<String>)
:
required: trueRequired. ID of the report to delete.
- On success, responds with
DeleteReportDefinitionOutput
with field(s):report_id(Option<String>)
:ID of the report that was deleted.
- On failure, responds with
SdkError<DeleteReportDefinitionError>
source§impl Client
impl Client
sourcepub fn get_report_definition(&self) -> GetReportDefinitionFluentBuilder
pub fn get_report_definition(&self) -> GetReportDefinitionFluentBuilder
Constructs a fluent builder for the GetReportDefinition
operation.
- The fluent builder is configurable:
report_id(impl Into<String>)
/set_report_id(Option<String>)
:
required: trueID of the report to retrieve.
- On success, responds with
GetReportDefinitionOutput
with field(s):report_id(String)
:ID of the report retrieved.
report_description(String)
:Description of the report.
report_frequency(ReportFrequency)
:Cadence used to generate the report.
format(Format)
:Format of the generated report.
destination_s3_location(Option<S3Location>)
:Amazon Simple Storage Service (Amazon S3) location where the report is uploaded.
created_at(DateTime)
:Timestamp (milliseconds) when this report definition was created.
last_updated(DateTime)
:Timestamp (milliseconds) when this report definition was last updated.
- On failure, responds with
SdkError<GetReportDefinitionError>
source§impl Client
impl Client
sourcepub fn import_application_usage(&self) -> ImportApplicationUsageFluentBuilder
pub fn import_application_usage(&self) -> ImportApplicationUsageFluentBuilder
Constructs a fluent builder for the ImportApplicationUsage
operation.
- The fluent builder is configurable:
source_s3_location(SourceS3Location)
/set_source_s3_location(Option<SourceS3Location>)
:
required: trueAmazon S3 location to import application usage data from.
- On success, responds with
ImportApplicationUsageOutput
with field(s):import_id(String)
:ID of the import request.
- On failure, responds with
SdkError<ImportApplicationUsageError>
source§impl Client
impl Client
sourcepub fn list_report_definitions(&self) -> ListReportDefinitionsFluentBuilder
pub fn list_report_definitions(&self) -> ListReportDefinitionsFluentBuilder
Constructs a fluent builder for the ListReportDefinitions
operation.
This operation supports pagination; See into_paginator()
.
- The fluent builder is configurable:
next_token(impl Into<String>)
/set_next_token(Option<String>)
:
required: falseThe token value from a previous call to access the next page of results.
max_results(i32)
/set_max_results(Option<i32>)
:
required: falseThe maximum number of results to return.
- On success, responds with
ListReportDefinitionsOutput
with field(s):report_definitions(Option<Vec::<ReportDefinition>>)
:The retrieved reports.
next_token(Option<String>)
:The value of the next token, if it exists. Null if there are no more results.
- On failure, responds with
SdkError<ListReportDefinitionsError>
source§impl Client
impl Client
sourcepub fn put_report_definition(&self) -> PutReportDefinitionFluentBuilder
pub fn put_report_definition(&self) -> PutReportDefinitionFluentBuilder
Constructs a fluent builder for the PutReportDefinition
operation.
- The fluent builder is configurable:
report_id(impl Into<String>)
/set_report_id(Option<String>)
:
required: trueRequired. ID of the report. You can choose any valid string matching the pattern for the ID.
report_description(impl Into<String>)
/set_report_description(Option<String>)
:
required: trueRequired. Description of the report.
report_frequency(ReportFrequency)
/set_report_frequency(Option<ReportFrequency>)
:
required: trueRequired. The cadence to generate the report.
format(Format)
/set_format(Option<Format>)
:
required: trueRequired. The format to use for the generated report.
destination_s3_location(S3Location)
/set_destination_s3_location(Option<S3Location>)
:
required: trueRequired. Amazon Simple Storage Service (Amazon S3) location where Application Cost Profiler uploads the report.
- On success, responds with
PutReportDefinitionOutput
with field(s):report_id(Option<String>)
:ID of the report.
- On failure, responds with
SdkError<PutReportDefinitionError>
source§impl Client
impl Client
sourcepub fn update_report_definition(&self) -> UpdateReportDefinitionFluentBuilder
pub fn update_report_definition(&self) -> UpdateReportDefinitionFluentBuilder
Constructs a fluent builder for the UpdateReportDefinition
operation.
- The fluent builder is configurable:
report_id(impl Into<String>)
/set_report_id(Option<String>)
:
required: trueRequired. ID of the report to update.
report_description(impl Into<String>)
/set_report_description(Option<String>)
:
required: trueRequired. Description of the report.
report_frequency(ReportFrequency)
/set_report_frequency(Option<ReportFrequency>)
:
required: trueRequired. The cadence to generate the report.
format(Format)
/set_format(Option<Format>)
:
required: trueRequired. The format to use for the generated report.
destination_s3_location(S3Location)
/set_destination_s3_location(Option<S3Location>)
:
required: trueRequired. Amazon Simple Storage Service (Amazon S3) location where Application Cost Profiler uploads the report.
- On success, responds with
UpdateReportDefinitionOutput
with field(s):report_id(Option<String>)
:ID of the report.
- On failure, responds with
SdkError<UpdateReportDefinitionError>
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_impl
configured. - Identity caching is enabled without a
sleep_impl
andtime_source
configured.
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_config
is missing an async sleep implementation. If you experience this panic, set thesleep_impl
on the Config passed into this function to fix it. - This method will panic if the
sdk_config
is missing an HTTP connector. If you experience this panic, set thehttp_connector
on the Config passed into this function to fix it.