AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
OriginGroups.h
1
6#pragma once
7#include <aws/cloudfront/CloudFront_EXPORTS.h>
8#include <aws/cloudfront/model/OriginGroup.h>
9#include <aws/core/utils/memory/stl/AWSVector.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
29 public:
30 AWS_CLOUDFRONT_API OriginGroups() = default;
31 AWS_CLOUDFRONT_API OriginGroups(const Aws::Utils::Xml::XmlNode& xmlNode);
32 AWS_CLOUDFRONT_API OriginGroups& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
33
34 AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
35
37
40 inline int GetQuantity() const { return m_quantity; }
41 inline bool QuantityHasBeenSet() const { return m_quantityHasBeenSet; }
42 inline void SetQuantity(int value) {
43 m_quantityHasBeenSet = true;
44 m_quantity = value;
45 }
46 inline OriginGroups& WithQuantity(int value) {
47 SetQuantity(value);
48 return *this;
49 }
51
53
56 inline const Aws::Vector<OriginGroup>& GetItems() const { return m_items; }
57 inline bool ItemsHasBeenSet() const { return m_itemsHasBeenSet; }
58 template <typename ItemsT = Aws::Vector<OriginGroup>>
59 void SetItems(ItemsT&& value) {
60 m_itemsHasBeenSet = true;
61 m_items = std::forward<ItemsT>(value);
62 }
63 template <typename ItemsT = Aws::Vector<OriginGroup>>
64 OriginGroups& WithItems(ItemsT&& value) {
65 SetItems(std::forward<ItemsT>(value));
66 return *this;
67 }
68 template <typename ItemsT = OriginGroup>
69 OriginGroups& AddItems(ItemsT&& value) {
70 m_itemsHasBeenSet = true;
71 m_items.emplace_back(std::forward<ItemsT>(value));
72 return *this;
73 }
75 private:
76 int m_quantity{0};
77
79 bool m_quantityHasBeenSet = false;
80 bool m_itemsHasBeenSet = false;
81};
82
83} // namespace Model
84} // namespace CloudFront
85} // namespace Aws
OriginGroups & WithItems(ItemsT &&value)
AWS_CLOUDFRONT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_CLOUDFRONT_API OriginGroups(const Aws::Utils::Xml::XmlNode &xmlNode)
OriginGroups & WithQuantity(int value)
OriginGroups & AddItems(ItemsT &&value)
const Aws::Vector< OriginGroup > & GetItems() const
AWS_CLOUDFRONT_API OriginGroups()=default
AWS_CLOUDFRONT_API OriginGroups & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
std::vector< T, Aws::Allocator< T > > Vector