aws_sdk_cloudfront/client/
copy_distribution.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 [`CopyDistribution`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`primary_distribution_id(impl Into<String>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::primary_distribution_id) / [`set_primary_distribution_id(Option<String>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::set_primary_distribution_id):<br>required: **true**<br><p>The identifier of the primary distribution whose configuration you are copying. To get a distribution ID, use <code>ListDistributions</code>.</p><br>
7    ///   - [`staging(bool)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::staging) / [`set_staging(Option<bool>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::set_staging):<br>required: **false**<br><p>The type of distribution that your primary distribution will be copied to. The only valid value is <code>True</code>, indicating that you are copying to a staging distribution.</p><br>
8    ///   - [`if_match(impl Into<String>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::if_match) / [`set_if_match(Option<String>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::set_if_match):<br>required: **false**<br><p>The version identifier of the primary distribution whose configuration you are copying. This is the <code>ETag</code> value returned in the response to <code>GetDistribution</code> and <code>GetDistributionConfig</code>.</p><br>
9    ///   - [`caller_reference(impl Into<String>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::caller_reference) / [`set_caller_reference(Option<String>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::set_caller_reference):<br>required: **true**<br><p>A value that uniquely identifies a request to create a resource. This helps to prevent CloudFront from creating a duplicate resource if you accidentally resubmit an identical request.</p><br>
10    ///   - [`enabled(bool)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::enabled) / [`set_enabled(Option<bool>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::set_enabled):<br>required: **false**<br><p>A Boolean flag to specify the state of the staging distribution when it's created. When you set this value to <code>True</code>, the staging distribution is enabled. When you set this value to <code>False</code>, the staging distribution is disabled.</p> <p>If you omit this field, the default value is <code>True</code>.</p><br>
11    /// - On success, responds with [`CopyDistributionOutput`](crate::operation::copy_distribution::CopyDistributionOutput) with field(s):
12    ///   - [`distribution(Option<Distribution>)`](crate::operation::copy_distribution::CopyDistributionOutput::distribution): <p>A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery.</p>
13    ///   - [`location(Option<String>)`](crate::operation::copy_distribution::CopyDistributionOutput::location): <p>The URL of the staging distribution.</p>
14    ///   - [`e_tag(Option<String>)`](crate::operation::copy_distribution::CopyDistributionOutput::e_tag): <p>The version identifier for the current version of the staging distribution.</p>
15    /// - On failure, responds with [`SdkError<CopyDistributionError>`](crate::operation::copy_distribution::CopyDistributionError)
16    pub fn copy_distribution(&self) -> crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder {
17        crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::new(self.handle.clone())
18    }
19}