AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
GeoRestrictionCustomization.h
1
6#pragma once
7#include <aws/cloudfront/CloudFront_EXPORTS.h>
8#include <aws/cloudfront/model/GeoRestrictionType.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace CloudFront
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_CLOUDFRONT_API GeoRestrictionCustomization() = default;
37 AWS_CLOUDFRONT_API GeoRestrictionCustomization(const Aws::Utils::Xml::XmlNode& xmlNode);
39
40 AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
41
42
44
54 inline GeoRestrictionType GetRestrictionType() const { return m_restrictionType; }
55 inline bool RestrictionTypeHasBeenSet() const { return m_restrictionTypeHasBeenSet; }
56 inline void SetRestrictionType(GeoRestrictionType value) { m_restrictionTypeHasBeenSet = true; m_restrictionType = value; }
59
61
64 inline const Aws::Vector<Aws::String>& GetLocations() const { return m_locations; }
65 inline bool LocationsHasBeenSet() const { return m_locationsHasBeenSet; }
66 template<typename LocationsT = Aws::Vector<Aws::String>>
67 void SetLocations(LocationsT&& value) { m_locationsHasBeenSet = true; m_locations = std::forward<LocationsT>(value); }
68 template<typename LocationsT = Aws::Vector<Aws::String>>
69 GeoRestrictionCustomization& WithLocations(LocationsT&& value) { SetLocations(std::forward<LocationsT>(value)); return *this;}
70 template<typename LocationsT = Aws::String>
71 GeoRestrictionCustomization& AddLocations(LocationsT&& value) { m_locationsHasBeenSet = true; m_locations.emplace_back(std::forward<LocationsT>(value)); return *this; }
73 private:
74
76 bool m_restrictionTypeHasBeenSet = false;
77
78 Aws::Vector<Aws::String> m_locations;
79 bool m_locationsHasBeenSet = false;
80 };
81
82} // namespace Model
83} // namespace CloudFront
84} // namespace Aws
const Aws::Vector< Aws::String > & GetLocations() const
GeoRestrictionCustomization & WithLocations(LocationsT &&value)
AWS_CLOUDFRONT_API GeoRestrictionCustomization()=default
AWS_CLOUDFRONT_API GeoRestrictionCustomization & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
GeoRestrictionCustomization & AddLocations(LocationsT &&value)
AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_CLOUDFRONT_API GeoRestrictionCustomization(const Aws::Utils::Xml::XmlNode &xmlNode)
GeoRestrictionCustomization & WithRestrictionType(GeoRestrictionType value)
std::vector< T, Aws::Allocator< T > > Vector