AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
IntelligentTieringConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/s3-crt/S3Crt_EXPORTS.h>
10#include <aws/s3-crt/model/IntelligentTieringFilter.h>
11#include <aws/s3-crt/model/IntelligentTieringStatus.h>
12#include <aws/s3-crt/model/Tiering.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace S3Crt {
23namespace Model {
24
36 public:
37 AWS_S3CRT_API IntelligentTieringConfiguration() = default;
40
41 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
42
44
47 inline const Aws::String& GetId() const { return m_id; }
48 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
49 template <typename IdT = Aws::String>
50 void SetId(IdT&& value) {
51 m_idHasBeenSet = true;
52 m_id = std::forward<IdT>(value);
53 }
54 template <typename IdT = Aws::String>
56 SetId(std::forward<IdT>(value));
57 return *this;
58 }
60
62
66 inline const IntelligentTieringFilter& GetFilter() const { return m_filter; }
67 inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
68 template <typename FilterT = IntelligentTieringFilter>
69 void SetFilter(FilterT&& value) {
70 m_filterHasBeenSet = true;
71 m_filter = std::forward<FilterT>(value);
72 }
73 template <typename FilterT = IntelligentTieringFilter>
75 SetFilter(std::forward<FilterT>(value));
76 return *this;
77 }
79
81
84 inline IntelligentTieringStatus GetStatus() const { return m_status; }
85 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
87 m_statusHasBeenSet = true;
88 m_status = value;
89 }
91 SetStatus(value);
92 return *this;
93 }
95
97
101 inline const Aws::Vector<Tiering>& GetTierings() const { return m_tierings; }
102 inline bool TieringsHasBeenSet() const { return m_tieringsHasBeenSet; }
103 template <typename TieringsT = Aws::Vector<Tiering>>
104 void SetTierings(TieringsT&& value) {
105 m_tieringsHasBeenSet = true;
106 m_tierings = std::forward<TieringsT>(value);
107 }
108 template <typename TieringsT = Aws::Vector<Tiering>>
110 SetTierings(std::forward<TieringsT>(value));
111 return *this;
112 }
113 template <typename TieringsT = Tiering>
115 m_tieringsHasBeenSet = true;
116 m_tierings.emplace_back(std::forward<TieringsT>(value));
117 return *this;
118 }
120 private:
121 Aws::String m_id;
122
124
126
127 Aws::Vector<Tiering> m_tierings;
128 bool m_idHasBeenSet = false;
129 bool m_filterHasBeenSet = false;
130 bool m_statusHasBeenSet = false;
131 bool m_tieringsHasBeenSet = false;
132};
133
134} // namespace Model
135} // namespace S3Crt
136} // namespace Aws
IntelligentTieringConfiguration & WithStatus(IntelligentTieringStatus value)
IntelligentTieringConfiguration & WithFilter(FilterT &&value)
IntelligentTieringConfiguration & WithId(IdT &&value)
IntelligentTieringConfiguration & WithTierings(TieringsT &&value)
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_S3CRT_API IntelligentTieringConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
IntelligentTieringConfiguration & AddTierings(TieringsT &&value)
AWS_S3CRT_API IntelligentTieringConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector