pub struct Client { /* private fields */ }
Expand description

Client for AWS DataSync

Client for invoking operations on AWS DataSync. Each operation on AWS DataSync 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_datasync::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 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_datasync::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 AddStorageSystem operation has a Client::add_storage_system, 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.add_storage_system()
    .system_type("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

source

pub fn add_storage_system(&self) -> AddStorageSystemFluentBuilder

Constructs a fluent builder for the AddStorageSystem operation.

source§

impl Client

source

pub fn cancel_task_execution(&self) -> CancelTaskExecutionFluentBuilder

Constructs a fluent builder for the CancelTaskExecution operation.

source§

impl Client

source

pub fn create_agent(&self) -> CreateAgentFluentBuilder

Constructs a fluent builder for the CreateAgent operation.

source§

impl Client

source

pub fn create_location_azure_blob(&self) -> CreateLocationAzureBlobFluentBuilder

Constructs a fluent builder for the CreateLocationAzureBlob operation.

source§

impl Client

source

pub fn create_location_efs(&self) -> CreateLocationEfsFluentBuilder

Constructs a fluent builder for the CreateLocationEfs operation.

source§

impl Client

source

pub fn create_location_fsx_lustre(&self) -> CreateLocationFsxLustreFluentBuilder

Constructs a fluent builder for the CreateLocationFsxLustre operation.

source§

impl Client

source

pub fn create_location_fsx_ontap(&self) -> CreateLocationFsxOntapFluentBuilder

Constructs a fluent builder for the CreateLocationFsxOntap operation.

source§

impl Client

source

pub fn create_location_fsx_open_zfs( &self ) -> CreateLocationFsxOpenZfsFluentBuilder

Constructs a fluent builder for the CreateLocationFsxOpenZfs operation.

source§

impl Client

source

pub fn create_location_fsx_windows( &self ) -> CreateLocationFsxWindowsFluentBuilder

Constructs a fluent builder for the CreateLocationFsxWindows operation.

source§

impl Client

source

pub fn create_location_hdfs(&self) -> CreateLocationHdfsFluentBuilder

Constructs a fluent builder for the CreateLocationHdfs operation.

source§

impl Client

source

pub fn create_location_nfs(&self) -> CreateLocationNfsFluentBuilder

Constructs a fluent builder for the CreateLocationNfs operation.

source§

impl Client

source

pub fn create_location_object_storage( &self ) -> CreateLocationObjectStorageFluentBuilder

Constructs a fluent builder for the CreateLocationObjectStorage operation.

source§

impl Client

source

pub fn create_location_s3(&self) -> CreateLocationS3FluentBuilder

Constructs a fluent builder for the CreateLocationS3 operation.

source§

impl Client

source

pub fn create_location_smb(&self) -> CreateLocationSmbFluentBuilder

Constructs a fluent builder for the CreateLocationSmb operation.

source§

impl Client

source

pub fn create_task(&self) -> CreateTaskFluentBuilder

Constructs a fluent builder for the CreateTask operation.

source§

impl Client

source

pub fn delete_agent(&self) -> DeleteAgentFluentBuilder

Constructs a fluent builder for the DeleteAgent operation.

source§

impl Client

source

pub fn delete_location(&self) -> DeleteLocationFluentBuilder

Constructs a fluent builder for the DeleteLocation operation.

source§

impl Client

source

pub fn delete_task(&self) -> DeleteTaskFluentBuilder

Constructs a fluent builder for the DeleteTask operation.

source§

impl Client

source

pub fn describe_agent(&self) -> DescribeAgentFluentBuilder

Constructs a fluent builder for the DescribeAgent operation.

source§

impl Client

source

pub fn describe_discovery_job(&self) -> DescribeDiscoveryJobFluentBuilder

Constructs a fluent builder for the DescribeDiscoveryJob operation.

source§

impl Client

source

pub fn describe_location_azure_blob( &self ) -> DescribeLocationAzureBlobFluentBuilder

Constructs a fluent builder for the DescribeLocationAzureBlob operation.

source§

impl Client

source

pub fn describe_location_efs(&self) -> DescribeLocationEfsFluentBuilder

Constructs a fluent builder for the DescribeLocationEfs operation.

source§

impl Client

source

pub fn describe_location_fsx_lustre( &self ) -> DescribeLocationFsxLustreFluentBuilder

Constructs a fluent builder for the DescribeLocationFsxLustre operation.

source§

impl Client

source

pub fn describe_location_fsx_ontap( &self ) -> DescribeLocationFsxOntapFluentBuilder

Constructs a fluent builder for the DescribeLocationFsxOntap operation.

source§

impl Client

source

pub fn describe_location_fsx_open_zfs( &self ) -> DescribeLocationFsxOpenZfsFluentBuilder

Constructs a fluent builder for the DescribeLocationFsxOpenZfs operation.

source§

impl Client

source

pub fn describe_location_fsx_windows( &self ) -> DescribeLocationFsxWindowsFluentBuilder

Constructs a fluent builder for the DescribeLocationFsxWindows operation.

source§

impl Client

source

pub fn describe_location_hdfs(&self) -> DescribeLocationHdfsFluentBuilder

Constructs a fluent builder for the DescribeLocationHdfs operation.

source§

impl Client

source

pub fn describe_location_nfs(&self) -> DescribeLocationNfsFluentBuilder

Constructs a fluent builder for the DescribeLocationNfs operation.

source§

impl Client

source

pub fn describe_location_object_storage( &self ) -> DescribeLocationObjectStorageFluentBuilder

Constructs a fluent builder for the DescribeLocationObjectStorage operation.

source§

impl Client

source

pub fn describe_location_s3(&self) -> DescribeLocationS3FluentBuilder

Constructs a fluent builder for the DescribeLocationS3 operation.

source§

impl Client

source

pub fn describe_location_smb(&self) -> DescribeLocationSmbFluentBuilder

Constructs a fluent builder for the DescribeLocationSmb operation.

source§

impl Client

source

pub fn describe_storage_system(&self) -> DescribeStorageSystemFluentBuilder

Constructs a fluent builder for the DescribeStorageSystem operation.

source§

impl Client

source

pub fn describe_storage_system_resource_metrics( &self ) -> DescribeStorageSystemResourceMetricsFluentBuilder

Constructs a fluent builder for the DescribeStorageSystemResourceMetrics operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn describe_storage_system_resources( &self ) -> DescribeStorageSystemResourcesFluentBuilder

Constructs a fluent builder for the DescribeStorageSystemResources operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn describe_task(&self) -> DescribeTaskFluentBuilder

Constructs a fluent builder for the DescribeTask operation.

source§

impl Client

source

pub fn describe_task_execution(&self) -> DescribeTaskExecutionFluentBuilder

Constructs a fluent builder for the DescribeTaskExecution operation.

source§

impl Client

source

pub fn generate_recommendations(&self) -> GenerateRecommendationsFluentBuilder

Constructs a fluent builder for the GenerateRecommendations operation.

source§

impl Client

source

pub fn list_agents(&self) -> ListAgentsFluentBuilder

Constructs a fluent builder for the ListAgents operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn list_discovery_jobs(&self) -> ListDiscoveryJobsFluentBuilder

Constructs a fluent builder for the ListDiscoveryJobs operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn list_locations(&self) -> ListLocationsFluentBuilder

Constructs a fluent builder for the ListLocations operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn list_storage_systems(&self) -> ListStorageSystemsFluentBuilder

Constructs a fluent builder for the ListStorageSystems operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn list_tags_for_resource(&self) -> ListTagsForResourceFluentBuilder

Constructs a fluent builder for the ListTagsForResource operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn list_task_executions(&self) -> ListTaskExecutionsFluentBuilder

Constructs a fluent builder for the ListTaskExecutions operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn list_tasks(&self) -> ListTasksFluentBuilder

Constructs a fluent builder for the ListTasks operation. This operation supports pagination; See into_paginator().

source§

impl Client

source

pub fn remove_storage_system(&self) -> RemoveStorageSystemFluentBuilder

Constructs a fluent builder for the RemoveStorageSystem operation.

source§

impl Client

source

pub fn start_discovery_job(&self) -> StartDiscoveryJobFluentBuilder

Constructs a fluent builder for the StartDiscoveryJob operation.

source§

impl Client

source

pub fn start_task_execution(&self) -> StartTaskExecutionFluentBuilder

Constructs a fluent builder for the StartTaskExecution operation.

source§

impl Client

source

pub fn stop_discovery_job(&self) -> StopDiscoveryJobFluentBuilder

Constructs a fluent builder for the StopDiscoveryJob operation.

source§

impl Client

source

pub fn tag_resource(&self) -> TagResourceFluentBuilder

Constructs a fluent builder for the TagResource operation.

source§

impl Client

source

pub fn untag_resource(&self) -> UntagResourceFluentBuilder

Constructs a fluent builder for the UntagResource operation.

source§

impl Client

source

pub fn update_agent(&self) -> UpdateAgentFluentBuilder

Constructs a fluent builder for the UpdateAgent operation.

source§

impl Client

source

pub fn update_discovery_job(&self) -> UpdateDiscoveryJobFluentBuilder

Constructs a fluent builder for the UpdateDiscoveryJob operation.

source§

impl Client

source

pub fn update_location_azure_blob(&self) -> UpdateLocationAzureBlobFluentBuilder

Constructs a fluent builder for the UpdateLocationAzureBlob operation.

source§

impl Client

source

pub fn update_location_hdfs(&self) -> UpdateLocationHdfsFluentBuilder

Constructs a fluent builder for the UpdateLocationHdfs operation.

source§

impl Client

source

pub fn update_location_nfs(&self) -> UpdateLocationNfsFluentBuilder

Constructs a fluent builder for the UpdateLocationNfs operation.

source§

impl Client

source

pub fn update_location_object_storage( &self ) -> UpdateLocationObjectStorageFluentBuilder

Constructs a fluent builder for the UpdateLocationObjectStorage operation.

source§

impl Client

source

pub fn update_location_smb(&self) -> UpdateLocationSmbFluentBuilder

Constructs a fluent builder for the UpdateLocationSmb operation.

source§

impl Client

source

pub fn update_storage_system(&self) -> UpdateStorageSystemFluentBuilder

Constructs a fluent builder for the UpdateStorageSystem operation.

source§

impl Client

source

pub fn update_task(&self) -> UpdateTaskFluentBuilder

Constructs a fluent builder for the UpdateTask operation.

source§

impl Client

source

pub fn update_task_execution(&self) -> UpdateTaskExecutionFluentBuilder

Constructs a fluent builder for the UpdateTaskExecution operation.

source§

impl Client

source

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 and time_source configured.
  • No behavior_version is provided.

The panic message for each of these will have instructions on how to resolve them.

source

pub fn config(&self) -> &Config

Returns the client’s configuration.

source§

impl Client

source

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 the sleep_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 the http_connector on the Config passed into this function to fix it.
  • This method will panic if no BehaviorVersion is provided. If you experience this panic, set behavior_version on the Config or enable the behavior-version-latest Cargo feature.

Trait Implementations§

source§

impl Clone for Client

source§

fn clone(&self) -> Client

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Client

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more