AWS SDK for C++

AWS SDK for C++ Version 1.11.718

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/s3control/S3Control_EXPORTS.h>
10#include <aws/s3control/model/S3Tag.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace S3Control {
21namespace Model {
22
30 public:
31 AWS_S3CONTROL_API LifecycleRuleAndOperator() = default;
32 AWS_S3CONTROL_API LifecycleRuleAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
34
35 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
36
38
41 inline const Aws::String& GetPrefix() const { return m_prefix; }
42 inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; }
43 template <typename PrefixT = Aws::String>
44 void SetPrefix(PrefixT&& value) {
45 m_prefixHasBeenSet = true;
46 m_prefix = std::forward<PrefixT>(value);
47 }
48 template <typename PrefixT = Aws::String>
50 SetPrefix(std::forward<PrefixT>(value));
51 return *this;
52 }
54
56
60 inline const Aws::Vector<S3Tag>& GetTags() const { return m_tags; }
61 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
62 template <typename TagsT = Aws::Vector<S3Tag>>
63 void SetTags(TagsT&& value) {
64 m_tagsHasBeenSet = true;
65 m_tags = std::forward<TagsT>(value);
66 }
67 template <typename TagsT = Aws::Vector<S3Tag>>
69 SetTags(std::forward<TagsT>(value));
70 return *this;
71 }
72 template <typename TagsT = S3Tag>
74 m_tagsHasBeenSet = true;
75 m_tags.emplace_back(std::forward<TagsT>(value));
76 return *this;
77 }
79
81
86 inline long long GetObjectSizeGreaterThan() const { return m_objectSizeGreaterThan; }
87 inline bool ObjectSizeGreaterThanHasBeenSet() const { return m_objectSizeGreaterThanHasBeenSet; }
88 inline void SetObjectSizeGreaterThan(long long value) {
89 m_objectSizeGreaterThanHasBeenSet = true;
90 m_objectSizeGreaterThan = value;
91 }
94 return *this;
95 }
97
99
104 inline long long GetObjectSizeLessThan() const { return m_objectSizeLessThan; }
105 inline bool ObjectSizeLessThanHasBeenSet() const { return m_objectSizeLessThanHasBeenSet; }
106 inline void SetObjectSizeLessThan(long long value) {
107 m_objectSizeLessThanHasBeenSet = true;
108 m_objectSizeLessThan = value;
109 }
112 return *this;
113 }
115 private:
116 Aws::String m_prefix;
117
118 Aws::Vector<S3Tag> m_tags;
119
120 long long m_objectSizeGreaterThan{0};
121
122 long long m_objectSizeLessThan{0};
123 bool m_prefixHasBeenSet = false;
124 bool m_tagsHasBeenSet = false;
125 bool m_objectSizeGreaterThanHasBeenSet = false;
126 bool m_objectSizeLessThanHasBeenSet = false;
127};
128
129} // namespace Model
130} // namespace S3Control
131} // namespace Aws
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
LifecycleRuleAndOperator & WithObjectSizeLessThan(long long value)
LifecycleRuleAndOperator & WithTags(TagsT &&value)
LifecycleRuleAndOperator & WithPrefix(PrefixT &&value)
AWS_S3CONTROL_API LifecycleRuleAndOperator(const Aws::Utils::Xml::XmlNode &xmlNode)
LifecycleRuleAndOperator & WithObjectSizeGreaterThan(long long value)
AWS_S3CONTROL_API LifecycleRuleAndOperator & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CONTROL_API LifecycleRuleAndOperator()=default
LifecycleRuleAndOperator & AddTags(TagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector