AWS SDK for C++

AWS SDK for C++ Version 1.11.695

Loading...
Searching...
No Matches
ObjectLockConfiguration.h
1
6#pragma once
7#include <aws/s3-crt/S3Crt_EXPORTS.h>
8#include <aws/s3-crt/model/ObjectLockEnabled.h>
9#include <aws/s3-crt/model/ObjectLockRule.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
29 public:
30 AWS_S3CRT_API ObjectLockConfiguration() = default;
33
34 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
35
37
42 inline ObjectLockEnabled GetObjectLockEnabled() const { return m_objectLockEnabled; }
43 inline bool ObjectLockEnabledHasBeenSet() const { return m_objectLockEnabledHasBeenSet; }
45 m_objectLockEnabledHasBeenSet = true;
46 m_objectLockEnabled = value;
47 }
50 return *this;
51 }
53
55
62 inline const ObjectLockRule& GetRule() const { return m_rule; }
63 inline bool RuleHasBeenSet() const { return m_ruleHasBeenSet; }
64 template <typename RuleT = ObjectLockRule>
65 void SetRule(RuleT&& value) {
66 m_ruleHasBeenSet = true;
67 m_rule = std::forward<RuleT>(value);
68 }
69 template <typename RuleT = ObjectLockRule>
71 SetRule(std::forward<RuleT>(value));
72 return *this;
73 }
75 private:
77 bool m_objectLockEnabledHasBeenSet = false;
78
79 ObjectLockRule m_rule;
80 bool m_ruleHasBeenSet = false;
81};
82
83} // namespace Model
84} // namespace S3Crt
85} // namespace Aws
AWS_S3CRT_API ObjectLockConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CRT_API ObjectLockConfiguration()=default
ObjectLockConfiguration & WithRule(RuleT &&value)
ObjectLockConfiguration & WithObjectLockEnabled(ObjectLockEnabled value)
AWS_S3CRT_API ObjectLockConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const