AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ResponseHeadersPolicySecurityHeadersConfig.h
1
6#pragma once
7#include <aws/cloudfront/CloudFront_EXPORTS.h>
8#include <aws/cloudfront/model/ResponseHeadersPolicyXSSProtection.h>
9#include <aws/cloudfront/model/ResponseHeadersPolicyFrameOptions.h>
10#include <aws/cloudfront/model/ResponseHeadersPolicyReferrerPolicy.h>
11#include <aws/cloudfront/model/ResponseHeadersPolicyContentSecurityPolicy.h>
12#include <aws/cloudfront/model/ResponseHeadersPolicyContentTypeOptions.h>
13#include <aws/cloudfront/model/ResponseHeadersPolicyStrictTransportSecurity.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Xml
21{
22 class XmlNode;
23} // namespace Xml
24} // namespace Utils
25namespace CloudFront
26{
27namespace Model
28{
29
39 {
40 public:
41 AWS_CLOUDFRONT_API ResponseHeadersPolicySecurityHeadersConfig() = default;
44
45 AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
46
47
49
56 inline const ResponseHeadersPolicyXSSProtection& GetXSSProtection() const { return m_xSSProtection; }
57 inline bool XSSProtectionHasBeenSet() const { return m_xSSProtectionHasBeenSet; }
58 template<typename XSSProtectionT = ResponseHeadersPolicyXSSProtection>
59 void SetXSSProtection(XSSProtectionT&& value) { m_xSSProtectionHasBeenSet = true; m_xSSProtection = std::forward<XSSProtectionT>(value); }
60 template<typename XSSProtectionT = ResponseHeadersPolicyXSSProtection>
61 ResponseHeadersPolicySecurityHeadersConfig& WithXSSProtection(XSSProtectionT&& value) { SetXSSProtection(std::forward<XSSProtectionT>(value)); return *this;}
63
65
72 inline const ResponseHeadersPolicyFrameOptions& GetFrameOptions() const { return m_frameOptions; }
73 inline bool FrameOptionsHasBeenSet() const { return m_frameOptionsHasBeenSet; }
74 template<typename FrameOptionsT = ResponseHeadersPolicyFrameOptions>
75 void SetFrameOptions(FrameOptionsT&& value) { m_frameOptionsHasBeenSet = true; m_frameOptions = std::forward<FrameOptionsT>(value); }
76 template<typename FrameOptionsT = ResponseHeadersPolicyFrameOptions>
77 ResponseHeadersPolicySecurityHeadersConfig& WithFrameOptions(FrameOptionsT&& value) { SetFrameOptions(std::forward<FrameOptionsT>(value)); return *this;}
79
81
88 inline const ResponseHeadersPolicyReferrerPolicy& GetReferrerPolicy() const { return m_referrerPolicy; }
89 inline bool ReferrerPolicyHasBeenSet() const { return m_referrerPolicyHasBeenSet; }
90 template<typename ReferrerPolicyT = ResponseHeadersPolicyReferrerPolicy>
91 void SetReferrerPolicy(ReferrerPolicyT&& value) { m_referrerPolicyHasBeenSet = true; m_referrerPolicy = std::forward<ReferrerPolicyT>(value); }
92 template<typename ReferrerPolicyT = ResponseHeadersPolicyReferrerPolicy>
93 ResponseHeadersPolicySecurityHeadersConfig& WithReferrerPolicy(ReferrerPolicyT&& value) { SetReferrerPolicy(std::forward<ReferrerPolicyT>(value)); return *this;}
95
97
105 inline const ResponseHeadersPolicyContentSecurityPolicy& GetContentSecurityPolicy() const { return m_contentSecurityPolicy; }
106 inline bool ContentSecurityPolicyHasBeenSet() const { return m_contentSecurityPolicyHasBeenSet; }
107 template<typename ContentSecurityPolicyT = ResponseHeadersPolicyContentSecurityPolicy>
108 void SetContentSecurityPolicy(ContentSecurityPolicyT&& value) { m_contentSecurityPolicyHasBeenSet = true; m_contentSecurityPolicy = std::forward<ContentSecurityPolicyT>(value); }
109 template<typename ContentSecurityPolicyT = ResponseHeadersPolicyContentSecurityPolicy>
110 ResponseHeadersPolicySecurityHeadersConfig& WithContentSecurityPolicy(ContentSecurityPolicyT&& value) { SetContentSecurityPolicy(std::forward<ContentSecurityPolicyT>(value)); return *this;}
112
114
122 inline const ResponseHeadersPolicyContentTypeOptions& GetContentTypeOptions() const { return m_contentTypeOptions; }
123 inline bool ContentTypeOptionsHasBeenSet() const { return m_contentTypeOptionsHasBeenSet; }
124 template<typename ContentTypeOptionsT = ResponseHeadersPolicyContentTypeOptions>
125 void SetContentTypeOptions(ContentTypeOptionsT&& value) { m_contentTypeOptionsHasBeenSet = true; m_contentTypeOptions = std::forward<ContentTypeOptionsT>(value); }
126 template<typename ContentTypeOptionsT = ResponseHeadersPolicyContentTypeOptions>
127 ResponseHeadersPolicySecurityHeadersConfig& WithContentTypeOptions(ContentTypeOptionsT&& value) { SetContentTypeOptions(std::forward<ContentTypeOptionsT>(value)); return *this;}
129
131
141 inline const ResponseHeadersPolicyStrictTransportSecurity& GetStrictTransportSecurity() const { return m_strictTransportSecurity; }
142 inline bool StrictTransportSecurityHasBeenSet() const { return m_strictTransportSecurityHasBeenSet; }
143 template<typename StrictTransportSecurityT = ResponseHeadersPolicyStrictTransportSecurity>
144 void SetStrictTransportSecurity(StrictTransportSecurityT&& value) { m_strictTransportSecurityHasBeenSet = true; m_strictTransportSecurity = std::forward<StrictTransportSecurityT>(value); }
145 template<typename StrictTransportSecurityT = ResponseHeadersPolicyStrictTransportSecurity>
146 ResponseHeadersPolicySecurityHeadersConfig& WithStrictTransportSecurity(StrictTransportSecurityT&& value) { SetStrictTransportSecurity(std::forward<StrictTransportSecurityT>(value)); return *this;}
148 private:
149
151 bool m_xSSProtectionHasBeenSet = false;
152
154 bool m_frameOptionsHasBeenSet = false;
155
157 bool m_referrerPolicyHasBeenSet = false;
158
159 ResponseHeadersPolicyContentSecurityPolicy m_contentSecurityPolicy;
160 bool m_contentSecurityPolicyHasBeenSet = false;
161
162 ResponseHeadersPolicyContentTypeOptions m_contentTypeOptions;
163 bool m_contentTypeOptionsHasBeenSet = false;
164
165 ResponseHeadersPolicyStrictTransportSecurity m_strictTransportSecurity;
166 bool m_strictTransportSecurityHasBeenSet = false;
167 };
168
169} // namespace Model
170} // namespace CloudFront
171} // namespace Aws
ResponseHeadersPolicySecurityHeadersConfig & WithContentTypeOptions(ContentTypeOptionsT &&value)
AWS_CLOUDFRONT_API ResponseHeadersPolicySecurityHeadersConfig & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_CLOUDFRONT_API ResponseHeadersPolicySecurityHeadersConfig(const Aws::Utils::Xml::XmlNode &xmlNode)
ResponseHeadersPolicySecurityHeadersConfig & WithReferrerPolicy(ReferrerPolicyT &&value)
const ResponseHeadersPolicyStrictTransportSecurity & GetStrictTransportSecurity() const
ResponseHeadersPolicySecurityHeadersConfig & WithContentSecurityPolicy(ContentSecurityPolicyT &&value)
ResponseHeadersPolicySecurityHeadersConfig & WithStrictTransportSecurity(StrictTransportSecurityT &&value)
ResponseHeadersPolicySecurityHeadersConfig & WithFrameOptions(FrameOptionsT &&value)
const ResponseHeadersPolicyContentSecurityPolicy & GetContentSecurityPolicy() const
ResponseHeadersPolicySecurityHeadersConfig & WithXSSProtection(XSSProtectionT &&value)