AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
IntelligentTieringConfiguration.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/s3/model/IntelligentTieringFilter.h>
10#include <aws/s3/model/IntelligentTieringStatus.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/s3/model/Tiering.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Xml
20{
21 class XmlNode;
22} // namespace Xml
23} // namespace Utils
24namespace S3
25{
26namespace Model
27{
28
40 {
41 public:
42 AWS_S3_API IntelligentTieringConfiguration() = default;
45
46 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
47
48
50
53 inline const Aws::String& GetId() const { return m_id; }
54 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
55 template<typename IdT = Aws::String>
56 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
57 template<typename IdT = Aws::String>
58 IntelligentTieringConfiguration& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
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) { m_filterHasBeenSet = true; m_filter = std::forward<FilterT>(value); }
70 template<typename FilterT = IntelligentTieringFilter>
71 IntelligentTieringConfiguration& WithFilter(FilterT&& value) { SetFilter(std::forward<FilterT>(value)); return *this;}
73
75
78 inline IntelligentTieringStatus GetStatus() const { return m_status; }
79 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
80 inline void SetStatus(IntelligentTieringStatus value) { m_statusHasBeenSet = true; m_status = value; }
83
85
89 inline const Aws::Vector<Tiering>& GetTierings() const { return m_tierings; }
90 inline bool TieringsHasBeenSet() const { return m_tieringsHasBeenSet; }
91 template<typename TieringsT = Aws::Vector<Tiering>>
92 void SetTierings(TieringsT&& value) { m_tieringsHasBeenSet = true; m_tierings = std::forward<TieringsT>(value); }
93 template<typename TieringsT = Aws::Vector<Tiering>>
94 IntelligentTieringConfiguration& WithTierings(TieringsT&& value) { SetTierings(std::forward<TieringsT>(value)); return *this;}
95 template<typename TieringsT = Tiering>
96 IntelligentTieringConfiguration& AddTierings(TieringsT&& value) { m_tieringsHasBeenSet = true; m_tierings.emplace_back(std::forward<TieringsT>(value)); return *this; }
98 private:
99
100 Aws::String m_id;
101 bool m_idHasBeenSet = false;
102
104 bool m_filterHasBeenSet = false;
105
107 bool m_statusHasBeenSet = false;
108
109 Aws::Vector<Tiering> m_tierings;
110 bool m_tieringsHasBeenSet = false;
111 };
112
113} // namespace Model
114} // namespace S3
115} // namespace Aws
AWS_S3_API IntelligentTieringConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3_API IntelligentTieringConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
IntelligentTieringConfiguration & AddTierings(TieringsT &&value)
IntelligentTieringConfiguration & WithStatus(IntelligentTieringStatus value)
IntelligentTieringConfiguration & WithFilter(FilterT &&value)
IntelligentTieringConfiguration & WithId(IdT &&value)
IntelligentTieringConfiguration & WithTierings(TieringsT &&value)
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector