Struct aws_sdk_appmesh::Client

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

Client for AWS App Mesh

Client for invoking operations on AWS App Mesh. Each operation on AWS App Mesh 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_appmesh::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_appmesh::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 ListTagsForResource operation has a Client::list_tags_for_resource, 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.list_tags_for_resource()
    .resource_arn("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 create_gateway_route(&self) -> CreateGatewayRouteFluentBuilder

Constructs a fluent builder for the CreateGatewayRoute operation.

source§

impl Client

source

pub fn create_mesh(&self) -> CreateMeshFluentBuilder

Constructs a fluent builder for the CreateMesh operation.

source§

impl Client

source

pub fn create_route(&self) -> CreateRouteFluentBuilder

Constructs a fluent builder for the CreateRoute operation.

source§

impl Client

source

pub fn create_virtual_gateway(&self) -> CreateVirtualGatewayFluentBuilder

Constructs a fluent builder for the CreateVirtualGateway operation.

source§

impl Client

source

pub fn create_virtual_node(&self) -> CreateVirtualNodeFluentBuilder

Constructs a fluent builder for the CreateVirtualNode operation.

source§

impl Client

source

pub fn create_virtual_router(&self) -> CreateVirtualRouterFluentBuilder

Constructs a fluent builder for the CreateVirtualRouter operation.

source§

impl Client

source

pub fn create_virtual_service(&self) -> CreateVirtualServiceFluentBuilder

Constructs a fluent builder for the CreateVirtualService operation.

source§

impl Client

source

pub fn delete_gateway_route(&self) -> DeleteGatewayRouteFluentBuilder

Constructs a fluent builder for the DeleteGatewayRoute operation.

source§

impl Client

source

pub fn delete_mesh(&self) -> DeleteMeshFluentBuilder

Constructs a fluent builder for the DeleteMesh operation.

source§

impl Client

source

pub fn delete_route(&self) -> DeleteRouteFluentBuilder

Constructs a fluent builder for the DeleteRoute operation.

source§

impl Client

source

pub fn delete_virtual_gateway(&self) -> DeleteVirtualGatewayFluentBuilder

Constructs a fluent builder for the DeleteVirtualGateway operation.

source§

impl Client

source

pub fn delete_virtual_node(&self) -> DeleteVirtualNodeFluentBuilder

Constructs a fluent builder for the DeleteVirtualNode operation.

source§

impl Client

source

pub fn delete_virtual_router(&self) -> DeleteVirtualRouterFluentBuilder

Constructs a fluent builder for the DeleteVirtualRouter operation.

source§

impl Client

source

pub fn delete_virtual_service(&self) -> DeleteVirtualServiceFluentBuilder

Constructs a fluent builder for the DeleteVirtualService operation.

source§

impl Client

source

pub fn describe_gateway_route(&self) -> DescribeGatewayRouteFluentBuilder

Constructs a fluent builder for the DescribeGatewayRoute operation.

source§

impl Client

source

pub fn describe_mesh(&self) -> DescribeMeshFluentBuilder

Constructs a fluent builder for the DescribeMesh operation.

source§

impl Client

source

pub fn describe_route(&self) -> DescribeRouteFluentBuilder

Constructs a fluent builder for the DescribeRoute operation.

source§

impl Client

source

pub fn describe_virtual_gateway(&self) -> DescribeVirtualGatewayFluentBuilder

Constructs a fluent builder for the DescribeVirtualGateway operation.

source§

impl Client

source

pub fn describe_virtual_node(&self) -> DescribeVirtualNodeFluentBuilder

Constructs a fluent builder for the DescribeVirtualNode operation.

source§

impl Client

source

pub fn describe_virtual_router(&self) -> DescribeVirtualRouterFluentBuilder

Constructs a fluent builder for the DescribeVirtualRouter operation.

source§

impl Client

source

pub fn describe_virtual_service(&self) -> DescribeVirtualServiceFluentBuilder

Constructs a fluent builder for the DescribeVirtualService operation.

source§

impl Client

source

pub fn list_gateway_routes(&self) -> ListGatewayRoutesFluentBuilder

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

source§

impl Client

source

pub fn list_meshes(&self) -> ListMeshesFluentBuilder

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

  • The fluent builder is configurable:
    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The nextToken value returned from a previous paginated ListMeshes request where limit was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

      This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes.


    • limit(i32) / set_limit(Option<i32>):
      required: false

      The maximum number of results returned by ListMeshes in paginated output. When you use this parameter, ListMeshes returns only limit results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListMeshes request with the returned nextToken value. This value can be between 1 and 100. If you don’t use this parameter, ListMeshes returns up to 100 results and a nextToken value if applicable.


  • On success, responds with ListMeshesOutput with field(s):
    • meshes(Vec::<MeshRef>):

      The list of existing service meshes.

    • next_token(Option<String>):

      The nextToken value to include in a future ListMeshes request. When the results of a ListMeshes request exceed limit, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

  • On failure, responds with SdkError<ListMeshesError>
source§

impl Client

source

pub fn list_routes(&self) -> ListRoutesFluentBuilder

Constructs a fluent builder for the ListRoutes 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().

  • The fluent builder is configurable:
    • resource_arn(impl Into<String>) / set_resource_arn(Option<String>):
      required: true

      The Amazon Resource Name (ARN) that identifies the resource to list the tags for.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The nextToken value returned from a previous paginated ListTagsForResource request where limit was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.


    • limit(i32) / set_limit(Option<i32>):
      required: false

      The maximum number of tag results returned by ListTagsForResource in paginated output. When this parameter is used, ListTagsForResource returns only limit results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListTagsForResource request with the returned nextToken value. This value can be between 1 and 100. If you don’t use this parameter, ListTagsForResource returns up to 100 results and a nextToken value if applicable.


  • On success, responds with ListTagsForResourceOutput with field(s):
    • tags(Vec::<TagRef>):

      The tags for the resource.

    • next_token(Option<String>):

      The nextToken value to include in a future ListTagsForResource request. When the results of a ListTagsForResource request exceed limit, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

  • On failure, responds with SdkError<ListTagsForResourceError>
source§

impl Client

source

pub fn list_virtual_gateways(&self) -> ListVirtualGatewaysFluentBuilder

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

  • The fluent builder is configurable:
    • mesh_name(impl Into<String>) / set_mesh_name(Option<String>):
      required: true

      The name of the service mesh to list virtual gateways in.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The nextToken value returned from a previous paginated ListVirtualGateways request where limit was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.


    • limit(i32) / set_limit(Option<i32>):
      required: false

      The maximum number of results returned by ListVirtualGateways in paginated output. When you use this parameter, ListVirtualGateways returns only limit results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListVirtualGateways request with the returned nextToken value. This value can be between 1 and 100. If you don’t use this parameter, ListVirtualGateways returns up to 100 results and a nextToken value if applicable.


    • mesh_owner(impl Into<String>) / set_mesh_owner(Option<String>):
      required: false

      The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it’s the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with shared meshes.


  • On success, responds with ListVirtualGatewaysOutput with field(s):
    • virtual_gateways(Vec::<VirtualGatewayRef>):

      The list of existing virtual gateways for the specified service mesh.

    • next_token(Option<String>):

      The nextToken value to include in a future ListVirtualGateways request. When the results of a ListVirtualGateways request exceed limit, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

  • On failure, responds with SdkError<ListVirtualGatewaysError>
source§

impl Client

source

pub fn list_virtual_nodes(&self) -> ListVirtualNodesFluentBuilder

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

  • The fluent builder is configurable:
    • mesh_name(impl Into<String>) / set_mesh_name(Option<String>):
      required: true

      The name of the service mesh to list virtual nodes in.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The nextToken value returned from a previous paginated ListVirtualNodes request where limit was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.


    • limit(i32) / set_limit(Option<i32>):
      required: false

      The maximum number of results returned by ListVirtualNodes in paginated output. When you use this parameter, ListVirtualNodes returns only limit results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListVirtualNodes request with the returned nextToken value. This value can be between 1 and 100. If you don’t use this parameter, ListVirtualNodes returns up to 100 results and a nextToken value if applicable.


    • mesh_owner(impl Into<String>) / set_mesh_owner(Option<String>):
      required: false

      The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it’s the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with shared meshes.


  • On success, responds with ListVirtualNodesOutput with field(s):
    • virtual_nodes(Vec::<VirtualNodeRef>):

      The list of existing virtual nodes for the specified service mesh.

    • next_token(Option<String>):

      The nextToken value to include in a future ListVirtualNodes request. When the results of a ListVirtualNodes request exceed limit, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

  • On failure, responds with SdkError<ListVirtualNodesError>
source§

impl Client

source

pub fn list_virtual_routers(&self) -> ListVirtualRoutersFluentBuilder

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

  • The fluent builder is configurable:
    • mesh_name(impl Into<String>) / set_mesh_name(Option<String>):
      required: true

      The name of the service mesh to list virtual routers in.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The nextToken value returned from a previous paginated ListVirtualRouters request where limit was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.


    • limit(i32) / set_limit(Option<i32>):
      required: false

      The maximum number of results returned by ListVirtualRouters in paginated output. When you use this parameter, ListVirtualRouters returns only limit results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListVirtualRouters request with the returned nextToken value. This value can be between 1 and 100. If you don’t use this parameter, ListVirtualRouters returns up to 100 results and a nextToken value if applicable.


    • mesh_owner(impl Into<String>) / set_mesh_owner(Option<String>):
      required: false

      The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it’s the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with shared meshes.


  • On success, responds with ListVirtualRoutersOutput with field(s):
    • virtual_routers(Vec::<VirtualRouterRef>):

      The list of existing virtual routers for the specified service mesh.

    • next_token(Option<String>):

      The nextToken value to include in a future ListVirtualRouters request. When the results of a ListVirtualRouters request exceed limit, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

  • On failure, responds with SdkError<ListVirtualRoutersError>
source§

impl Client

source

pub fn list_virtual_services(&self) -> ListVirtualServicesFluentBuilder

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

  • The fluent builder is configurable:
    • mesh_name(impl Into<String>) / set_mesh_name(Option<String>):
      required: true

      The name of the service mesh to list virtual services in.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The nextToken value returned from a previous paginated ListVirtualServices request where limit was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.


    • limit(i32) / set_limit(Option<i32>):
      required: false

      The maximum number of results returned by ListVirtualServices in paginated output. When you use this parameter, ListVirtualServices returns only limit results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListVirtualServices request with the returned nextToken value. This value can be between 1 and 100. If you don’t use this parameter, ListVirtualServices returns up to 100 results and a nextToken value if applicable.


    • mesh_owner(impl Into<String>) / set_mesh_owner(Option<String>):
      required: false

      The Amazon Web Services IAM account ID of the service mesh owner. If the account ID is not your own, then it’s the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with shared meshes.


  • On success, responds with ListVirtualServicesOutput with field(s):
    • virtual_services(Vec::<VirtualServiceRef>):

      The list of existing virtual services for the specified service mesh.

    • next_token(Option<String>):

      The nextToken value to include in a future ListVirtualServices request. When the results of a ListVirtualServices request exceed limit, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

  • On failure, responds with SdkError<ListVirtualServicesError>
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_gateway_route(&self) -> UpdateGatewayRouteFluentBuilder

Constructs a fluent builder for the UpdateGatewayRoute operation.

source§

impl Client

source

pub fn update_mesh(&self) -> UpdateMeshFluentBuilder

Constructs a fluent builder for the UpdateMesh operation.

source§

impl Client

source

pub fn update_route(&self) -> UpdateRouteFluentBuilder

Constructs a fluent builder for the UpdateRoute operation.

source§

impl Client

source

pub fn update_virtual_gateway(&self) -> UpdateVirtualGatewayFluentBuilder

Constructs a fluent builder for the UpdateVirtualGateway operation.

source§

impl Client

source

pub fn update_virtual_node(&self) -> UpdateVirtualNodeFluentBuilder

Constructs a fluent builder for the UpdateVirtualNode operation.

source§

impl Client

source

pub fn update_virtual_router(&self) -> UpdateVirtualRouterFluentBuilder

Constructs a fluent builder for the UpdateVirtualRouter operation.

source§

impl Client

source

pub fn update_virtual_service(&self) -> UpdateVirtualServiceFluentBuilder

Constructs a fluent builder for the UpdateVirtualService 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