// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CopyDistribution`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`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): <p>The identifier of the primary distribution whose configuration you are copying. To get a distribution ID, use <code>ListDistributions</code>.</p>
/// - [`staging(bool)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::staging) / [`set_staging(Option<bool>)`](crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::set_staging): <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>
/// - [`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): <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>
/// - [`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): <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>
/// - On success, responds with [`CopyDistributionOutput`](crate::operation::copy_distribution::CopyDistributionOutput) with field(s):
/// - [`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>
/// - [`location(Option<String>)`](crate::operation::copy_distribution::CopyDistributionOutput::location): <p>The URL of the staging distribution.</p>
/// - [`e_tag(Option<String>)`](crate::operation::copy_distribution::CopyDistributionOutput::e_tag): <p>The version identifier for the current version of the staging distribution.</p>
/// - On failure, responds with [`SdkError<CopyDistributionError>`](crate::operation::copy_distribution::CopyDistributionError)
pub fn copy_distribution(
&self,
) -> crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder {
crate::operation::copy_distribution::builders::CopyDistributionFluentBuilder::new(
self.handle.clone(),
)
}
}