AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
TrafficConfig.h
1
6#pragma once
7#include <aws/cloudfront/CloudFront_EXPORTS.h>
8#include <aws/cloudfront/model/ContinuousDeploymentPolicyType.h>
9#include <aws/cloudfront/model/ContinuousDeploymentSingleHeaderConfig.h>
10#include <aws/cloudfront/model/ContinuousDeploymentSingleWeightConfig.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace CloudFront {
21namespace Model {
22
30 public:
31 AWS_CLOUDFRONT_API TrafficConfig() = default;
32 AWS_CLOUDFRONT_API TrafficConfig(const Aws::Utils::Xml::XmlNode& xmlNode);
33 AWS_CLOUDFRONT_API TrafficConfig& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
34
35 AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
36
38
41 inline const ContinuousDeploymentSingleWeightConfig& GetSingleWeightConfig() const { return m_singleWeightConfig; }
42 inline bool SingleWeightConfigHasBeenSet() const { return m_singleWeightConfigHasBeenSet; }
43 template <typename SingleWeightConfigT = ContinuousDeploymentSingleWeightConfig>
44 void SetSingleWeightConfig(SingleWeightConfigT&& value) {
45 m_singleWeightConfigHasBeenSet = true;
46 m_singleWeightConfig = std::forward<SingleWeightConfigT>(value);
47 }
48 template <typename SingleWeightConfigT = ContinuousDeploymentSingleWeightConfig>
49 TrafficConfig& WithSingleWeightConfig(SingleWeightConfigT&& value) {
50 SetSingleWeightConfig(std::forward<SingleWeightConfigT>(value));
51 return *this;
52 }
54
56
59 inline const ContinuousDeploymentSingleHeaderConfig& GetSingleHeaderConfig() const { return m_singleHeaderConfig; }
60 inline bool SingleHeaderConfigHasBeenSet() const { return m_singleHeaderConfigHasBeenSet; }
61 template <typename SingleHeaderConfigT = ContinuousDeploymentSingleHeaderConfig>
62 void SetSingleHeaderConfig(SingleHeaderConfigT&& value) {
63 m_singleHeaderConfigHasBeenSet = true;
64 m_singleHeaderConfig = std::forward<SingleHeaderConfigT>(value);
65 }
66 template <typename SingleHeaderConfigT = ContinuousDeploymentSingleHeaderConfig>
67 TrafficConfig& WithSingleHeaderConfig(SingleHeaderConfigT&& value) {
68 SetSingleHeaderConfig(std::forward<SingleHeaderConfigT>(value));
69 return *this;
70 }
72
74
77 inline ContinuousDeploymentPolicyType GetType() const { return m_type; }
78 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
80 m_typeHasBeenSet = true;
81 m_type = value;
82 }
84 SetType(value);
85 return *this;
86 }
88 private:
89 ContinuousDeploymentSingleWeightConfig m_singleWeightConfig;
90
91 ContinuousDeploymentSingleHeaderConfig m_singleHeaderConfig;
92
94 bool m_singleWeightConfigHasBeenSet = false;
95 bool m_singleHeaderConfigHasBeenSet = false;
96 bool m_typeHasBeenSet = false;
97};
98
99} // namespace Model
100} // namespace CloudFront
101} // namespace Aws
TrafficConfig & WithSingleWeightConfig(SingleWeightConfigT &&value)
AWS_CLOUDFRONT_API TrafficConfig()=default
TrafficConfig & WithType(ContinuousDeploymentPolicyType value)
ContinuousDeploymentPolicyType GetType() const
void SetSingleWeightConfig(SingleWeightConfigT &&value)
AWS_CLOUDFRONT_API TrafficConfig & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetType(ContinuousDeploymentPolicyType value)
const ContinuousDeploymentSingleWeightConfig & GetSingleWeightConfig() const
const ContinuousDeploymentSingleHeaderConfig & GetSingleHeaderConfig() const
AWS_CLOUDFRONT_API TrafficConfig(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetSingleHeaderConfig(SingleHeaderConfigT &&value)
AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
TrafficConfig & WithSingleHeaderConfig(SingleHeaderConfigT &&value)