Struct aws_sdk_fis::Client
source · pub struct Client { /* private fields */ }Expand description
Client for AWS Fault Injection Simulator
Client for invoking operations on AWS Fault Injection Simulator. Each operation on AWS Fault Injection Simulator 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_fis::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_fis::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 CreateExperimentTemplate operation has
a Client::create_experiment_template, 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_experiment_template()
.client_token("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_experiment_template(
&self
) -> CreateExperimentTemplateFluentBuilder
pub fn create_experiment_template( &self ) -> CreateExperimentTemplateFluentBuilder
Constructs a fluent builder for the CreateExperimentTemplate operation.
- The fluent builder is configurable:
client_token(impl Into<String>)/set_client_token(Option<String>):Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
description(impl Into<String>)/set_description(Option<String>):A description for the experiment template.
stop_conditions(CreateExperimentTemplateStopConditionInput)/set_stop_conditions(Option<Vec<CreateExperimentTemplateStopConditionInput>>):The stop conditions.
targets(impl Into<String>, CreateExperimentTemplateTargetInput)/set_targets(Option<HashMap<String, CreateExperimentTemplateTargetInput>>):The targets for the experiment.
actions(impl Into<String>, CreateExperimentTemplateActionInput)/set_actions(Option<HashMap<String, CreateExperimentTemplateActionInput>>):The actions for the experiment.
role_arn(impl Into<String>)/set_role_arn(Option<String>):The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap<String, String>>):The tags to apply to the experiment template.
log_configuration(CreateExperimentTemplateLogConfigurationInput)/set_log_configuration(Option<CreateExperimentTemplateLogConfigurationInput>):The configuration for experiment logging.
- On success, responds with
CreateExperimentTemplateOutputwith field(s):experiment_template(Option<ExperimentTemplate>):Information about the experiment template.
- On failure, responds with
SdkError<CreateExperimentTemplateError>
source§impl Client
impl Client
sourcepub fn delete_experiment_template(
&self
) -> DeleteExperimentTemplateFluentBuilder
pub fn delete_experiment_template( &self ) -> DeleteExperimentTemplateFluentBuilder
Constructs a fluent builder for the DeleteExperimentTemplate operation.
- The fluent builder is configurable:
id(impl Into<String>)/set_id(Option<String>):The ID of the experiment template.
- On success, responds with
DeleteExperimentTemplateOutputwith field(s):experiment_template(Option<ExperimentTemplate>):Information about the experiment template.
- On failure, responds with
SdkError<DeleteExperimentTemplateError>
source§impl Client
impl Client
sourcepub fn get_action(&self) -> GetActionFluentBuilder
pub fn get_action(&self) -> GetActionFluentBuilder
Constructs a fluent builder for the GetAction operation.
- The fluent builder is configurable:
id(impl Into<String>)/set_id(Option<String>):The ID of the action.
- On success, responds with
GetActionOutputwith field(s):action(Option<Action>):Information about the action.
- On failure, responds with
SdkError<GetActionError>
source§impl Client
impl Client
sourcepub fn get_experiment(&self) -> GetExperimentFluentBuilder
pub fn get_experiment(&self) -> GetExperimentFluentBuilder
Constructs a fluent builder for the GetExperiment operation.
- The fluent builder is configurable:
id(impl Into<String>)/set_id(Option<String>):The ID of the experiment.
- On success, responds with
GetExperimentOutputwith field(s):experiment(Option<Experiment>):Information about the experiment.
- On failure, responds with
SdkError<GetExperimentError>
source§impl Client
impl Client
sourcepub fn get_experiment_template(&self) -> GetExperimentTemplateFluentBuilder
pub fn get_experiment_template(&self) -> GetExperimentTemplateFluentBuilder
Constructs a fluent builder for the GetExperimentTemplate operation.
- The fluent builder is configurable:
id(impl Into<String>)/set_id(Option<String>):The ID of the experiment template.
- On success, responds with
GetExperimentTemplateOutputwith field(s):experiment_template(Option<ExperimentTemplate>):Information about the experiment template.
- On failure, responds with
SdkError<GetExperimentTemplateError>
source§impl Client
impl Client
sourcepub fn get_target_resource_type(&self) -> GetTargetResourceTypeFluentBuilder
pub fn get_target_resource_type(&self) -> GetTargetResourceTypeFluentBuilder
Constructs a fluent builder for the GetTargetResourceType operation.
- The fluent builder is configurable:
resource_type(impl Into<String>)/set_resource_type(Option<String>):The resource type.
- On success, responds with
GetTargetResourceTypeOutputwith field(s):target_resource_type(Option<TargetResourceType>):Information about the resource type.
- On failure, responds with
SdkError<GetTargetResourceTypeError>
source§impl Client
impl Client
sourcepub fn list_actions(&self) -> ListActionsFluentBuilder
pub fn list_actions(&self) -> ListActionsFluentBuilder
Constructs a fluent builder for the ListActions operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
max_results(i32)/set_max_results(Option<i32>):The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned
nextTokenvalue.next_token(impl Into<String>)/set_next_token(Option<String>):The token for the next page of results.
- On success, responds with
ListActionsOutputwith field(s):actions(Option<Vec<ActionSummary>>):The actions.
next_token(Option<String>):The token to use to retrieve the next page of results. This value is
nullwhen there are no more results to return.
- On failure, responds with
SdkError<ListActionsError>
source§impl Client
impl Client
sourcepub fn list_experiment_templates(&self) -> ListExperimentTemplatesFluentBuilder
pub fn list_experiment_templates(&self) -> ListExperimentTemplatesFluentBuilder
Constructs a fluent builder for the ListExperimentTemplates operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
max_results(i32)/set_max_results(Option<i32>):The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned
nextTokenvalue.next_token(impl Into<String>)/set_next_token(Option<String>):The token for the next page of results.
- On success, responds with
ListExperimentTemplatesOutputwith field(s):experiment_templates(Option<Vec<ExperimentTemplateSummary>>):The experiment templates.
next_token(Option<String>):The token to use to retrieve the next page of results. This value is
nullwhen there are no more results to return.
- On failure, responds with
SdkError<ListExperimentTemplatesError>
source§impl Client
impl Client
sourcepub fn list_experiments(&self) -> ListExperimentsFluentBuilder
pub fn list_experiments(&self) -> ListExperimentsFluentBuilder
Constructs a fluent builder for the ListExperiments operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
max_results(i32)/set_max_results(Option<i32>):The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned
nextTokenvalue.next_token(impl Into<String>)/set_next_token(Option<String>):The token for the next page of results.
- On success, responds with
ListExperimentsOutputwith field(s):experiments(Option<Vec<ExperimentSummary>>):The experiments.
next_token(Option<String>):The token to use to retrieve the next page of results. This value is
nullwhen there are no more results to return.
- On failure, responds with
SdkError<ListExperimentsError>
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>):The Amazon Resource Name (ARN) of the resource.
- On success, responds with
ListTagsForResourceOutputwith field(s):tags(Option<HashMap<String, String>>):The tags for the resource.
- On failure, responds with
SdkError<ListTagsForResourceError>
source§impl Client
impl Client
sourcepub fn list_target_resource_types(&self) -> ListTargetResourceTypesFluentBuilder
pub fn list_target_resource_types(&self) -> ListTargetResourceTypesFluentBuilder
Constructs a fluent builder for the ListTargetResourceTypes operation.
This operation supports pagination; See into_paginator().
- The fluent builder is configurable:
max_results(i32)/set_max_results(Option<i32>):The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned
nextTokenvalue.next_token(impl Into<String>)/set_next_token(Option<String>):The token for the next page of results.
- On success, responds with
ListTargetResourceTypesOutputwith field(s):target_resource_types(Option<Vec<TargetResourceTypeSummary>>):The target resource types.
next_token(Option<String>):The token to use to retrieve the next page of results. This value is
nullwhen there are no more results to return.
- On failure, responds with
SdkError<ListTargetResourceTypesError>
source§impl Client
impl Client
sourcepub fn start_experiment(&self) -> StartExperimentFluentBuilder
pub fn start_experiment(&self) -> StartExperimentFluentBuilder
Constructs a fluent builder for the StartExperiment operation.
- The fluent builder is configurable:
client_token(impl Into<String>)/set_client_token(Option<String>):Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
experiment_template_id(impl Into<String>)/set_experiment_template_id(Option<String>):The ID of the experiment template.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap<String, String>>):The tags to apply to the experiment.
- On success, responds with
StartExperimentOutputwith field(s):experiment(Option<Experiment>):Information about the experiment.
- On failure, responds with
SdkError<StartExperimentError>
source§impl Client
impl Client
sourcepub fn stop_experiment(&self) -> StopExperimentFluentBuilder
pub fn stop_experiment(&self) -> StopExperimentFluentBuilder
Constructs a fluent builder for the StopExperiment operation.
- The fluent builder is configurable:
id(impl Into<String>)/set_id(Option<String>):The ID of the experiment.
- On success, responds with
StopExperimentOutputwith field(s):experiment(Option<Experiment>):Information about the experiment.
- On failure, responds with
SdkError<StopExperimentError>
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>):The Amazon Resource Name (ARN) of the resource.
tags(impl Into<String>, impl Into<String>)/set_tags(Option<HashMap<String, String>>):The tags for 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>):The Amazon Resource Name (ARN) of the resource.
tag_keys(impl Into<String>)/set_tag_keys(Option<Vec<String>>):The tag keys to remove.
- On success, responds with
UntagResourceOutput - On failure, responds with
SdkError<UntagResourceError>
source§impl Client
impl Client
sourcepub fn update_experiment_template(
&self
) -> UpdateExperimentTemplateFluentBuilder
pub fn update_experiment_template( &self ) -> UpdateExperimentTemplateFluentBuilder
Constructs a fluent builder for the UpdateExperimentTemplate operation.
- The fluent builder is configurable:
id(impl Into<String>)/set_id(Option<String>):The ID of the experiment template.
description(impl Into<String>)/set_description(Option<String>):A description for the template.
stop_conditions(UpdateExperimentTemplateStopConditionInput)/set_stop_conditions(Option<Vec<UpdateExperimentTemplateStopConditionInput>>):The stop conditions for the experiment.
targets(impl Into<String>, UpdateExperimentTemplateTargetInput)/set_targets(Option<HashMap<String, UpdateExperimentTemplateTargetInput>>):The targets for the experiment.
actions(impl Into<String>, UpdateExperimentTemplateActionInputItem)/set_actions(Option<HashMap<String, UpdateExperimentTemplateActionInputItem>>):The actions for the experiment.
role_arn(impl Into<String>)/set_role_arn(Option<String>):The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.
log_configuration(UpdateExperimentTemplateLogConfigurationInput)/set_log_configuration(Option<UpdateExperimentTemplateLogConfigurationInput>):The configuration for experiment logging.
- On success, responds with
UpdateExperimentTemplateOutputwith field(s):experiment_template(Option<ExperimentTemplate>):Information about the experiment template.
- On failure, responds with
SdkError<UpdateExperimentTemplateError>
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.