AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
LifecycleExpiration.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/s3control/S3Control_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Xml {
15class XmlNode;
16} // namespace Xml
17} // namespace Utils
18namespace S3Control {
19namespace Model {
20
28 public:
29 AWS_S3CONTROL_API LifecycleExpiration() = default;
30 AWS_S3CONTROL_API LifecycleExpiration(const Aws::Utils::Xml::XmlNode& xmlNode);
31 AWS_S3CONTROL_API LifecycleExpiration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
32
33 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
34
36
40 inline const Aws::Utils::DateTime& GetDate() const { return m_date; }
41 inline bool DateHasBeenSet() const { return m_dateHasBeenSet; }
42 template <typename DateT = Aws::Utils::DateTime>
43 void SetDate(DateT&& value) {
44 m_dateHasBeenSet = true;
45 m_date = std::forward<DateT>(value);
46 }
47 template <typename DateT = Aws::Utils::DateTime>
48 LifecycleExpiration& WithDate(DateT&& value) {
49 SetDate(std::forward<DateT>(value));
50 return *this;
51 }
53
55
59 inline int GetDays() const { return m_days; }
60 inline bool DaysHasBeenSet() const { return m_daysHasBeenSet; }
61 inline void SetDays(int value) {
62 m_daysHasBeenSet = true;
63 m_days = value;
64 }
65 inline LifecycleExpiration& WithDays(int value) {
66 SetDays(value);
67 return *this;
68 }
70
72
80 inline bool GetExpiredObjectDeleteMarker() const { return m_expiredObjectDeleteMarker; }
81 inline bool ExpiredObjectDeleteMarkerHasBeenSet() const { return m_expiredObjectDeleteMarkerHasBeenSet; }
82 inline void SetExpiredObjectDeleteMarker(bool value) {
83 m_expiredObjectDeleteMarkerHasBeenSet = true;
84 m_expiredObjectDeleteMarker = value;
85 }
88 return *this;
89 }
91 private:
92 Aws::Utils::DateTime m_date{};
93
94 int m_days{0};
95
96 bool m_expiredObjectDeleteMarker{false};
97 bool m_dateHasBeenSet = false;
98 bool m_daysHasBeenSet = false;
99 bool m_expiredObjectDeleteMarkerHasBeenSet = false;
100};
101
102} // namespace Model
103} // namespace S3Control
104} // namespace Aws
const Aws::Utils::DateTime & GetDate() const
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
LifecycleExpiration & WithDate(DateT &&value)
AWS_S3CONTROL_API LifecycleExpiration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CONTROL_API LifecycleExpiration()=default
AWS_S3CONTROL_API LifecycleExpiration(const Aws::Utils::Xml::XmlNode &xmlNode)
LifecycleExpiration & WithDays(int value)
LifecycleExpiration & WithExpiredObjectDeleteMarker(bool value)