Struct aws_sdk_iotdeviceadvisor::client::Client
source · pub struct Client { /* private fields */ }Expand description
Client for AWS IoT Core Device Advisor
Client for invoking operations on AWS IoT Core Device Advisor. Each operation on AWS IoT Core Device Advisor 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_iotdeviceadvisor::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_iotdeviceadvisor::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 DeleteSuiteDefinition operation has
a Client::delete_suite_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_suite_definition()
.suite_definition_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 create_suite_definition(&self) -> CreateSuiteDefinitionFluentBuilder
pub fn create_suite_definition(&self) -> CreateSuiteDefinitionFluentBuilder
Constructs a fluent builder for the CreateSuiteDefinition operation.
- The fluent builder is configurable:
suite_definition_configuration(SuiteDefinitionConfiguration)/set_suite_definition_configuration(Option<SuiteDefinitionConfiguration>):
required: trueCreates a Device Advisor test suite with suite definition configuration.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap::<String, String>>):
required: falseThe tags to be attached to the suite definition.
- On success, responds with
CreateSuiteDefinitionOutputwith field(s):suite_definition_id(Option<String>):The UUID of the test suite created.
suite_definition_arn(Option<String>):The Amazon Resource Name (ARN) of the test suite.
suite_definition_name(Option<String>):The suite definition name of the test suite. This is a required parameter.
created_at(Option<DateTime>):The timestamp of when the test suite was created.
- On failure, responds with
SdkError<CreateSuiteDefinitionError>
source§impl Client
impl Client
sourcepub fn delete_suite_definition(&self) -> DeleteSuiteDefinitionFluentBuilder
pub fn delete_suite_definition(&self) -> DeleteSuiteDefinitionFluentBuilder
Constructs a fluent builder for the DeleteSuiteDefinition operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID of the test suite to be deleted.
- On success, responds with
DeleteSuiteDefinitionOutput - On failure, responds with
SdkError<DeleteSuiteDefinitionError>
source§impl Client
impl Client
sourcepub fn get_endpoint(&self) -> GetEndpointFluentBuilder
pub fn get_endpoint(&self) -> GetEndpointFluentBuilder
Constructs a fluent builder for the GetEndpoint operation.
- The fluent builder is configurable:
thing_arn(impl Into<String>)/set_thing_arn(Option<String>):
required: falseThe thing ARN of the device. This is an optional parameter.
certificate_arn(impl Into<String>)/set_certificate_arn(Option<String>):
required: falseThe certificate ARN of the device. This is an optional parameter.
device_role_arn(impl Into<String>)/set_device_role_arn(Option<String>):
required: falseThe device role ARN of the device. This is an optional parameter.
authentication_method(AuthenticationMethod)/set_authentication_method(Option<AuthenticationMethod>):
required: falseThe authentication method used during the device connection.
- On success, responds with
GetEndpointOutputwith field(s):endpoint(Option<String>):The response of an Device Advisor endpoint.
- On failure, responds with
SdkError<GetEndpointError>
source§impl Client
impl Client
sourcepub fn get_suite_definition(&self) -> GetSuiteDefinitionFluentBuilder
pub fn get_suite_definition(&self) -> GetSuiteDefinitionFluentBuilder
Constructs a fluent builder for the GetSuiteDefinition operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID of the test suite to get.
suite_definition_version(impl Into<String>)/set_suite_definition_version(Option<String>):
required: falseSuite definition version of the test suite to get.
- On success, responds with
GetSuiteDefinitionOutputwith field(s):suite_definition_id(Option<String>):Suite definition ID of the suite definition.
suite_definition_arn(Option<String>):The ARN of the suite definition.
suite_definition_version(Option<String>):Suite definition version of the suite definition.
latest_version(Option<String>):Latest suite definition version of the suite definition.
suite_definition_configuration(Option<SuiteDefinitionConfiguration>):Suite configuration of the suite definition.
created_at(Option<DateTime>):Date (in Unix epoch time) when the suite definition was created.
last_modified_at(Option<DateTime>):Date (in Unix epoch time) when the suite definition was last modified.
tags(Option<HashMap::<String, String>>):Tags attached to the suite definition.
- On failure, responds with
SdkError<GetSuiteDefinitionError>
source§impl Client
impl Client
sourcepub fn get_suite_run(&self) -> GetSuiteRunFluentBuilder
pub fn get_suite_run(&self) -> GetSuiteRunFluentBuilder
Constructs a fluent builder for the GetSuiteRun operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID for the test suite run.
suite_run_id(impl Into<String>)/set_suite_run_id(Option<String>):
required: trueSuite run ID for the test suite run.
- On success, responds with
GetSuiteRunOutputwith field(s):suite_definition_id(Option<String>):Suite definition ID for the test suite run.
suite_definition_version(Option<String>):Suite definition version for the test suite run.
suite_run_id(Option<String>):Suite run ID for the test suite run.
suite_run_arn(Option<String>):The ARN of the suite run.
suite_run_configuration(Option<SuiteRunConfiguration>):Suite run configuration for the test suite run.
test_result(Option<TestResult>):Test results for the test suite run.
start_time(Option<DateTime>):Date (in Unix epoch time) when the test suite run started.
end_time(Option<DateTime>):Date (in Unix epoch time) when the test suite run ended.
status(Option<SuiteRunStatus>):Status for the test suite run.
error_reason(Option<String>):Error reason for any test suite run failure.
tags(Option<HashMap::<String, String>>):The tags attached to the suite run.
- On failure, responds with
SdkError<GetSuiteRunError>
source§impl Client
impl Client
sourcepub fn get_suite_run_report(&self) -> GetSuiteRunReportFluentBuilder
pub fn get_suite_run_report(&self) -> GetSuiteRunReportFluentBuilder
Constructs a fluent builder for the GetSuiteRunReport operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID of the test suite.
suite_run_id(impl Into<String>)/set_suite_run_id(Option<String>):
required: trueSuite run ID of the test suite run.
- On success, responds with
GetSuiteRunReportOutputwith field(s):qualification_report_download_url(Option<String>):Download URL of the qualification report.
- On failure, responds with
SdkError<GetSuiteRunReportError>
source§impl Client
impl Client
sourcepub fn list_suite_definitions(&self) -> ListSuiteDefinitionsFluentBuilder
pub fn list_suite_definitions(&self) -> ListSuiteDefinitionsFluentBuilder
Constructs a fluent builder for the ListSuiteDefinitions operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
max_results(i32)/set_max_results(Option<i32>):
required: falseThe maximum number of results to return at once.
next_token(impl Into<String>)/set_next_token(Option<String>):
required: falseA token used to get the next set of results.
- On success, responds with
ListSuiteDefinitionsOutputwith field(s):suite_definition_information_list(Option<Vec::<SuiteDefinitionInformation>>):An array of objects that provide summaries of information about the suite definitions in the list.
next_token(Option<String>):A token used to get the next set of results.
- On failure, responds with
SdkError<ListSuiteDefinitionsError>
source§impl Client
impl Client
sourcepub fn list_suite_runs(&self) -> ListSuiteRunsFluentBuilder
pub fn list_suite_runs(&self) -> ListSuiteRunsFluentBuilder
Constructs a fluent builder for the ListSuiteRuns operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: falseLists the test suite runs of the specified test suite based on suite definition ID.
suite_definition_version(impl Into<String>)/set_suite_definition_version(Option<String>):
required: falseMust be passed along with
suiteDefinitionId. Lists the test suite runs of the specified test suite based on suite definition version.max_results(i32)/set_max_results(Option<i32>):
required: falseThe maximum number of results to return at once.
next_token(impl Into<String>)/set_next_token(Option<String>):
required: falseA token to retrieve the next set of results.
- On success, responds with
ListSuiteRunsOutputwith field(s):suite_runs_list(Option<Vec::<SuiteRunInformation>>):An array of objects that provide summaries of information about the suite runs in the list.
next_token(Option<String>):A token to retrieve the next set of results.
- On failure, responds with
SdkError<ListSuiteRunsError>
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: trueThe resource ARN of the IoT Device Advisor resource. This can be SuiteDefinition ARN or SuiteRun ARN.
- On success, responds with
ListTagsForResourceOutputwith field(s):tags(Option<HashMap::<String, String>>):The tags attached to the IoT Device Advisor resource.
- On failure, responds with
SdkError<ListTagsForResourceError>
source§impl Client
impl Client
sourcepub fn start_suite_run(&self) -> StartSuiteRunFluentBuilder
pub fn start_suite_run(&self) -> StartSuiteRunFluentBuilder
Constructs a fluent builder for the StartSuiteRun operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID of the test suite.
suite_definition_version(impl Into<String>)/set_suite_definition_version(Option<String>):
required: falseSuite definition version of the test suite.
suite_run_configuration(SuiteRunConfiguration)/set_suite_run_configuration(Option<SuiteRunConfiguration>):
required: trueSuite run configuration.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap::<String, String>>):
required: falseThe tags to be attached to the suite run.
- On success, responds with
StartSuiteRunOutputwith field(s):suite_run_id(Option<String>):Suite Run ID of the started suite run.
suite_run_arn(Option<String>):Amazon Resource Name (ARN) of the started suite run.
created_at(Option<DateTime>):Starts a Device Advisor test suite run based on suite create time.
endpoint(Option<String>):The response of an Device Advisor test endpoint.
- On failure, responds with
SdkError<StartSuiteRunError>
source§impl Client
impl Client
sourcepub fn stop_suite_run(&self) -> StopSuiteRunFluentBuilder
pub fn stop_suite_run(&self) -> StopSuiteRunFluentBuilder
Constructs a fluent builder for the StopSuiteRun operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID of the test suite run to be stopped.
suite_run_id(impl Into<String>)/set_suite_run_id(Option<String>):
required: trueSuite run ID of the test suite run to be stopped.
- On success, responds with
StopSuiteRunOutput - On failure, responds with
SdkError<StopSuiteRunError>
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: trueThe resource ARN of an IoT Device Advisor resource. This can be SuiteDefinition ARN or SuiteRun ARN.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap::<String, String>>):
required: trueThe tags to be attached to the IoT Device Advisor 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: trueThe resource ARN of an IoT Device Advisor resource. This can be SuiteDefinition ARN or SuiteRun ARN.
tag_keys(impl Into<String>)/set_tag_keys(Option<Vec::<String>>):
required: trueList of tag keys to remove from the IoT Device Advisor resource.
- On success, responds with
UntagResourceOutput - On failure, responds with
SdkError<UntagResourceError>
source§impl Client
impl Client
sourcepub fn update_suite_definition(&self) -> UpdateSuiteDefinitionFluentBuilder
pub fn update_suite_definition(&self) -> UpdateSuiteDefinitionFluentBuilder
Constructs a fluent builder for the UpdateSuiteDefinition operation.
- The fluent builder is configurable:
suite_definition_id(impl Into<String>)/set_suite_definition_id(Option<String>):
required: trueSuite definition ID of the test suite to be updated.
suite_definition_configuration(SuiteDefinitionConfiguration)/set_suite_definition_configuration(Option<SuiteDefinitionConfiguration>):
required: trueUpdates a Device Advisor test suite with suite definition configuration.
- On success, responds with
UpdateSuiteDefinitionOutputwith field(s):suite_definition_id(Option<String>):Suite definition ID of the updated test suite.
suite_definition_arn(Option<String>):Amazon Resource Name (ARN) of the updated test suite.
suite_definition_name(Option<String>):Updates the suite definition name. This is a required parameter.
suite_definition_version(Option<String>):Suite definition version of the updated test suite.
created_at(Option<DateTime>):Timestamp of when the test suite was created.
last_updated_at(Option<DateTime>):Timestamp of when the test suite was updated.
- On failure, responds with
SdkError<UpdateSuiteDefinitionError>
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.