AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
LifecycleRuleAndOperator.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/S3_EXPORTS.h>
10#include <aws/s3/model/Tag.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace S3 {
21namespace Model {
22
31 public:
32 AWS_S3_API LifecycleRuleAndOperator() = default;
35
36 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
37
39
42 inline const Aws::String& GetPrefix() const { return m_prefix; }
43 inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; }
44 template <typename PrefixT = Aws::String>
45 void SetPrefix(PrefixT&& value) {
46 m_prefixHasBeenSet = true;
47 m_prefix = std::forward<PrefixT>(value);
48 }
49 template <typename PrefixT = Aws::String>
51 SetPrefix(std::forward<PrefixT>(value));
52 return *this;
53 }
55
57
61 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
62 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
63 template <typename TagsT = Aws::Vector<Tag>>
64 void SetTags(TagsT&& value) {
65 m_tagsHasBeenSet = true;
66 m_tags = std::forward<TagsT>(value);
67 }
68 template <typename TagsT = Aws::Vector<Tag>>
70 SetTags(std::forward<TagsT>(value));
71 return *this;
72 }
73 template <typename TagsT = Tag>
75 m_tagsHasBeenSet = true;
76 m_tags.emplace_back(std::forward<TagsT>(value));
77 return *this;
78 }
80
82
85 inline long long GetObjectSizeGreaterThan() const { return m_objectSizeGreaterThan; }
86 inline bool ObjectSizeGreaterThanHasBeenSet() const { return m_objectSizeGreaterThanHasBeenSet; }
87 inline void SetObjectSizeGreaterThan(long long value) {
88 m_objectSizeGreaterThanHasBeenSet = true;
89 m_objectSizeGreaterThan = value;
90 }
93 return *this;
94 }
96
98
101 inline long long GetObjectSizeLessThan() const { return m_objectSizeLessThan; }
102 inline bool ObjectSizeLessThanHasBeenSet() const { return m_objectSizeLessThanHasBeenSet; }
103 inline void SetObjectSizeLessThan(long long value) {
104 m_objectSizeLessThanHasBeenSet = true;
105 m_objectSizeLessThan = value;
106 }
109 return *this;
110 }
112 private:
113 Aws::String m_prefix;
114
115 Aws::Vector<Tag> m_tags;
116
117 long long m_objectSizeGreaterThan{0};
118
119 long long m_objectSizeLessThan{0};
120 bool m_prefixHasBeenSet = false;
121 bool m_tagsHasBeenSet = false;
122 bool m_objectSizeGreaterThanHasBeenSet = false;
123 bool m_objectSizeLessThanHasBeenSet = false;
124};
125
126} // namespace Model
127} // namespace S3
128} // namespace Aws
AWS_S3_API LifecycleRuleAndOperator()=default
LifecycleRuleAndOperator & WithObjectSizeLessThan(long long value)
LifecycleRuleAndOperator & AddTags(TagsT &&value)
AWS_S3_API LifecycleRuleAndOperator(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Tag > & GetTags() const
AWS_S3_API LifecycleRuleAndOperator & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
LifecycleRuleAndOperator & WithTags(TagsT &&value)
LifecycleRuleAndOperator & WithPrefix(PrefixT &&value)
LifecycleRuleAndOperator & WithObjectSizeGreaterThan(long long value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector