Skip to main content

aws_sdk_continuum/client/
associate_collector.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`AssociateCollector`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`environment_id(impl Into<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::environment_id) / [`set_environment_id(Option<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::set_environment_id):<br>required: **true**<br>The unique identifier of the Environment making the association.<br>
7    ///   - [`client_token(impl Into<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::set_client_token):<br>required: **false**<br>Caller-provided token that makes retried association requests idempotent. The first successful request binds the token to the complete Collector ARN, supplied role, and result for at least 24 hours. During that retry window, reusing it with a different request fails with ConflictException. A matching replay still requires the supplied role to have current Collector access. Once authorized, a matching replay returns the stored result without changing association state. Revocation can deny a replay; it does not remove the stored association or its original result.<br>
8    ///   - [`collector_arn(impl Into<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::collector_arn) / [`set_collector_arn(Option<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::set_collector_arn):<br>required: **true**<br>The ARN of the Collector to associate with this Environment.<br>
9    ///   - [`collector_data_access_role_arn(impl Into<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::collector_data_access_role_arn) / [`set_collector_data_access_role_arn(Option<String>)`](crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::set_collector_data_access_role_arn):<br>required: **true**<br>IAM role in the Environment account that Continuum assumes before authorizing access to associated Collector inventory. Every association, including a same-account association, requires this role. The supplied ARN replaces the Environment's previously stored role. The customer is responsible for granting the role access to every Collector that should contribute data.<br>
10    /// - On success, responds with [`AssociateCollectorOutput`](crate::operation::associate_collector::AssociateCollectorOutput) with field(s):
11    ///   - [`environment_id(String)`](crate::operation::associate_collector::AssociateCollectorOutput::environment_id): The unique identifier of the Environment making the association.
12    ///   - [`environment_arn(String)`](crate::operation::associate_collector::AssociateCollectorOutput::environment_arn): The ARN of the Environment making the association.
13    ///   - [`associated_collector(Option<AssociatedCollector>)`](crate::operation::associate_collector::AssociateCollectorOutput::associated_collector): The Collector identifier and ARN validated by this operation.
14    /// - On failure, responds with [`SdkError<AssociateCollectorError>`](crate::operation::associate_collector::AssociateCollectorError)
15    pub fn associate_collector(&self) -> crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder {
16        crate::operation::associate_collector::builders::AssociateCollectorFluentBuilder::new(self.handle.clone())
17    }
18}