#[non_exhaustive]
pub struct Distribution { /* private fields */ }
Expand description

A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery.

Implementations§

The identifier for the distribution. For example: EDFDVBD632BHDS5.

The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, where 123456789012 is your Amazon Web Services account ID.

This response element indicates the current status of the distribution. When the status is Deployed, the distribution's information is fully propagated to all CloudFront edge locations.

The date and time the distribution was last modified.

The number of invalidation batches currently in progress.

The domain name corresponding to the distribution, for example, d111111abcdef8.cloudfront.net.

We recommend using TrustedKeyGroups instead of TrustedSigners.

CloudFront automatically adds this field to the response if you’ve configured a cache behavior in this distribution to serve private content using trusted signers. This field contains a list of Amazon Web Services account IDs and the active CloudFront key pairs in each account that CloudFront can use to verify the signatures of signed URLs or signed cookies.

CloudFront automatically adds this field to the response if you’ve configured a cache behavior in this distribution to serve private content using key groups. This field contains a list of key groups and the public keys in each key group that CloudFront can use to verify the signatures of signed URLs or signed cookies.

The current configuration information for the distribution. Send a GET request to the /CloudFront API version/distribution ID/config resource.

Amazon Web Services services in China customers must file for an Internet Content Provider (ICP) recordal if they want to serve content publicly on an alternate domain name, also known as a CNAME, that they've added to CloudFront. AliasICPRecordal provides the ICP recordal status for CNAMEs associated with distributions.

For more information about ICP recordals, see Signup, Accounts, and Credentials in Getting Started with Amazon Web Services services in China.

Creates a new builder-style object to manufacture Distribution.

Examples found in repository?
src/xml_deser.rs (line 6241)
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
pub fn deser_structure_crate_model_distribution(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::Distribution, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::Distribution::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.cloudfront#Distribution$Id */ =>  {
                let var_153 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_153);
            }
            ,
            s if s.matches("ARN") /* ARN com.amazonaws.cloudfront#Distribution$ARN */ =>  {
                let var_154 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_arn(var_154);
            }
            ,
            s if s.matches("Status") /* Status com.amazonaws.cloudfront#Distribution$Status */ =>  {
                let var_155 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_status(var_155);
            }
            ,
            s if s.matches("LastModifiedTime") /* LastModifiedTime com.amazonaws.cloudfront#Distribution$LastModifiedTime */ =>  {
                let var_156 =
                    Some(
                        aws_smithy_types::DateTime::from_str(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            , aws_smithy_types::date_time::Format::DateTime
                        )
                        .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (timestamp: `com.amazonaws.cloudfront#timestamp`)"))
                        ?
                    )
                ;
                builder = builder.set_last_modified_time(var_156);
            }
            ,
            s if s.matches("InProgressInvalidationBatches") /* InProgressInvalidationBatches com.amazonaws.cloudfront#Distribution$InProgressInvalidationBatches */ =>  {
                let var_157 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.cloudfront#integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_in_progress_invalidation_batches(var_157);
            }
            ,
            s if s.matches("DomainName") /* DomainName com.amazonaws.cloudfront#Distribution$DomainName */ =>  {
                let var_158 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_domain_name(var_158);
            }
            ,
            s if s.matches("ActiveTrustedSigners") /* ActiveTrustedSigners com.amazonaws.cloudfront#Distribution$ActiveTrustedSigners */ =>  {
                let var_159 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_active_trusted_signers(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_active_trusted_signers(var_159);
            }
            ,
            s if s.matches("ActiveTrustedKeyGroups") /* ActiveTrustedKeyGroups com.amazonaws.cloudfront#Distribution$ActiveTrustedKeyGroups */ =>  {
                let var_160 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_active_trusted_key_groups(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_active_trusted_key_groups(var_160);
            }
            ,
            s if s.matches("DistributionConfig") /* DistributionConfig com.amazonaws.cloudfront#Distribution$DistributionConfig */ =>  {
                let var_161 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_distribution_config(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_distribution_config(var_161);
            }
            ,
            s if s.matches("AliasICPRecordals") /* AliasICPRecordals com.amazonaws.cloudfront#Distribution$AliasICPRecordals */ =>  {
                let var_162 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_cloudfront_alias_icp_recordals(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_alias_icp_recordals(var_162);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more