Struct aws_sdk_workmailmessageflow::Client
source · pub struct Client { /* private fields */ }Expand description
Client for Amazon WorkMail Message Flow
Client for invoking operations on Amazon WorkMail Message Flow. Each operation on Amazon WorkMail Message Flow 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_workmailmessageflow::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_workmailmessageflow::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 GetRawMessageContent operation has
a Client::get_raw_message_content, 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.get_raw_message_content()
.message_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 get_raw_message_content(&self) -> GetRawMessageContentFluentBuilder
pub fn get_raw_message_content(&self) -> GetRawMessageContentFluentBuilder
Constructs a fluent builder for the GetRawMessageContent operation.
- The fluent builder is configurable:
message_id(impl Into<String>)/set_message_id(Option<String>):
required: trueThe identifier of the email message to retrieve.
- On success, responds with
GetRawMessageContentOutputwith field(s):message_content(ByteStream):The raw content of the email message, in MIME format.
- On failure, responds with
SdkError<GetRawMessageContentError>
source§impl Client
impl Client
sourcepub fn put_raw_message_content(&self) -> PutRawMessageContentFluentBuilder
pub fn put_raw_message_content(&self) -> PutRawMessageContentFluentBuilder
Constructs a fluent builder for the PutRawMessageContent operation.
- The fluent builder is configurable:
message_id(impl Into<String>)/set_message_id(Option<String>):
required: trueThe identifier of the email message being updated.
content(RawMessageContent)/set_content(Option<RawMessageContent>):
required: trueDescribes the raw message content of the updated email message.
- On success, responds with
PutRawMessageContentOutput - On failure, responds with
SdkError<PutRawMessageContentError>
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.