Struct aws_sdk_greengrass::client::Client

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

Client for AWS Greengrass

Client for invoking operations on AWS Greengrass. Each operation on AWS Greengrass 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_greengrass::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_greengrass::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 AssociateRoleToGroup operation has a Client::associate_role_to_group, 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.associate_role_to_group()
    .group_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 associate_role_to_group(&self) -> AssociateRoleToGroupFluentBuilder

Constructs a fluent builder for the AssociateRoleToGroup operation.

source§

impl Client

source

pub fn associate_service_role_to_account( &self, ) -> AssociateServiceRoleToAccountFluentBuilder

Constructs a fluent builder for the AssociateServiceRoleToAccount operation.

source§

impl Client

source

pub fn create_connector_definition( &self, ) -> CreateConnectorDefinitionFluentBuilder

Constructs a fluent builder for the CreateConnectorDefinition operation.

source§

impl Client

source

pub fn create_connector_definition_version( &self, ) -> CreateConnectorDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateConnectorDefinitionVersion operation.

source§

impl Client

source

pub fn create_core_definition(&self) -> CreateCoreDefinitionFluentBuilder

Constructs a fluent builder for the CreateCoreDefinition operation.

source§

impl Client

source

pub fn create_core_definition_version( &self, ) -> CreateCoreDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateCoreDefinitionVersion operation.

source§

impl Client

source

pub fn create_deployment(&self) -> CreateDeploymentFluentBuilder

Constructs a fluent builder for the CreateDeployment operation.

source§

impl Client

source

pub fn create_device_definition(&self) -> CreateDeviceDefinitionFluentBuilder

Constructs a fluent builder for the CreateDeviceDefinition operation.

source§

impl Client

source

pub fn create_device_definition_version( &self, ) -> CreateDeviceDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateDeviceDefinitionVersion operation.

source§

impl Client

source

pub fn create_function_definition( &self, ) -> CreateFunctionDefinitionFluentBuilder

Constructs a fluent builder for the CreateFunctionDefinition operation.

source§

impl Client

source

pub fn create_function_definition_version( &self, ) -> CreateFunctionDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateFunctionDefinitionVersion operation.

source§

impl Client

source

pub fn create_group(&self) -> CreateGroupFluentBuilder

Constructs a fluent builder for the CreateGroup operation.

source§

impl Client

source

pub fn create_group_certificate_authority( &self, ) -> CreateGroupCertificateAuthorityFluentBuilder

Constructs a fluent builder for the CreateGroupCertificateAuthority operation.

source§

impl Client

source

pub fn create_group_version(&self) -> CreateGroupVersionFluentBuilder

Constructs a fluent builder for the CreateGroupVersion operation.

source§

impl Client

source

pub fn create_logger_definition(&self) -> CreateLoggerDefinitionFluentBuilder

Constructs a fluent builder for the CreateLoggerDefinition operation.

source§

impl Client

source

pub fn create_logger_definition_version( &self, ) -> CreateLoggerDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateLoggerDefinitionVersion operation.

source§

impl Client

source

pub fn create_resource_definition( &self, ) -> CreateResourceDefinitionFluentBuilder

Constructs a fluent builder for the CreateResourceDefinition operation.

source§

impl Client

source

pub fn create_resource_definition_version( &self, ) -> CreateResourceDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateResourceDefinitionVersion operation.

source§

impl Client

source

pub fn create_software_update_job(&self) -> CreateSoftwareUpdateJobFluentBuilder

Constructs a fluent builder for the CreateSoftwareUpdateJob operation.

source§

impl Client

source

pub fn create_subscription_definition( &self, ) -> CreateSubscriptionDefinitionFluentBuilder

Constructs a fluent builder for the CreateSubscriptionDefinition operation.

source§

impl Client

source

pub fn create_subscription_definition_version( &self, ) -> CreateSubscriptionDefinitionVersionFluentBuilder

Constructs a fluent builder for the CreateSubscriptionDefinitionVersion operation.

source§

impl Client

source

pub fn delete_connector_definition( &self, ) -> DeleteConnectorDefinitionFluentBuilder

Constructs a fluent builder for the DeleteConnectorDefinition operation.

source§

impl Client

source

pub fn delete_core_definition(&self) -> DeleteCoreDefinitionFluentBuilder

Constructs a fluent builder for the DeleteCoreDefinition operation.

source§

impl Client

source

pub fn delete_device_definition(&self) -> DeleteDeviceDefinitionFluentBuilder

Constructs a fluent builder for the DeleteDeviceDefinition operation.

source§

impl Client

source

pub fn delete_function_definition( &self, ) -> DeleteFunctionDefinitionFluentBuilder

Constructs a fluent builder for the DeleteFunctionDefinition operation.

source§

impl Client

source

pub fn delete_group(&self) -> DeleteGroupFluentBuilder

Constructs a fluent builder for the DeleteGroup operation.

source§

impl Client

source

pub fn delete_logger_definition(&self) -> DeleteLoggerDefinitionFluentBuilder

Constructs a fluent builder for the DeleteLoggerDefinition operation.

source§

impl Client

source

pub fn delete_resource_definition( &self, ) -> DeleteResourceDefinitionFluentBuilder

Constructs a fluent builder for the DeleteResourceDefinition operation.

source§

impl Client

source

pub fn delete_subscription_definition( &self, ) -> DeleteSubscriptionDefinitionFluentBuilder

Constructs a fluent builder for the DeleteSubscriptionDefinition operation.

source§

impl Client

source

pub fn disassociate_role_from_group( &self, ) -> DisassociateRoleFromGroupFluentBuilder

Constructs a fluent builder for the DisassociateRoleFromGroup operation.

source§

impl Client

source

pub fn disassociate_service_role_from_account( &self, ) -> DisassociateServiceRoleFromAccountFluentBuilder

Constructs a fluent builder for the DisassociateServiceRoleFromAccount operation.

source§

impl Client

source

pub fn get_associated_role(&self) -> GetAssociatedRoleFluentBuilder

Constructs a fluent builder for the GetAssociatedRole operation.

source§

impl Client

source

pub fn get_bulk_deployment_status(&self) -> GetBulkDeploymentStatusFluentBuilder

Constructs a fluent builder for the GetBulkDeploymentStatus operation.

source§

impl Client

source

pub fn get_connectivity_info(&self) -> GetConnectivityInfoFluentBuilder

Constructs a fluent builder for the GetConnectivityInfo operation.

source§

impl Client

source

pub fn get_connector_definition(&self) -> GetConnectorDefinitionFluentBuilder

Constructs a fluent builder for the GetConnectorDefinition operation.

source§

impl Client

source

pub fn get_connector_definition_version( &self, ) -> GetConnectorDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetConnectorDefinitionVersion operation.

source§

impl Client

source

pub fn get_core_definition(&self) -> GetCoreDefinitionFluentBuilder

Constructs a fluent builder for the GetCoreDefinition operation.

source§

impl Client

source

pub fn get_core_definition_version( &self, ) -> GetCoreDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetCoreDefinitionVersion operation.

source§

impl Client

source

pub fn get_deployment_status(&self) -> GetDeploymentStatusFluentBuilder

Constructs a fluent builder for the GetDeploymentStatus operation.

source§

impl Client

source

pub fn get_device_definition(&self) -> GetDeviceDefinitionFluentBuilder

Constructs a fluent builder for the GetDeviceDefinition operation.

source§

impl Client

source

pub fn get_device_definition_version( &self, ) -> GetDeviceDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetDeviceDefinitionVersion operation.

source§

impl Client

source

pub fn get_function_definition(&self) -> GetFunctionDefinitionFluentBuilder

Constructs a fluent builder for the GetFunctionDefinition operation.

source§

impl Client

source

pub fn get_function_definition_version( &self, ) -> GetFunctionDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetFunctionDefinitionVersion operation.

source§

impl Client

source

pub fn get_group(&self) -> GetGroupFluentBuilder

Constructs a fluent builder for the GetGroup operation.

source§

impl Client

source

pub fn get_group_certificate_authority( &self, ) -> GetGroupCertificateAuthorityFluentBuilder

Constructs a fluent builder for the GetGroupCertificateAuthority operation.

source§

impl Client

source

pub fn get_group_certificate_configuration( &self, ) -> GetGroupCertificateConfigurationFluentBuilder

Constructs a fluent builder for the GetGroupCertificateConfiguration operation.

source§

impl Client

source

pub fn get_group_version(&self) -> GetGroupVersionFluentBuilder

Constructs a fluent builder for the GetGroupVersion operation.

source§

impl Client

source

pub fn get_logger_definition(&self) -> GetLoggerDefinitionFluentBuilder

Constructs a fluent builder for the GetLoggerDefinition operation.

source§

impl Client

source

pub fn get_logger_definition_version( &self, ) -> GetLoggerDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetLoggerDefinitionVersion operation.

source§

impl Client

source

pub fn get_resource_definition(&self) -> GetResourceDefinitionFluentBuilder

Constructs a fluent builder for the GetResourceDefinition operation.

source§

impl Client

source

pub fn get_resource_definition_version( &self, ) -> GetResourceDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetResourceDefinitionVersion operation.

source§

impl Client

source

pub fn get_service_role_for_account( &self, ) -> GetServiceRoleForAccountFluentBuilder

Constructs a fluent builder for the GetServiceRoleForAccount operation.

source§

impl Client

source

pub fn get_subscription_definition( &self, ) -> GetSubscriptionDefinitionFluentBuilder

Constructs a fluent builder for the GetSubscriptionDefinition operation.

source§

impl Client

source

pub fn get_subscription_definition_version( &self, ) -> GetSubscriptionDefinitionVersionFluentBuilder

Constructs a fluent builder for the GetSubscriptionDefinitionVersion operation.

source§

impl Client

source

pub fn get_thing_runtime_configuration( &self, ) -> GetThingRuntimeConfigurationFluentBuilder

Constructs a fluent builder for the GetThingRuntimeConfiguration operation.

source§

impl Client

source

pub fn list_bulk_deployment_detailed_reports( &self, ) -> ListBulkDeploymentDetailedReportsFluentBuilder

Constructs a fluent builder for the ListBulkDeploymentDetailedReports operation.

source§

impl Client

source

pub fn list_bulk_deployments(&self) -> ListBulkDeploymentsFluentBuilder

Constructs a fluent builder for the ListBulkDeployments operation.

source§

impl Client

source

pub fn list_connector_definition_versions( &self, ) -> ListConnectorDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListConnectorDefinitionVersions operation.

source§

impl Client

source

pub fn list_connector_definitions( &self, ) -> ListConnectorDefinitionsFluentBuilder

Constructs a fluent builder for the ListConnectorDefinitions operation.

source§

impl Client

source

pub fn list_core_definition_versions( &self, ) -> ListCoreDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListCoreDefinitionVersions operation.

source§

impl Client

source

pub fn list_core_definitions(&self) -> ListCoreDefinitionsFluentBuilder

Constructs a fluent builder for the ListCoreDefinitions operation.

source§

impl Client

source

pub fn list_deployments(&self) -> ListDeploymentsFluentBuilder

Constructs a fluent builder for the ListDeployments operation.

source§

impl Client

source

pub fn list_device_definition_versions( &self, ) -> ListDeviceDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListDeviceDefinitionVersions operation.

source§

impl Client

source

pub fn list_device_definitions(&self) -> ListDeviceDefinitionsFluentBuilder

Constructs a fluent builder for the ListDeviceDefinitions operation.

source§

impl Client

source

pub fn list_function_definition_versions( &self, ) -> ListFunctionDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListFunctionDefinitionVersions operation.

source§

impl Client

source

pub fn list_function_definitions(&self) -> ListFunctionDefinitionsFluentBuilder

Constructs a fluent builder for the ListFunctionDefinitions operation.

source§

impl Client

source

pub fn list_group_certificate_authorities( &self, ) -> ListGroupCertificateAuthoritiesFluentBuilder

Constructs a fluent builder for the ListGroupCertificateAuthorities operation.

source§

impl Client

source

pub fn list_group_versions(&self) -> ListGroupVersionsFluentBuilder

Constructs a fluent builder for the ListGroupVersions operation.

source§

impl Client

source

pub fn list_groups(&self) -> ListGroupsFluentBuilder

Constructs a fluent builder for the ListGroups operation.

source§

impl Client

source

pub fn list_logger_definition_versions( &self, ) -> ListLoggerDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListLoggerDefinitionVersions operation.

source§

impl Client

source

pub fn list_logger_definitions(&self) -> ListLoggerDefinitionsFluentBuilder

Constructs a fluent builder for the ListLoggerDefinitions operation.

source§

impl Client

source

pub fn list_resource_definition_versions( &self, ) -> ListResourceDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListResourceDefinitionVersions operation.

source§

impl Client

source

pub fn list_resource_definitions(&self) -> ListResourceDefinitionsFluentBuilder

Constructs a fluent builder for the ListResourceDefinitions operation.

source§

impl Client

source

pub fn list_subscription_definition_versions( &self, ) -> ListSubscriptionDefinitionVersionsFluentBuilder

Constructs a fluent builder for the ListSubscriptionDefinitionVersions operation.

source§

impl Client

source

pub fn list_subscription_definitions( &self, ) -> ListSubscriptionDefinitionsFluentBuilder

Constructs a fluent builder for the ListSubscriptionDefinitions 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 reset_deployments(&self) -> ResetDeploymentsFluentBuilder

Constructs a fluent builder for the ResetDeployments operation.

source§

impl Client

source

pub fn start_bulk_deployment(&self) -> StartBulkDeploymentFluentBuilder

Constructs a fluent builder for the StartBulkDeployment operation.

source§

impl Client

source

pub fn stop_bulk_deployment(&self) -> StopBulkDeploymentFluentBuilder

Constructs a fluent builder for the StopBulkDeployment 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_connectivity_info(&self) -> UpdateConnectivityInfoFluentBuilder

Constructs a fluent builder for the UpdateConnectivityInfo operation.

source§

impl Client

source

pub fn update_connector_definition( &self, ) -> UpdateConnectorDefinitionFluentBuilder

Constructs a fluent builder for the UpdateConnectorDefinition operation.

source§

impl Client

source

pub fn update_core_definition(&self) -> UpdateCoreDefinitionFluentBuilder

Constructs a fluent builder for the UpdateCoreDefinition operation.

source§

impl Client

source

pub fn update_device_definition(&self) -> UpdateDeviceDefinitionFluentBuilder

Constructs a fluent builder for the UpdateDeviceDefinition operation.

source§

impl Client

source

pub fn update_function_definition( &self, ) -> UpdateFunctionDefinitionFluentBuilder

Constructs a fluent builder for the UpdateFunctionDefinition operation.

source§

impl Client

source

pub fn update_group(&self) -> UpdateGroupFluentBuilder

Constructs a fluent builder for the UpdateGroup operation.

source§

impl Client

source

pub fn update_group_certificate_configuration( &self, ) -> UpdateGroupCertificateConfigurationFluentBuilder

Constructs a fluent builder for the UpdateGroupCertificateConfiguration operation.

source§

impl Client

source

pub fn update_logger_definition(&self) -> UpdateLoggerDefinitionFluentBuilder

Constructs a fluent builder for the UpdateLoggerDefinition operation.

source§

impl Client

source

pub fn update_resource_definition( &self, ) -> UpdateResourceDefinitionFluentBuilder

Constructs a fluent builder for the UpdateResourceDefinition operation.

source§

impl Client

source

pub fn update_subscription_definition( &self, ) -> UpdateSubscriptionDefinitionFluentBuilder

Constructs a fluent builder for the UpdateSubscriptionDefinition operation.

source§

impl Client

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