AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
ObjectLockRetention.h
1
6#pragma once
7#include <aws/s3-crt/S3Crt_EXPORTS.h>
8#include <aws/s3-crt/model/ObjectLockRetentionMode.h>
9#include <aws/core/utils/DateTime.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Xml
17{
18 class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace S3Crt
22{
23namespace Model
24{
25
32 {
33 public:
34 AWS_S3CRT_API ObjectLockRetention();
35 AWS_S3CRT_API ObjectLockRetention(const Aws::Utils::Xml::XmlNode& xmlNode);
37
38 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
39
40
42
45 inline const ObjectLockRetentionMode& GetMode() const{ return m_mode; }
46 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
47 inline void SetMode(const ObjectLockRetentionMode& value) { m_modeHasBeenSet = true; m_mode = value; }
48 inline void SetMode(ObjectLockRetentionMode&& value) { m_modeHasBeenSet = true; m_mode = std::move(value); }
49 inline ObjectLockRetention& WithMode(const ObjectLockRetentionMode& value) { SetMode(value); return *this;}
50 inline ObjectLockRetention& WithMode(ObjectLockRetentionMode&& value) { SetMode(std::move(value)); return *this;}
52
54
57 inline const Aws::Utils::DateTime& GetRetainUntilDate() const{ return m_retainUntilDate; }
58 inline bool RetainUntilDateHasBeenSet() const { return m_retainUntilDateHasBeenSet; }
59 inline void SetRetainUntilDate(const Aws::Utils::DateTime& value) { m_retainUntilDateHasBeenSet = true; m_retainUntilDate = value; }
60 inline void SetRetainUntilDate(Aws::Utils::DateTime&& value) { m_retainUntilDateHasBeenSet = true; m_retainUntilDate = std::move(value); }
62 inline ObjectLockRetention& WithRetainUntilDate(Aws::Utils::DateTime&& value) { SetRetainUntilDate(std::move(value)); return *this;}
64 private:
65
67 bool m_modeHasBeenSet = false;
68
69 Aws::Utils::DateTime m_retainUntilDate;
70 bool m_retainUntilDateHasBeenSet = false;
71 };
72
73} // namespace Model
74} // namespace S3Crt
75} // namespace Aws
const ObjectLockRetentionMode & GetMode() const
AWS_S3CRT_API ObjectLockRetention & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
ObjectLockRetention & WithMode(const ObjectLockRetentionMode &value)
ObjectLockRetention & WithRetainUntilDate(Aws::Utils::DateTime &&value)
AWS_S3CRT_API ObjectLockRetention(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetMode(const ObjectLockRetentionMode &value)
ObjectLockRetention & WithRetainUntilDate(const Aws::Utils::DateTime &value)
const Aws::Utils::DateTime & GetRetainUntilDate() const
void SetMode(ObjectLockRetentionMode &&value)
void SetRetainUntilDate(Aws::Utils::DateTime &&value)
void SetRetainUntilDate(const Aws::Utils::DateTime &value)
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
ObjectLockRetention & WithMode(ObjectLockRetentionMode &&value)