AWS SDK for C++

AWS SDK for C++ Version 1.11.832

Loading...
Searching...
No Matches
AnnotationEntry.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/s3-crt/S3Crt_EXPORTS.h>
11#include <aws/s3-crt/model/ChecksumAlgorithm.h>
12#include <aws/s3-crt/model/ReplicationStatus.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace S3Crt {
23namespace Model {
24
34 public:
35 AWS_S3CRT_API AnnotationEntry() = default;
36 AWS_S3CRT_API AnnotationEntry(const Aws::Utils::Xml::XmlNode& xmlNode);
37 AWS_S3CRT_API AnnotationEntry& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
38
39 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
40
42
45 inline const Aws::String& GetAnnotationName() const { return m_annotationName; }
46 inline bool AnnotationNameHasBeenSet() const { return m_annotationNameHasBeenSet; }
47 template <typename AnnotationNameT = Aws::String>
48 void SetAnnotationName(AnnotationNameT&& value) {
49 m_annotationNameHasBeenSet = true;
50 m_annotationName = std::forward<AnnotationNameT>(value);
51 }
52 template <typename AnnotationNameT = Aws::String>
53 AnnotationEntry& WithAnnotationName(AnnotationNameT&& value) {
54 SetAnnotationName(std::forward<AnnotationNameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::Utils::DateTime& GetLastModified() const { return m_lastModified; }
64 inline bool LastModifiedHasBeenSet() const { return m_lastModifiedHasBeenSet; }
65 template <typename LastModifiedT = Aws::Utils::DateTime>
66 void SetLastModified(LastModifiedT&& value) {
67 m_lastModifiedHasBeenSet = true;
68 m_lastModified = std::forward<LastModifiedT>(value);
69 }
70 template <typename LastModifiedT = Aws::Utils::DateTime>
71 AnnotationEntry& WithLastModified(LastModifiedT&& value) {
72 SetLastModified(std::forward<LastModifiedT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetETag() const { return m_eTag; }
82 inline bool ETagHasBeenSet() const { return m_eTagHasBeenSet; }
83 template <typename ETagT = Aws::String>
84 void SetETag(ETagT&& value) {
85 m_eTagHasBeenSet = true;
86 m_eTag = std::forward<ETagT>(value);
87 }
88 template <typename ETagT = Aws::String>
89 AnnotationEntry& WithETag(ETagT&& value) {
90 SetETag(std::forward<ETagT>(value));
91 return *this;
92 }
94
96
99 inline const Aws::Vector<ChecksumAlgorithm>& GetChecksumAlgorithm() const { return m_checksumAlgorithm; }
100 inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
101 template <typename ChecksumAlgorithmT = Aws::Vector<ChecksumAlgorithm>>
102 void SetChecksumAlgorithm(ChecksumAlgorithmT&& value) {
103 m_checksumAlgorithmHasBeenSet = true;
104 m_checksumAlgorithm = std::forward<ChecksumAlgorithmT>(value);
105 }
106 template <typename ChecksumAlgorithmT = Aws::Vector<ChecksumAlgorithm>>
107 AnnotationEntry& WithChecksumAlgorithm(ChecksumAlgorithmT&& value) {
108 SetChecksumAlgorithm(std::forward<ChecksumAlgorithmT>(value));
109 return *this;
110 }
112 m_checksumAlgorithmHasBeenSet = true;
113 m_checksumAlgorithm.push_back(value);
114 return *this;
115 }
117
119
122 inline long long GetSize() const { return m_size; }
123 inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
124 inline void SetSize(long long value) {
125 m_sizeHasBeenSet = true;
126 m_size = value;
127 }
128 inline AnnotationEntry& WithSize(long long value) {
129 SetSize(value);
130 return *this;
131 }
133
135
138 inline ReplicationStatus GetReplicationStatus() const { return m_replicationStatus; }
139 inline bool ReplicationStatusHasBeenSet() const { return m_replicationStatusHasBeenSet; }
141 m_replicationStatusHasBeenSet = true;
142 m_replicationStatus = value;
143 }
146 return *this;
147 }
149 private:
150 Aws::String m_annotationName;
151
152 Aws::Utils::DateTime m_lastModified{};
153
154 Aws::String m_eTag;
155
156 Aws::Vector<ChecksumAlgorithm> m_checksumAlgorithm;
157
158 long long m_size{0};
159
161 bool m_annotationNameHasBeenSet = false;
162 bool m_lastModifiedHasBeenSet = false;
163 bool m_eTagHasBeenSet = false;
164 bool m_checksumAlgorithmHasBeenSet = false;
165 bool m_sizeHasBeenSet = false;
166 bool m_replicationStatusHasBeenSet = false;
167};
168
169} // namespace Model
170} // namespace S3Crt
171} // namespace Aws
void SetETag(ETagT &&value)
bool ETagHasBeenSet() const
AWS_S3CRT_API AnnotationEntry & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
AnnotationEntry & WithSize(long long value)
bool ChecksumAlgorithmHasBeenSet() const
void SetAnnotationName(AnnotationNameT &&value)
const Aws::Vector< ChecksumAlgorithm > & GetChecksumAlgorithm() const
const Aws::Utils::DateTime & GetLastModified() const
AWS_S3CRT_API AnnotationEntry(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetSize(long long value)
AnnotationEntry & WithChecksumAlgorithm(ChecksumAlgorithmT &&value)
void SetLastModified(LastModifiedT &&value)
AnnotationEntry & WithETag(ETagT &&value)
void SetReplicationStatus(ReplicationStatus value)
bool LastModifiedHasBeenSet() const
bool ReplicationStatusHasBeenSet() const
bool AnnotationNameHasBeenSet() const
AWS_S3CRT_API AnnotationEntry()=default
ReplicationStatus GetReplicationStatus() const
const Aws::String & GetAnnotationName() const
void SetChecksumAlgorithm(ChecksumAlgorithmT &&value)
AnnotationEntry & WithLastModified(LastModifiedT &&value)
bool SizeHasBeenSet() const
AnnotationEntry & WithAnnotationName(AnnotationNameT &&value)
AnnotationEntry & AddChecksumAlgorithm(ChecksumAlgorithm value)
const Aws::String & GetETag() const
AnnotationEntry & WithReplicationStatus(ReplicationStatus value)
long long GetSize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector