Struct aws_sdk_cloudfront::model::GeoRestriction
source · #[non_exhaustive]pub struct GeoRestriction { /* private fields */ }
Expand description
A complex type that controls the countries in which your content is distributed. CloudFront determines the location of your users using MaxMind
GeoIP databases.
Implementations§
source§impl GeoRestriction
impl GeoRestriction
sourcepub fn restriction_type(&self) -> Option<&GeoRestrictionType>
pub fn restriction_type(&self) -> Option<&GeoRestrictionType>
The method that you want to use to restrict distribution of your content by country:
-
none
: No geo restriction is enabled, meaning access to content is not restricted by client geo location. -
blacklist
: TheLocation
elements specify the countries in which you don't want CloudFront to distribute your content. -
whitelist
: TheLocation
elements specify the countries in which you want CloudFront to distribute your content.
sourcepub fn quantity(&self) -> Option<i32>
pub fn quantity(&self) -> Option<i32>
When geo restriction is enabled
, this is the number of countries in your whitelist
or blacklist
. Otherwise, when it is not enabled, Quantity
is 0
, and you can omit Items
.
sourcepub fn items(&self) -> Option<&[String]>
pub fn items(&self) -> Option<&[String]>
A complex type that contains a Location
element for each country in which you want CloudFront either to distribute your content (whitelist
) or not distribute your content (blacklist
).
The Location
element is a two-letter, uppercase country code for a country that you want to include in your blacklist
or whitelist
. Include one Location
element for each country.
CloudFront and MaxMind
both use ISO 3166
country codes. For the current list of countries and the corresponding codes, see ISO 3166-1-alpha-2
code on the International Organization for Standardization website. You can also refer to the country list on the CloudFront console, which includes both country names and codes.
source§impl GeoRestriction
impl GeoRestriction
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture GeoRestriction
.
Examples found in repository?
11880 11881 11882 11883 11884 11885 11886 11887 11888 11889 11890 11891 11892 11893 11894 11895 11896 11897 11898 11899 11900 11901 11902 11903 11904 11905 11906 11907 11908 11909 11910 11911 11912 11913 11914 11915 11916 11917 11918 11919 11920 11921 11922 11923 11924 11925 11926 11927 11928 11929 11930
pub fn deser_structure_crate_model_geo_restriction(
decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::GeoRestriction, aws_smithy_xml::decode::XmlDecodeError> {
#[allow(unused_mut)]
let mut builder = crate::model::GeoRestriction::builder();
while let Some(mut tag) = decoder.next_tag() {
match tag.start_el() {
s if s.matches("RestrictionType") /* RestrictionType com.amazonaws.cloudfront#GeoRestriction$RestrictionType */ => {
let var_469 =
Some(
Result::<crate::model::GeoRestrictionType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
crate::model::GeoRestrictionType::from(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
)
?
)
;
builder = builder.set_restriction_type(var_469);
}
,
s if s.matches("Quantity") /* Quantity com.amazonaws.cloudfront#GeoRestriction$Quantity */ => {
let var_470 =
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_quantity(var_470);
}
,
s if s.matches("Items") /* Items com.amazonaws.cloudfront#GeoRestriction$Items */ => {
let var_471 =
Some(
crate::xml_deser::deser_list_com_amazonaws_cloudfront_location_list(&mut tag)
?
)
;
builder = builder.set_items(var_471);
}
,
_ => {}
}
}
Ok(builder.build())
}
Trait Implementations§
source§impl Clone for GeoRestriction
impl Clone for GeoRestriction
source§fn clone(&self) -> GeoRestriction
fn clone(&self) -> GeoRestriction
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more