Struct aws_sdk_ecrpublic::Client

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

Client for Amazon Elastic Container Registry Public

Client for invoking operations on Amazon Elastic Container Registry Public. Each operation on Amazon Elastic Container Registry Public 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_ecrpublic::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_ecrpublic::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 BatchCheckLayerAvailability operation has a Client::batch_check_layer_availability, 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.batch_check_layer_availability()
    .registry_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

source

pub fn batch_check_layer_availability( &self ) -> BatchCheckLayerAvailabilityFluentBuilder

Constructs a fluent builder for the BatchCheckLayerAvailability operation.

source§

impl Client

source

pub fn batch_delete_image(&self) -> BatchDeleteImageFluentBuilder

Constructs a fluent builder for the BatchDeleteImage operation.

source§

impl Client

source

pub fn complete_layer_upload(&self) -> CompleteLayerUploadFluentBuilder

Constructs a fluent builder for the CompleteLayerUpload operation.

source§

impl Client

source

pub fn create_repository(&self) -> CreateRepositoryFluentBuilder

Constructs a fluent builder for the CreateRepository operation.

source§

impl Client

source

pub fn delete_repository(&self) -> DeleteRepositoryFluentBuilder

Constructs a fluent builder for the DeleteRepository operation.

source§

impl Client

source

pub fn delete_repository_policy(&self) -> DeleteRepositoryPolicyFluentBuilder

Constructs a fluent builder for the DeleteRepositoryPolicy operation.

source§

impl Client

source

pub fn describe_image_tags(&self) -> DescribeImageTagsFluentBuilder

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

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

      The Amazon Web Services account ID that’s associated with the public registry that contains the repository where images are described. If you do not specify a registry, the default public registry is assumed.


    • repository_name(impl Into<String>) / set_repository_name(Option<String>):
      required: true

      The name of the repository that contains the image tag details to describe.


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

      The nextToken value that’s returned from a previous paginated DescribeImageTags request where maxResults 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. If there are no more results to return, this value is null. If you specify images with imageIds, you can’t use this option.


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The maximum number of repository results that’s returned by DescribeImageTags in paginated output. When this parameter is used, DescribeImageTags only returns maxResults results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another DescribeImageTags request with the returned nextToken value. This value can be between 1 and 1000. If this parameter isn’t used, then DescribeImageTags returns up to 100 results and a nextToken value, if applicable. If you specify images with imageIds, you can’t use this option.


  • On success, responds with DescribeImageTagsOutput with field(s):
    • image_tag_details(Option<Vec::<ImageTagDetail>>):

      The image tag details for the images in the requested repository.

    • next_token(Option<String>):

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

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

impl Client

source

pub fn describe_images(&self) -> DescribeImagesFluentBuilder

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

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

      The Amazon Web Services account ID that’s associated with the public registry that contains the repository where images are described. If you do not specify a registry, the default public registry is assumed.


    • repository_name(impl Into<String>) / set_repository_name(Option<String>):
      required: true

      The repository that contains the images to describe.


    • image_ids(ImageIdentifier) / set_image_ids(Option<Vec::<ImageIdentifier>>):
      required: false

      The list of image IDs for the requested repository.


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

      The nextToken value that’s returned from a previous paginated DescribeImages request where maxResults 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. If there are no more results to return, this value is null. If you specify images with imageIds, you can’t use this option.


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The maximum number of repository results that’s returned by DescribeImages in paginated output. When this parameter is used, DescribeImages only returns maxResults results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another DescribeImages request with the returned nextToken value. This value can be between 1 and 1000. If this parameter isn’t used, then DescribeImages returns up to 100 results and a nextToken value, if applicable. If you specify images with imageIds, you can’t use this option.


  • On success, responds with DescribeImagesOutput with field(s):
    • image_details(Option<Vec::<ImageDetail>>):

      A list of ImageDetail objects that contain data about the image.

    • next_token(Option<String>):

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

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

impl Client

source

pub fn describe_registries(&self) -> DescribeRegistriesFluentBuilder

Constructs a fluent builder for the DescribeRegistries 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 that’s returned from a previous paginated DescribeRegistries request where maxResults 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. If there are no more results to return, this value is null.

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


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The maximum number of repository results that’s returned by DescribeRegistries in paginated output. When this parameter is used, DescribeRegistries only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeRegistries request with the returned nextToken value. This value can be between 1 and 1000. If this parameter isn’t used, then DescribeRegistries returns up to 100 results and a nextToken value, if applicable.


  • On success, responds with DescribeRegistriesOutput with field(s):
    • registries(Vec::<Registry>):

      An object that contains the details for a public registry.

    • next_token(Option<String>):

      The nextToken value to include in a future DescribeRepositories request. If the results of a DescribeRepositories request exceed maxResults, you can use this value to retrieve the next page of results. If there are no more results, this value is null.

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

impl Client

source

pub fn describe_repositories(&self) -> DescribeRepositoriesFluentBuilder

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

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

      The Amazon Web Services account ID that’s associated with the registry that contains the repositories to be described. If you do not specify a registry, the default public registry is assumed.


    • repository_names(impl Into<String>) / set_repository_names(Option<Vec::<String>>):
      required: false

      A list of repositories to describe. If this parameter is omitted, then all repositories in a registry are described.


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

      The nextToken value that’s returned from a previous paginated DescribeRepositories request where maxResults 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. If there are no more results to return, this value is null. If you specify repositories with repositoryNames, you can’t use this option.

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


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The maximum number of repository results that’s returned by DescribeRepositories in paginated output. When this parameter is used, DescribeRepositories only returns maxResults results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another DescribeRepositories request with the returned nextToken value. This value can be between 1 and 1000. If this parameter isn’t used, then DescribeRepositories returns up to 100 results and a nextToken value, if applicable. If you specify repositories with repositoryNames, you can’t use this option.


  • On success, responds with DescribeRepositoriesOutput with field(s):
    • repositories(Option<Vec::<Repository>>):

      A list of repository objects corresponding to valid repositories.

    • next_token(Option<String>):

      The nextToken value to include in a future DescribeRepositories request. When the results of a DescribeRepositories request exceed maxResults, this value can be used to retrieve the next page of results. If there are no more results to return, this value is null.

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

impl Client

source

pub fn get_authorization_token(&self) -> GetAuthorizationTokenFluentBuilder

Constructs a fluent builder for the GetAuthorizationToken operation.

source§

impl Client

source

pub fn get_registry_catalog_data(&self) -> GetRegistryCatalogDataFluentBuilder

Constructs a fluent builder for the GetRegistryCatalogData operation.

source§

impl Client

source

pub fn get_repository_catalog_data( &self ) -> GetRepositoryCatalogDataFluentBuilder

Constructs a fluent builder for the GetRepositoryCatalogData operation.

source§

impl Client

source

pub fn get_repository_policy(&self) -> GetRepositoryPolicyFluentBuilder

Constructs a fluent builder for the GetRepositoryPolicy operation.

source§

impl Client

source

pub fn initiate_layer_upload(&self) -> InitiateLayerUploadFluentBuilder

Constructs a fluent builder for the InitiateLayerUpload operation.

source§

impl Client

source

pub fn list_tags_for_resource(&self) -> ListTagsForResourceFluentBuilder

Constructs a fluent builder for the ListTagsForResource operation.

source§

impl Client

source

pub fn put_image(&self) -> PutImageFluentBuilder

Constructs a fluent builder for the PutImage operation.

source§

impl Client

source

pub fn put_registry_catalog_data(&self) -> PutRegistryCatalogDataFluentBuilder

Constructs a fluent builder for the PutRegistryCatalogData operation.

source§

impl Client

source

pub fn put_repository_catalog_data( &self ) -> PutRepositoryCatalogDataFluentBuilder

Constructs a fluent builder for the PutRepositoryCatalogData operation.

source§

impl Client

source

pub fn set_repository_policy(&self) -> SetRepositoryPolicyFluentBuilder

Constructs a fluent builder for the SetRepositoryPolicy 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 upload_layer_part(&self) -> UploadLayerPartFluentBuilder

Constructs a fluent builder for the UploadLayerPart 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<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
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