AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Rule.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/s3/model/LifecycleExpiration.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/s3/model/ExpirationStatus.h>
11#include <aws/s3/model/Transition.h>
12#include <aws/s3/model/NoncurrentVersionTransition.h>
13#include <aws/s3/model/NoncurrentVersionExpiration.h>
14#include <aws/s3/model/AbortIncompleteMultipartUpload.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace S3
27{
28namespace Model
29{
30
42 class Rule
43 {
44 public:
45 AWS_S3_API Rule() = default;
46 AWS_S3_API Rule(const Aws::Utils::Xml::XmlNode& xmlNode);
47 AWS_S3_API Rule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
48
49 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
50
51
53
56 inline const LifecycleExpiration& GetExpiration() const { return m_expiration; }
57 inline bool ExpirationHasBeenSet() const { return m_expirationHasBeenSet; }
58 template<typename ExpirationT = LifecycleExpiration>
59 void SetExpiration(ExpirationT&& value) { m_expirationHasBeenSet = true; m_expiration = std::forward<ExpirationT>(value); }
60 template<typename ExpirationT = LifecycleExpiration>
61 Rule& WithExpiration(ExpirationT&& value) { SetExpiration(std::forward<ExpirationT>(value)); return *this;}
63
65
69 inline const Aws::String& GetID() const { return m_iD; }
70 inline bool IDHasBeenSet() const { return m_iDHasBeenSet; }
71 template<typename IDT = Aws::String>
72 void SetID(IDT&& value) { m_iDHasBeenSet = true; m_iD = std::forward<IDT>(value); }
73 template<typename IDT = Aws::String>
74 Rule& WithID(IDT&& value) { SetID(std::forward<IDT>(value)); return *this;}
76
78
86 inline const Aws::String& GetPrefix() const { return m_prefix; }
87 inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; }
88 template<typename PrefixT = Aws::String>
89 void SetPrefix(PrefixT&& value) { m_prefixHasBeenSet = true; m_prefix = std::forward<PrefixT>(value); }
90 template<typename PrefixT = Aws::String>
91 Rule& WithPrefix(PrefixT&& value) { SetPrefix(std::forward<PrefixT>(value)); return *this;}
93
95
99 inline ExpirationStatus GetStatus() const { return m_status; }
100 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
101 inline void SetStatus(ExpirationStatus value) { m_statusHasBeenSet = true; m_status = value; }
102 inline Rule& WithStatus(ExpirationStatus value) { SetStatus(value); return *this;}
104
106
112 inline const Transition& GetTransition() const { return m_transition; }
113 inline bool TransitionHasBeenSet() const { return m_transitionHasBeenSet; }
114 template<typename TransitionT = Transition>
115 void SetTransition(TransitionT&& value) { m_transitionHasBeenSet = true; m_transition = std::forward<TransitionT>(value); }
116 template<typename TransitionT = Transition>
117 Rule& WithTransition(TransitionT&& value) { SetTransition(std::forward<TransitionT>(value)); return *this;}
119
121
122 inline const NoncurrentVersionTransition& GetNoncurrentVersionTransition() const { return m_noncurrentVersionTransition; }
123 inline bool NoncurrentVersionTransitionHasBeenSet() const { return m_noncurrentVersionTransitionHasBeenSet; }
124 template<typename NoncurrentVersionTransitionT = NoncurrentVersionTransition>
125 void SetNoncurrentVersionTransition(NoncurrentVersionTransitionT&& value) { m_noncurrentVersionTransitionHasBeenSet = true; m_noncurrentVersionTransition = std::forward<NoncurrentVersionTransitionT>(value); }
126 template<typename NoncurrentVersionTransitionT = NoncurrentVersionTransition>
127 Rule& WithNoncurrentVersionTransition(NoncurrentVersionTransitionT&& value) { SetNoncurrentVersionTransition(std::forward<NoncurrentVersionTransitionT>(value)); return *this;}
129
131
132 inline const NoncurrentVersionExpiration& GetNoncurrentVersionExpiration() const { return m_noncurrentVersionExpiration; }
133 inline bool NoncurrentVersionExpirationHasBeenSet() const { return m_noncurrentVersionExpirationHasBeenSet; }
134 template<typename NoncurrentVersionExpirationT = NoncurrentVersionExpiration>
135 void SetNoncurrentVersionExpiration(NoncurrentVersionExpirationT&& value) { m_noncurrentVersionExpirationHasBeenSet = true; m_noncurrentVersionExpiration = std::forward<NoncurrentVersionExpirationT>(value); }
136 template<typename NoncurrentVersionExpirationT = NoncurrentVersionExpiration>
137 Rule& WithNoncurrentVersionExpiration(NoncurrentVersionExpirationT&& value) { SetNoncurrentVersionExpiration(std::forward<NoncurrentVersionExpirationT>(value)); return *this;}
139
141
142 inline const AbortIncompleteMultipartUpload& GetAbortIncompleteMultipartUpload() const { return m_abortIncompleteMultipartUpload; }
143 inline bool AbortIncompleteMultipartUploadHasBeenSet() const { return m_abortIncompleteMultipartUploadHasBeenSet; }
144 template<typename AbortIncompleteMultipartUploadT = AbortIncompleteMultipartUpload>
145 void SetAbortIncompleteMultipartUpload(AbortIncompleteMultipartUploadT&& value) { m_abortIncompleteMultipartUploadHasBeenSet = true; m_abortIncompleteMultipartUpload = std::forward<AbortIncompleteMultipartUploadT>(value); }
146 template<typename AbortIncompleteMultipartUploadT = AbortIncompleteMultipartUpload>
147 Rule& WithAbortIncompleteMultipartUpload(AbortIncompleteMultipartUploadT&& value) { SetAbortIncompleteMultipartUpload(std::forward<AbortIncompleteMultipartUploadT>(value)); return *this;}
149 private:
150
151 LifecycleExpiration m_expiration;
152 bool m_expirationHasBeenSet = false;
153
154 Aws::String m_iD;
155 bool m_iDHasBeenSet = false;
156
157 Aws::String m_prefix;
158 bool m_prefixHasBeenSet = false;
159
161 bool m_statusHasBeenSet = false;
162
163 Transition m_transition;
164 bool m_transitionHasBeenSet = false;
165
166 NoncurrentVersionTransition m_noncurrentVersionTransition;
167 bool m_noncurrentVersionTransitionHasBeenSet = false;
168
169 NoncurrentVersionExpiration m_noncurrentVersionExpiration;
170 bool m_noncurrentVersionExpirationHasBeenSet = false;
171
172 AbortIncompleteMultipartUpload m_abortIncompleteMultipartUpload;
173 bool m_abortIncompleteMultipartUploadHasBeenSet = false;
174 };
175
176} // namespace Model
177} // namespace S3
178} // namespace Aws
const Aws::String & GetID() const
Definition Rule.h:69
AWS_S3_API Rule()=default
Rule & WithNoncurrentVersionTransition(NoncurrentVersionTransitionT &&value)
Definition Rule.h:127
Rule & WithID(IDT &&value)
Definition Rule.h:74
Rule & WithPrefix(PrefixT &&value)
Definition Rule.h:91
const Aws::String & GetPrefix() const
Definition Rule.h:86
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
void SetExpiration(ExpirationT &&value)
Definition Rule.h:59
void SetID(IDT &&value)
Definition Rule.h:72
bool StatusHasBeenSet() const
Definition Rule.h:100
Rule & WithAbortIncompleteMultipartUpload(AbortIncompleteMultipartUploadT &&value)
Definition Rule.h:147
const Transition & GetTransition() const
Definition Rule.h:112
const LifecycleExpiration & GetExpiration() const
Definition Rule.h:56
bool PrefixHasBeenSet() const
Definition Rule.h:87
Rule & WithTransition(TransitionT &&value)
Definition Rule.h:117
bool IDHasBeenSet() const
Definition Rule.h:70
const NoncurrentVersionTransition & GetNoncurrentVersionTransition() const
Definition Rule.h:122
void SetNoncurrentVersionExpiration(NoncurrentVersionExpirationT &&value)
Definition Rule.h:135
Rule & WithExpiration(ExpirationT &&value)
Definition Rule.h:61
const AbortIncompleteMultipartUpload & GetAbortIncompleteMultipartUpload() const
Definition Rule.h:142
void SetStatus(ExpirationStatus value)
Definition Rule.h:101
const NoncurrentVersionExpiration & GetNoncurrentVersionExpiration() const
Definition Rule.h:132
bool TransitionHasBeenSet() const
Definition Rule.h:113
bool NoncurrentVersionTransitionHasBeenSet() const
Definition Rule.h:123
AWS_S3_API Rule(const Aws::Utils::Xml::XmlNode &xmlNode)
bool ExpirationHasBeenSet() const
Definition Rule.h:57
void SetAbortIncompleteMultipartUpload(AbortIncompleteMultipartUploadT &&value)
Definition Rule.h:145
bool AbortIncompleteMultipartUploadHasBeenSet() const
Definition Rule.h:143
void SetTransition(TransitionT &&value)
Definition Rule.h:115
AWS_S3_API Rule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool NoncurrentVersionExpirationHasBeenSet() const
Definition Rule.h:133
ExpirationStatus GetStatus() const
Definition Rule.h:99
Rule & WithNoncurrentVersionExpiration(NoncurrentVersionExpirationT &&value)
Definition Rule.h:137
void SetPrefix(PrefixT &&value)
Definition Rule.h:89
void SetNoncurrentVersionTransition(NoncurrentVersionTransitionT &&value)
Definition Rule.h:125
Rule & WithStatus(ExpirationStatus value)
Definition Rule.h:102
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String