AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
S3Retention.h
1
6#pragma once
7#include <aws/s3control/S3Control_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/s3control/model/S3ObjectLockRetentionMode.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Xml
17{
18 class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace S3Control
22{
23namespace Model
24{
25
38 {
39 public:
40 AWS_S3CONTROL_API S3Retention();
41 AWS_S3CONTROL_API S3Retention(const Aws::Utils::Xml::XmlNode& xmlNode);
42 AWS_S3CONTROL_API S3Retention& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
43
44 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
45
46
48
52 inline const Aws::Utils::DateTime& GetRetainUntilDate() const{ return m_retainUntilDate; }
53 inline bool RetainUntilDateHasBeenSet() const { return m_retainUntilDateHasBeenSet; }
54 inline void SetRetainUntilDate(const Aws::Utils::DateTime& value) { m_retainUntilDateHasBeenSet = true; m_retainUntilDate = value; }
55 inline void SetRetainUntilDate(Aws::Utils::DateTime&& value) { m_retainUntilDateHasBeenSet = true; m_retainUntilDate = std::move(value); }
56 inline S3Retention& WithRetainUntilDate(const Aws::Utils::DateTime& value) { SetRetainUntilDate(value); return *this;}
57 inline S3Retention& WithRetainUntilDate(Aws::Utils::DateTime&& value) { SetRetainUntilDate(std::move(value)); return *this;}
59
61
65 inline const S3ObjectLockRetentionMode& GetMode() const{ return m_mode; }
66 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
67 inline void SetMode(const S3ObjectLockRetentionMode& value) { m_modeHasBeenSet = true; m_mode = value; }
68 inline void SetMode(S3ObjectLockRetentionMode&& value) { m_modeHasBeenSet = true; m_mode = std::move(value); }
69 inline S3Retention& WithMode(const S3ObjectLockRetentionMode& value) { SetMode(value); return *this;}
70 inline S3Retention& WithMode(S3ObjectLockRetentionMode&& value) { SetMode(std::move(value)); return *this;}
72 private:
73
74 Aws::Utils::DateTime m_retainUntilDate;
75 bool m_retainUntilDateHasBeenSet = false;
76
78 bool m_modeHasBeenSet = false;
79 };
80
81} // namespace Model
82} // namespace S3Control
83} // namespace Aws
void SetRetainUntilDate(Aws::Utils::DateTime &&value)
Definition S3Retention.h:55
void SetRetainUntilDate(const Aws::Utils::DateTime &value)
Definition S3Retention.h:54
S3Retention & WithRetainUntilDate(const Aws::Utils::DateTime &value)
Definition S3Retention.h:56
S3Retention & WithMode(const S3ObjectLockRetentionMode &value)
Definition S3Retention.h:69
void SetMode(S3ObjectLockRetentionMode &&value)
Definition S3Retention.h:68
S3Retention & WithRetainUntilDate(Aws::Utils::DateTime &&value)
Definition S3Retention.h:57
const Aws::Utils::DateTime & GetRetainUntilDate() const
Definition S3Retention.h:52
const S3ObjectLockRetentionMode & GetMode() const
Definition S3Retention.h:65
AWS_S3CONTROL_API S3Retention(const Aws::Utils::Xml::XmlNode &xmlNode)
S3Retention & WithMode(S3ObjectLockRetentionMode &&value)
Definition S3Retention.h:70
void SetMode(const S3ObjectLockRetentionMode &value)
Definition S3Retention.h:67
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AWS_S3CONTROL_API S3Retention & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)