AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ObjectIdentifier.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/s3-crt/S3Crt_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace S3Crt {
20namespace Model {
21
29 public:
30 AWS_S3CRT_API ObjectIdentifier() = default;
31 AWS_S3CRT_API ObjectIdentifier(const Aws::Utils::Xml::XmlNode& xmlNode);
32 AWS_S3CRT_API ObjectIdentifier& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
33
34 AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
35
37
44 inline const Aws::String& GetKey() const { return m_key; }
45 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
46 template <typename KeyT = Aws::String>
47 void SetKey(KeyT&& value) {
48 m_keyHasBeenSet = true;
49 m_key = std::forward<KeyT>(value);
50 }
51 template <typename KeyT = Aws::String>
52 ObjectIdentifier& WithKey(KeyT&& value) {
53 SetKey(std::forward<KeyT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::String& GetVersionId() const { return m_versionId; }
64 inline bool VersionIdHasBeenSet() const { return m_versionIdHasBeenSet; }
65 template <typename VersionIdT = Aws::String>
66 void SetVersionId(VersionIdT&& value) {
67 m_versionIdHasBeenSet = true;
68 m_versionId = std::forward<VersionIdT>(value);
69 }
70 template <typename VersionIdT = Aws::String>
71 ObjectIdentifier& WithVersionId(VersionIdT&& value) {
72 SetVersionId(std::forward<VersionIdT>(value));
73 return *this;
74 }
76
78
85 inline const Aws::String& GetETag() const { return m_eTag; }
86 inline bool ETagHasBeenSet() const { return m_eTagHasBeenSet; }
87 template <typename ETagT = Aws::String>
88 void SetETag(ETagT&& value) {
89 m_eTagHasBeenSet = true;
90 m_eTag = std::forward<ETagT>(value);
91 }
92 template <typename ETagT = Aws::String>
93 ObjectIdentifier& WithETag(ETagT&& value) {
94 SetETag(std::forward<ETagT>(value));
95 return *this;
96 }
98
100
105 inline const Aws::Utils::DateTime& GetLastModifiedTime() const { return m_lastModifiedTime; }
106 inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; }
107 template <typename LastModifiedTimeT = Aws::Utils::DateTime>
108 void SetLastModifiedTime(LastModifiedTimeT&& value) {
109 m_lastModifiedTimeHasBeenSet = true;
110 m_lastModifiedTime = std::forward<LastModifiedTimeT>(value);
111 }
112 template <typename LastModifiedTimeT = Aws::Utils::DateTime>
113 ObjectIdentifier& WithLastModifiedTime(LastModifiedTimeT&& value) {
114 SetLastModifiedTime(std::forward<LastModifiedTimeT>(value));
115 return *this;
116 }
118
120
125 inline long long GetSize() const { return m_size; }
126 inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
127 inline void SetSize(long long value) {
128 m_sizeHasBeenSet = true;
129 m_size = value;
130 }
131 inline ObjectIdentifier& WithSize(long long value) {
132 SetSize(value);
133 return *this;
134 }
136 private:
137 Aws::String m_key;
138
139 Aws::String m_versionId;
140
141 Aws::String m_eTag;
142
143 Aws::Utils::DateTime m_lastModifiedTime{};
144
145 long long m_size{0};
146 bool m_keyHasBeenSet = false;
147 bool m_versionIdHasBeenSet = false;
148 bool m_eTagHasBeenSet = false;
149 bool m_lastModifiedTimeHasBeenSet = false;
150 bool m_sizeHasBeenSet = false;
151};
152
153} // namespace Model
154} // namespace S3Crt
155} // namespace Aws
AWS_S3CRT_API ObjectIdentifier(const Aws::Utils::Xml::XmlNode &xmlNode)
ObjectIdentifier & WithLastModifiedTime(LastModifiedTimeT &&value)
const Aws::String & GetKey() const
const Aws::Utils::DateTime & GetLastModifiedTime() const
const Aws::String & GetETag() const
void SetVersionId(VersionIdT &&value)
ObjectIdentifier & WithSize(long long value)
ObjectIdentifier & WithVersionId(VersionIdT &&value)
void SetLastModifiedTime(LastModifiedTimeT &&value)
ObjectIdentifier & WithKey(KeyT &&value)
AWS_S3CRT_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
const Aws::String & GetVersionId() const
ObjectIdentifier & WithETag(ETagT &&value)
AWS_S3CRT_API ObjectIdentifier()=default
AWS_S3CRT_API ObjectIdentifier & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String