AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
CachePolicyConfig.h
1
6#pragma once
7#include <aws/cloudfront/CloudFront_EXPORTS.h>
8#include <aws/cloudfront/model/ParametersInCacheKeyAndForwardedToOrigin.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace CloudFront {
20namespace Model {
21
43 public:
44 AWS_CLOUDFRONT_API CachePolicyConfig() = default;
45 AWS_CLOUDFRONT_API CachePolicyConfig(const Aws::Utils::Xml::XmlNode& xmlNode);
46 AWS_CLOUDFRONT_API CachePolicyConfig& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
47
48 AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
49
51
55 inline const Aws::String& GetComment() const { return m_comment; }
56 inline bool CommentHasBeenSet() const { return m_commentHasBeenSet; }
57 template <typename CommentT = Aws::String>
58 void SetComment(CommentT&& value) {
59 m_commentHasBeenSet = true;
60 m_comment = std::forward<CommentT>(value);
61 }
62 template <typename CommentT = Aws::String>
63 CachePolicyConfig& WithComment(CommentT&& value) {
64 SetComment(std::forward<CommentT>(value));
65 return *this;
66 }
68
70
73 inline const Aws::String& GetName() const { return m_name; }
74 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
75 template <typename NameT = Aws::String>
76 void SetName(NameT&& value) {
77 m_nameHasBeenSet = true;
78 m_name = std::forward<NameT>(value);
79 }
80 template <typename NameT = Aws::String>
81 CachePolicyConfig& WithName(NameT&& value) {
82 SetName(std::forward<NameT>(value));
83 return *this;
84 }
86
88
101 inline long long GetDefaultTTL() const { return m_defaultTTL; }
102 inline bool DefaultTTLHasBeenSet() const { return m_defaultTTLHasBeenSet; }
103 inline void SetDefaultTTL(long long value) {
104 m_defaultTTLHasBeenSet = true;
105 m_defaultTTL = value;
106 }
107 inline CachePolicyConfig& WithDefaultTTL(long long value) {
108 SetDefaultTTL(value);
109 return *this;
110 }
112
114
127 inline long long GetMaxTTL() const { return m_maxTTL; }
128 inline bool MaxTTLHasBeenSet() const { return m_maxTTLHasBeenSet; }
129 inline void SetMaxTTL(long long value) {
130 m_maxTTLHasBeenSet = true;
131 m_maxTTL = value;
132 }
133 inline CachePolicyConfig& WithMaxTTL(long long value) {
134 SetMaxTTL(value);
135 return *this;
136 }
138
140
148 inline long long GetMinTTL() const { return m_minTTL; }
149 inline bool MinTTLHasBeenSet() const { return m_minTTLHasBeenSet; }
150 inline void SetMinTTL(long long value) {
151 m_minTTLHasBeenSet = true;
152 m_minTTL = value;
153 }
154 inline CachePolicyConfig& WithMinTTL(long long value) {
155 SetMinTTL(value);
156 return *this;
157 }
159
161
167 return m_parametersInCacheKeyAndForwardedToOrigin;
168 }
169 inline bool ParametersInCacheKeyAndForwardedToOriginHasBeenSet() const { return m_parametersInCacheKeyAndForwardedToOriginHasBeenSet; }
170 template <typename ParametersInCacheKeyAndForwardedToOriginT = ParametersInCacheKeyAndForwardedToOrigin>
171 void SetParametersInCacheKeyAndForwardedToOrigin(ParametersInCacheKeyAndForwardedToOriginT&& value) {
172 m_parametersInCacheKeyAndForwardedToOriginHasBeenSet = true;
173 m_parametersInCacheKeyAndForwardedToOrigin = std::forward<ParametersInCacheKeyAndForwardedToOriginT>(value);
174 }
175 template <typename ParametersInCacheKeyAndForwardedToOriginT = ParametersInCacheKeyAndForwardedToOrigin>
176 CachePolicyConfig& WithParametersInCacheKeyAndForwardedToOrigin(ParametersInCacheKeyAndForwardedToOriginT&& value) {
177 SetParametersInCacheKeyAndForwardedToOrigin(std::forward<ParametersInCacheKeyAndForwardedToOriginT>(value));
178 return *this;
179 }
181 private:
182 Aws::String m_comment;
183
184 Aws::String m_name;
185
186 long long m_defaultTTL{0};
187
188 long long m_maxTTL{0};
189
190 long long m_minTTL{0};
191
192 ParametersInCacheKeyAndForwardedToOrigin m_parametersInCacheKeyAndForwardedToOrigin;
193 bool m_commentHasBeenSet = false;
194 bool m_nameHasBeenSet = false;
195 bool m_defaultTTLHasBeenSet = false;
196 bool m_maxTTLHasBeenSet = false;
197 bool m_minTTLHasBeenSet = false;
198 bool m_parametersInCacheKeyAndForwardedToOriginHasBeenSet = false;
199};
200
201} // namespace Model
202} // namespace CloudFront
203} // namespace Aws
AWS_CLOUDFRONT_API CachePolicyConfig(const Aws::Utils::Xml::XmlNode &xmlNode)
CachePolicyConfig & WithComment(CommentT &&value)
CachePolicyConfig & WithMaxTTL(long long value)
AWS_CLOUDFRONT_API CachePolicyConfig & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetParametersInCacheKeyAndForwardedToOrigin(ParametersInCacheKeyAndForwardedToOriginT &&value)
AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
const ParametersInCacheKeyAndForwardedToOrigin & GetParametersInCacheKeyAndForwardedToOrigin() const
CachePolicyConfig & WithParametersInCacheKeyAndForwardedToOrigin(ParametersInCacheKeyAndForwardedToOriginT &&value)
CachePolicyConfig & WithName(NameT &&value)
AWS_CLOUDFRONT_API CachePolicyConfig()=default
CachePolicyConfig & WithMinTTL(long long value)
CachePolicyConfig & WithDefaultTTL(long long value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String