Struct aws_sdk_kafka::Client

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

Client for Managed Streaming for Kafka

Client for invoking operations on Managed Streaming for Kafka. Each operation on Managed Streaming for Kafka 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_kafka::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_kafka::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 BatchAssociateScramSecret operation has a Client::batch_associate_scram_secret, 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_associate_scram_secret()
    .cluster_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 batch_associate_scram_secret( &self ) -> BatchAssociateScramSecretFluentBuilder

Constructs a fluent builder for the BatchAssociateScramSecret operation.

source§

impl Client

source

pub fn batch_disassociate_scram_secret( &self ) -> BatchDisassociateScramSecretFluentBuilder

Constructs a fluent builder for the BatchDisassociateScramSecret operation.

source§

impl Client

source

pub fn create_cluster(&self) -> CreateClusterFluentBuilder

Constructs a fluent builder for the CreateCluster operation.

source§

impl Client

source

pub fn create_cluster_v2(&self) -> CreateClusterV2FluentBuilder

Constructs a fluent builder for the CreateClusterV2 operation.

source§

impl Client

source

pub fn create_configuration(&self) -> CreateConfigurationFluentBuilder

Constructs a fluent builder for the CreateConfiguration operation.

source§

impl Client

source

pub fn delete_cluster(&self) -> DeleteClusterFluentBuilder

Constructs a fluent builder for the DeleteCluster operation.

source§

impl Client

source

pub fn delete_configuration(&self) -> DeleteConfigurationFluentBuilder

Constructs a fluent builder for the DeleteConfiguration operation.

source§

impl Client

source

pub fn describe_cluster(&self) -> DescribeClusterFluentBuilder

Constructs a fluent builder for the DescribeCluster operation.

source§

impl Client

source

pub fn describe_cluster_operation( &self ) -> DescribeClusterOperationFluentBuilder

Constructs a fluent builder for the DescribeClusterOperation operation.

source§

impl Client

source

pub fn describe_cluster_v2(&self) -> DescribeClusterV2FluentBuilder

Constructs a fluent builder for the DescribeClusterV2 operation.

source§

impl Client

source

pub fn describe_configuration(&self) -> DescribeConfigurationFluentBuilder

Constructs a fluent builder for the DescribeConfiguration operation.

source§

impl Client

source

pub fn describe_configuration_revision( &self ) -> DescribeConfigurationRevisionFluentBuilder

Constructs a fluent builder for the DescribeConfigurationRevision operation.

source§

impl Client

source

pub fn get_bootstrap_brokers(&self) -> GetBootstrapBrokersFluentBuilder

Constructs a fluent builder for the GetBootstrapBrokers operation.

source§

impl Client

source

pub fn get_compatible_kafka_versions( &self ) -> GetCompatibleKafkaVersionsFluentBuilder

Constructs a fluent builder for the GetCompatibleKafkaVersions operation.

source§

impl Client

source

pub fn list_cluster_operations(&self) -> ListClusterOperationsFluentBuilder

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

source§

impl Client

source

pub fn list_clusters(&self) -> ListClustersFluentBuilder

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

source§

impl Client

source

pub fn list_clusters_v2(&self) -> ListClustersV2FluentBuilder

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

source§

impl Client

source

pub fn list_configuration_revisions( &self ) -> ListConfigurationRevisionsFluentBuilder

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

source§

impl Client

source

pub fn list_configurations(&self) -> ListConfigurationsFluentBuilder

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

source§

impl Client

source

pub fn list_kafka_versions(&self) -> ListKafkaVersionsFluentBuilder

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

source§

impl Client

source

pub fn list_nodes(&self) -> ListNodesFluentBuilder

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

source§

impl Client

source

pub fn list_scram_secrets(&self) -> ListScramSecretsFluentBuilder

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

source§

impl Client

source

pub fn reboot_broker(&self) -> RebootBrokerFluentBuilder

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

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

      The Amazon Resource Name (ARN) that uniquely identifies the resource that’s associated with the tags.

    • tag_keys(Vec<String>) / set_tag_keys(Option<Vec<String>>):

      Tag keys must be unique for a given cluster. In addition, the following restrictions apply:

      • Each tag key must be unique. If you add a tag with a key that’s already in use, your new tag overwrites the existing key-value pair.

      • You can’t start a tag key with aws: because this prefix is reserved for use by AWS. AWS creates tags that begin with this prefix on your behalf, but you can’t edit or delete them.

      • Tag keys must be between 1 and 128 Unicode characters in length.

      • Tag keys must consist of the following characters: Unicode letters, digits, white space, and the following special characters: _ . / = + - @.

  • On success, responds with UntagResourceOutput
  • On failure, responds with SdkError<UntagResourceError>
source§

impl Client

source

pub fn update_broker_count(&self) -> UpdateBrokerCountFluentBuilder

Constructs a fluent builder for the UpdateBrokerCount operation.

source§

impl Client

source

pub fn update_broker_storage(&self) -> UpdateBrokerStorageFluentBuilder

Constructs a fluent builder for the UpdateBrokerStorage operation.

source§

impl Client

source

pub fn update_broker_type(&self) -> UpdateBrokerTypeFluentBuilder

Constructs a fluent builder for the UpdateBrokerType operation.

source§

impl Client

source

pub fn update_cluster_configuration( &self ) -> UpdateClusterConfigurationFluentBuilder

Constructs a fluent builder for the UpdateClusterConfiguration operation.

source§

impl Client

source

pub fn update_cluster_kafka_version( &self ) -> UpdateClusterKafkaVersionFluentBuilder

Constructs a fluent builder for the UpdateClusterKafkaVersion operation.

source§

impl Client

source

pub fn update_configuration(&self) -> UpdateConfigurationFluentBuilder

Constructs a fluent builder for the UpdateConfiguration operation.

source§

impl Client

source

pub fn update_connectivity(&self) -> UpdateConnectivityFluentBuilder

Constructs a fluent builder for the UpdateConnectivity operation.

source§

impl Client

source

pub fn update_monitoring(&self) -> UpdateMonitoringFluentBuilder

Constructs a fluent builder for the UpdateMonitoring operation.

source§

impl Client

source

pub fn update_security(&self) -> UpdateSecurityFluentBuilder

Constructs a fluent builder for the UpdateSecurity operation.

source§

impl Client

source

pub fn update_storage(&self) -> UpdateStorageFluentBuilder

Constructs a fluent builder for the UpdateStorage operation.

source§

impl Client

source

pub fn with_config( client: Client<DynConnector, DynMiddleware<DynConnector>>, conf: Config ) -> Self

Creates a client with the given service configuration.

source

pub fn conf(&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.
source

pub fn from_conf(conf: Config) -> Self

Creates a new client from the service Config.

Panics
  • This method will panic if the conf 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 conf is missing an HTTP connector. If you experience this panic, set the http_connector on the Config passed into this function to fix it.

Trait Implementations§

source§

impl Clone for Client

source§

fn clone(&self) -> Self

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
source§

impl From<Client<DynConnector, DynMiddleware<DynConnector>, Standard>> for Client

source§

fn from(client: Client<DynConnector, DynMiddleware<DynConnector>>) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

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 Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere 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 Twhere 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 Twhere 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