AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
LifecycleRuleAndOperator.h
1
6#pragma once
7#include <aws/s3control/S3Control_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/s3control/model/S3Tag.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Xml
18{
19 class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace S3Control
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_S3CONTROL_API LifecycleRuleAndOperator() = default;
37 AWS_S3CONTROL_API LifecycleRuleAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
39
40 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
41
42
44
47 inline const Aws::String& GetPrefix() const { return m_prefix; }
48 inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; }
49 template<typename PrefixT = Aws::String>
50 void SetPrefix(PrefixT&& value) { m_prefixHasBeenSet = true; m_prefix = std::forward<PrefixT>(value); }
51 template<typename PrefixT = Aws::String>
52 LifecycleRuleAndOperator& WithPrefix(PrefixT&& value) { SetPrefix(std::forward<PrefixT>(value)); return *this;}
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) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
64 template<typename TagsT = Aws::Vector<S3Tag>>
65 LifecycleRuleAndOperator& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
66 template<typename TagsT = S3Tag>
67 LifecycleRuleAndOperator& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
69
71
76 inline long long GetObjectSizeGreaterThan() const { return m_objectSizeGreaterThan; }
77 inline bool ObjectSizeGreaterThanHasBeenSet() const { return m_objectSizeGreaterThanHasBeenSet; }
78 inline void SetObjectSizeGreaterThan(long long value) { m_objectSizeGreaterThanHasBeenSet = true; m_objectSizeGreaterThan = value; }
79 inline LifecycleRuleAndOperator& WithObjectSizeGreaterThan(long long value) { SetObjectSizeGreaterThan(value); return *this;}
81
83
88 inline long long GetObjectSizeLessThan() const { return m_objectSizeLessThan; }
89 inline bool ObjectSizeLessThanHasBeenSet() const { return m_objectSizeLessThanHasBeenSet; }
90 inline void SetObjectSizeLessThan(long long value) { m_objectSizeLessThanHasBeenSet = true; m_objectSizeLessThan = value; }
91 inline LifecycleRuleAndOperator& WithObjectSizeLessThan(long long value) { SetObjectSizeLessThan(value); return *this;}
93 private:
94
95 Aws::String m_prefix;
96 bool m_prefixHasBeenSet = false;
97
98 Aws::Vector<S3Tag> m_tags;
99 bool m_tagsHasBeenSet = false;
100
101 long long m_objectSizeGreaterThan{0};
102 bool m_objectSizeGreaterThanHasBeenSet = false;
103
104 long long m_objectSizeLessThan{0};
105 bool m_objectSizeLessThanHasBeenSet = false;
106 };
107
108} // namespace Model
109} // namespace S3Control
110} // 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