AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
S3ObjectMetadata.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/s3control/S3Control_EXPORTS.h>
11#include <aws/s3control/model/S3SSEAlgorithm.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace S3Control {
22namespace Model {
23
30 public:
31 AWS_S3CONTROL_API S3ObjectMetadata() = default;
32 AWS_S3CONTROL_API S3ObjectMetadata(const Aws::Utils::Xml::XmlNode& xmlNode);
33 AWS_S3CONTROL_API S3ObjectMetadata& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
34
35 AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
36
38
41 inline const Aws::String& GetCacheControl() const { return m_cacheControl; }
42 inline bool CacheControlHasBeenSet() const { return m_cacheControlHasBeenSet; }
43 template <typename CacheControlT = Aws::String>
44 void SetCacheControl(CacheControlT&& value) {
45 m_cacheControlHasBeenSet = true;
46 m_cacheControl = std::forward<CacheControlT>(value);
47 }
48 template <typename CacheControlT = Aws::String>
49 S3ObjectMetadata& WithCacheControl(CacheControlT&& value) {
50 SetCacheControl(std::forward<CacheControlT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetContentDisposition() const { return m_contentDisposition; }
60 inline bool ContentDispositionHasBeenSet() const { return m_contentDispositionHasBeenSet; }
61 template <typename ContentDispositionT = Aws::String>
62 void SetContentDisposition(ContentDispositionT&& value) {
63 m_contentDispositionHasBeenSet = true;
64 m_contentDisposition = std::forward<ContentDispositionT>(value);
65 }
66 template <typename ContentDispositionT = Aws::String>
67 S3ObjectMetadata& WithContentDisposition(ContentDispositionT&& value) {
68 SetContentDisposition(std::forward<ContentDispositionT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetContentEncoding() const { return m_contentEncoding; }
78 inline bool ContentEncodingHasBeenSet() const { return m_contentEncodingHasBeenSet; }
79 template <typename ContentEncodingT = Aws::String>
80 void SetContentEncoding(ContentEncodingT&& value) {
81 m_contentEncodingHasBeenSet = true;
82 m_contentEncoding = std::forward<ContentEncodingT>(value);
83 }
84 template <typename ContentEncodingT = Aws::String>
85 S3ObjectMetadata& WithContentEncoding(ContentEncodingT&& value) {
86 SetContentEncoding(std::forward<ContentEncodingT>(value));
87 return *this;
88 }
90
92
95 inline const Aws::String& GetContentLanguage() const { return m_contentLanguage; }
96 inline bool ContentLanguageHasBeenSet() const { return m_contentLanguageHasBeenSet; }
97 template <typename ContentLanguageT = Aws::String>
98 void SetContentLanguage(ContentLanguageT&& value) {
99 m_contentLanguageHasBeenSet = true;
100 m_contentLanguage = std::forward<ContentLanguageT>(value);
101 }
102 template <typename ContentLanguageT = Aws::String>
103 S3ObjectMetadata& WithContentLanguage(ContentLanguageT&& value) {
104 SetContentLanguage(std::forward<ContentLanguageT>(value));
105 return *this;
106 }
108
110
113 inline const Aws::Map<Aws::String, Aws::String>& GetUserMetadata() const { return m_userMetadata; }
114 inline bool UserMetadataHasBeenSet() const { return m_userMetadataHasBeenSet; }
115 template <typename UserMetadataT = Aws::Map<Aws::String, Aws::String>>
116 void SetUserMetadata(UserMetadataT&& value) {
117 m_userMetadataHasBeenSet = true;
118 m_userMetadata = std::forward<UserMetadataT>(value);
119 }
120 template <typename UserMetadataT = Aws::Map<Aws::String, Aws::String>>
121 S3ObjectMetadata& WithUserMetadata(UserMetadataT&& value) {
122 SetUserMetadata(std::forward<UserMetadataT>(value));
123 return *this;
124 }
125 template <typename UserMetadataKeyT = Aws::String, typename UserMetadataValueT = Aws::String>
126 S3ObjectMetadata& AddUserMetadata(UserMetadataKeyT&& key, UserMetadataValueT&& value) {
127 m_userMetadataHasBeenSet = true;
128 m_userMetadata.emplace(std::forward<UserMetadataKeyT>(key), std::forward<UserMetadataValueT>(value));
129 return *this;
130 }
132
134
137 inline long long GetContentLength() const { return m_contentLength; }
138 inline bool ContentLengthHasBeenSet() const { return m_contentLengthHasBeenSet; }
139 inline void SetContentLength(long long value) {
140 m_contentLengthHasBeenSet = true;
141 m_contentLength = value;
142 }
143 inline S3ObjectMetadata& WithContentLength(long long value) {
144 SetContentLength(value);
145 return *this;
146 }
148
150
153 inline const Aws::String& GetContentMD5() const { return m_contentMD5; }
154 inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
155 template <typename ContentMD5T = Aws::String>
156 void SetContentMD5(ContentMD5T&& value) {
157 m_contentMD5HasBeenSet = true;
158 m_contentMD5 = std::forward<ContentMD5T>(value);
159 }
160 template <typename ContentMD5T = Aws::String>
161 S3ObjectMetadata& WithContentMD5(ContentMD5T&& value) {
162 SetContentMD5(std::forward<ContentMD5T>(value));
163 return *this;
164 }
166
168
171 inline const Aws::String& GetContentType() const { return m_contentType; }
172 inline bool ContentTypeHasBeenSet() const { return m_contentTypeHasBeenSet; }
173 template <typename ContentTypeT = Aws::String>
174 void SetContentType(ContentTypeT&& value) {
175 m_contentTypeHasBeenSet = true;
176 m_contentType = std::forward<ContentTypeT>(value);
177 }
178 template <typename ContentTypeT = Aws::String>
179 S3ObjectMetadata& WithContentType(ContentTypeT&& value) {
180 SetContentType(std::forward<ContentTypeT>(value));
181 return *this;
182 }
184
186
189 inline const Aws::Utils::DateTime& GetHttpExpiresDate() const { return m_httpExpiresDate; }
190 inline bool HttpExpiresDateHasBeenSet() const { return m_httpExpiresDateHasBeenSet; }
191 template <typename HttpExpiresDateT = Aws::Utils::DateTime>
192 void SetHttpExpiresDate(HttpExpiresDateT&& value) {
193 m_httpExpiresDateHasBeenSet = true;
194 m_httpExpiresDate = std::forward<HttpExpiresDateT>(value);
195 }
196 template <typename HttpExpiresDateT = Aws::Utils::DateTime>
197 S3ObjectMetadata& WithHttpExpiresDate(HttpExpiresDateT&& value) {
198 SetHttpExpiresDate(std::forward<HttpExpiresDateT>(value));
199 return *this;
200 }
202
204
207 inline bool GetRequesterCharged() const { return m_requesterCharged; }
208 inline bool RequesterChargedHasBeenSet() const { return m_requesterChargedHasBeenSet; }
209 inline void SetRequesterCharged(bool value) {
210 m_requesterChargedHasBeenSet = true;
211 m_requesterCharged = value;
212 }
214 SetRequesterCharged(value);
215 return *this;
216 }
218
220
232 inline S3SSEAlgorithm GetSSEAlgorithm() const { return m_sSEAlgorithm; }
233 inline bool SSEAlgorithmHasBeenSet() const { return m_sSEAlgorithmHasBeenSet; }
234 inline void SetSSEAlgorithm(S3SSEAlgorithm value) {
235 m_sSEAlgorithmHasBeenSet = true;
236 m_sSEAlgorithm = value;
237 }
239 SetSSEAlgorithm(value);
240 return *this;
241 }
243 private:
244 Aws::String m_cacheControl;
245
246 Aws::String m_contentDisposition;
247
248 Aws::String m_contentEncoding;
249
250 Aws::String m_contentLanguage;
251
253
254 long long m_contentLength{0};
255
256 Aws::String m_contentMD5;
257
258 Aws::String m_contentType;
259
260 Aws::Utils::DateTime m_httpExpiresDate{};
261
262 bool m_requesterCharged{false};
263
265 bool m_cacheControlHasBeenSet = false;
266 bool m_contentDispositionHasBeenSet = false;
267 bool m_contentEncodingHasBeenSet = false;
268 bool m_contentLanguageHasBeenSet = false;
269 bool m_userMetadataHasBeenSet = false;
270 bool m_contentLengthHasBeenSet = false;
271 bool m_contentMD5HasBeenSet = false;
272 bool m_contentTypeHasBeenSet = false;
273 bool m_httpExpiresDateHasBeenSet = false;
274 bool m_requesterChargedHasBeenSet = false;
275 bool m_sSEAlgorithmHasBeenSet = false;
276};
277
278} // namespace Model
279} // namespace S3Control
280} // namespace Aws
S3ObjectMetadata & WithCacheControl(CacheControlT &&value)
void SetUserMetadata(UserMetadataT &&value)
void SetContentEncoding(ContentEncodingT &&value)
void SetHttpExpiresDate(HttpExpiresDateT &&value)
S3ObjectMetadata & WithHttpExpiresDate(HttpExpiresDateT &&value)
S3ObjectMetadata & WithContentLanguage(ContentLanguageT &&value)
void SetContentType(ContentTypeT &&value)
S3ObjectMetadata & WithContentDisposition(ContentDispositionT &&value)
void SetContentDisposition(ContentDispositionT &&value)
AWS_S3CONTROL_API S3ObjectMetadata()=default
const Aws::Utils::DateTime & GetHttpExpiresDate() const
S3ObjectMetadata & WithContentEncoding(ContentEncodingT &&value)
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
const Aws::Map< Aws::String, Aws::String > & GetUserMetadata() const
S3ObjectMetadata & WithContentLength(long long value)
void SetContentLanguage(ContentLanguageT &&value)
AWS_S3CONTROL_API S3ObjectMetadata(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetCacheControl() const
const Aws::String & GetContentDisposition() const
S3ObjectMetadata & WithContentType(ContentTypeT &&value)
void SetCacheControl(CacheControlT &&value)
const Aws::String & GetContentLanguage() const
S3ObjectMetadata & WithSSEAlgorithm(S3SSEAlgorithm value)
S3ObjectMetadata & WithContentMD5(ContentMD5T &&value)
S3ObjectMetadata & WithUserMetadata(UserMetadataT &&value)
void SetSSEAlgorithm(S3SSEAlgorithm value)
AWS_S3CONTROL_API S3ObjectMetadata & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetContentEncoding() const
const Aws::String & GetContentMD5() const
S3ObjectMetadata & WithRequesterCharged(bool value)
const Aws::String & GetContentType() const
S3ObjectMetadata & AddUserMetadata(UserMetadataKeyT &&key, UserMetadataValueT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String