AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
BucketLifecycleConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/s3-crt/S3Crt_EXPORTS.h>
9#include <aws/s3-crt/model/LifecycleRule.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace S3Crt {
20namespace Model {
21
32 public:
33 AWS_S3CRT_API BucketLifecycleConfiguration() = default;
36
37 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
38
40
43 inline const Aws::Vector<LifecycleRule>& GetRules() const { return m_rules; }
44 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
45 template <typename RulesT = Aws::Vector<LifecycleRule>>
46 void SetRules(RulesT&& value) {
47 m_rulesHasBeenSet = true;
48 m_rules = std::forward<RulesT>(value);
49 }
50 template <typename RulesT = Aws::Vector<LifecycleRule>>
52 SetRules(std::forward<RulesT>(value));
53 return *this;
54 }
55 template <typename RulesT = LifecycleRule>
57 m_rulesHasBeenSet = true;
58 m_rules.emplace_back(std::forward<RulesT>(value));
59 return *this;
60 }
62 private:
64 bool m_rulesHasBeenSet = false;
65};
66
67} // namespace Model
68} // namespace S3Crt
69} // namespace Aws
AWS_S3CRT_API BucketLifecycleConfiguration()=default
BucketLifecycleConfiguration & AddRules(RulesT &&value)
BucketLifecycleConfiguration & WithRules(RulesT &&value)
AWS_S3CRT_API BucketLifecycleConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CRT_API BucketLifecycleConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< LifecycleRule > & GetRules() const
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
std::vector< T, Aws::Allocator< T > > Vector