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/AbortIncompleteMultipartUpload.h>
11#include <aws/s3control/model/ExpirationStatus.h>
12#include <aws/s3control/model/LifecycleExpiration.h>
13#include <aws/s3control/model/LifecycleRuleFilter.h>
14#include <aws/s3control/model/NoncurrentVersionExpiration.h>
15#include <aws/s3control/model/NoncurrentVersionTransition.h>
16#include <aws/s3control/model/Transition.h>
50 template <
typename ExpirationT = LifecycleExpiration>
52 m_expirationHasBeenSet =
true;
53 m_expiration = std::forward<ExpirationT>(value);
55 template <
typename ExpirationT = LifecycleExpiration>
69 template <
typename IDT = Aws::String>
71 m_iDHasBeenSet =
true;
72 m_iD = std::forward<IDT>(value);
74 template <
typename IDT = Aws::String>
76 SetID(std::forward<IDT>(value));
87 template <
typename FilterT = LifecycleRuleFilter>
89 m_filterHasBeenSet =
true;
90 m_filter = std::forward<FilterT>(value);
92 template <
typename FilterT = LifecycleRuleFilter>
107 m_statusHasBeenSet =
true;
124 template <
typename TransitionsT = Aws::Vector<Transition>>
126 m_transitionsHasBeenSet =
true;
127 m_transitions = std::forward<TransitionsT>(value);
129 template <
typename TransitionsT = Aws::Vector<Transition>>
134 template <
typename TransitionsT = Transition>
136 m_transitionsHasBeenSet =
true;
137 m_transitions.emplace_back(std::forward<TransitionsT>(value));
153 template <
typename NoncurrentVersionTransitionsT = Aws::Vector<NoncurrentVersionTransition>>
155 m_noncurrentVersionTransitionsHasBeenSet =
true;
156 m_noncurrentVersionTransitions = std::forward<NoncurrentVersionTransitionsT>(value);
158 template <
typename NoncurrentVersionTransitionsT = Aws::Vector<NoncurrentVersionTransition>>
163 template <
typename NoncurrentVersionTransitionsT = NoncurrentVersionTransition>
165 m_noncurrentVersionTransitionsHasBeenSet =
true;
166 m_noncurrentVersionTransitions.emplace_back(std::forward<NoncurrentVersionTransitionsT>(value));
177 template <
typename NoncurrentVersionExpirationT = NoncurrentVersionExpiration>
179 m_noncurrentVersionExpirationHasBeenSet =
true;
180 m_noncurrentVersionExpiration = std::forward<NoncurrentVersionExpirationT>(value);
182 template <
typename NoncurrentVersionExpirationT = NoncurrentVersionExpiration>
200 template <
typename AbortIncompleteMultipartUploadT = AbortIncompleteMultipartUpload>
202 m_abortIncompleteMultipartUploadHasBeenSet =
true;
203 m_abortIncompleteMultipartUpload = std::forward<AbortIncompleteMultipartUploadT>(value);
205 template <
typename AbortIncompleteMultipartUploadT = AbortIncompleteMultipartUpload>
224 NoncurrentVersionExpiration m_noncurrentVersionExpiration;
226 AbortIncompleteMultipartUpload m_abortIncompleteMultipartUpload;
227 bool m_expirationHasBeenSet =
false;
228 bool m_iDHasBeenSet =
false;
229 bool m_filterHasBeenSet =
false;
230 bool m_statusHasBeenSet =
false;
231 bool m_transitionsHasBeenSet =
false;
232 bool m_noncurrentVersionTransitionsHasBeenSet =
false;
233 bool m_noncurrentVersionExpirationHasBeenSet =
false;
234 bool m_abortIncompleteMultipartUploadHasBeenSet =
false;
const AbortIncompleteMultipartUpload & GetAbortIncompleteMultipartUpload() const
AWS_S3CONTROL_API LifecycleRule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetFilter(FilterT &&value)
const NoncurrentVersionExpiration & GetNoncurrentVersionExpiration() const
void SetTransitions(TransitionsT &&value)
LifecycleRule & WithNoncurrentVersionExpiration(NoncurrentVersionExpirationT &&value)
void SetStatus(ExpirationStatus value)
bool ExpirationHasBeenSet() const
LifecycleRule & WithFilter(FilterT &&value)
bool StatusHasBeenSet() const
bool TransitionsHasBeenSet() const
ExpirationStatus GetStatus() const
bool IDHasBeenSet() const
LifecycleRule & WithID(IDT &&value)
const LifecycleRuleFilter & GetFilter() const
bool AbortIncompleteMultipartUploadHasBeenSet() const
LifecycleRule & AddNoncurrentVersionTransitions(NoncurrentVersionTransitionsT &&value)
AWS_S3CONTROL_API LifecycleRule()=default
void SetExpiration(ExpirationT &&value)
bool NoncurrentVersionExpirationHasBeenSet() const
const Aws::Vector< NoncurrentVersionTransition > & GetNoncurrentVersionTransitions() const
LifecycleRule & WithTransitions(TransitionsT &&value)
void SetNoncurrentVersionTransitions(NoncurrentVersionTransitionsT &&value)
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
LifecycleRule & WithAbortIncompleteMultipartUpload(AbortIncompleteMultipartUploadT &&value)
AWS_S3CONTROL_API LifecycleRule(const Aws::Utils::Xml::XmlNode &xmlNode)
bool NoncurrentVersionTransitionsHasBeenSet() const
LifecycleRule & AddTransitions(TransitionsT &&value)
void SetNoncurrentVersionExpiration(NoncurrentVersionExpirationT &&value)
const Aws::Vector< Transition > & GetTransitions() const
const LifecycleExpiration & GetExpiration() const
LifecycleRule & WithNoncurrentVersionTransitions(NoncurrentVersionTransitionsT &&value)
void SetAbortIncompleteMultipartUpload(AbortIncompleteMultipartUploadT &&value)
const Aws::String & GetID() const
bool FilterHasBeenSet() const
LifecycleRule & WithExpiration(ExpirationT &&value)
LifecycleRule & WithStatus(ExpirationStatus value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector