1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`PromotePermissionCreatedFromPolicy`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`permission_arn(impl Into<String>)`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::permission_arn) / [`set_permission_arn(Option<String>)`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::set_permission_arn):<br>required: **true**<br><p>Specifies the <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> of the <code>CREATED_FROM_POLICY</code> permission that you want to promote. You can get this <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> by calling the <code>ListResourceSharePermissions</code> operation.</p><br>
    ///   - [`name(impl Into<String>)`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::set_name):<br>required: **true**<br><p>Specifies a name for the promoted customer managed permission.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::set_client_token):<br>required: **false**<br><p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value.</a>.</p>  <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p>  <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p><br>
    /// - On success, responds with [`PromotePermissionCreatedFromPolicyOutput`](crate::operation::promote_permission_created_from_policy::PromotePermissionCreatedFromPolicyOutput) with field(s):
    ///   - [`permission(Option<ResourceSharePermissionSummary>)`](crate::operation::promote_permission_created_from_policy::PromotePermissionCreatedFromPolicyOutput::permission): <p>Information about an RAM permission.</p>
    ///   - [`client_token(Option<String>)`](crate::operation::promote_permission_created_from_policy::PromotePermissionCreatedFromPolicyOutput::client_token): <p>The idempotency identifier associated with this request. If you want to repeat the same operation in an idempotent manner then you must include this value in the <code>clientToken</code> request parameter of that later call. All other parameters must also have the same values that you used in the first call.</p>
    /// - On failure, responds with [`SdkError<PromotePermissionCreatedFromPolicyError>`](crate::operation::promote_permission_created_from_policy::PromotePermissionCreatedFromPolicyError)
    pub fn promote_permission_created_from_policy(
        &self,
    ) -> crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder {
        crate::operation::promote_permission_created_from_policy::builders::PromotePermissionCreatedFromPolicyFluentBuilder::new(self.handle.clone())
    }
}