6
6
#pragma once
7
7
#include < aws/s3-crt/S3Crt_EXPORTS.h>
8
8
#include < aws/core/utils/memory/stl/AWSString.h>
9
+ #include < aws/s3-crt/model/ChecksumType.h>
9
10
#include < utility>
10
11
11
12
namespace Aws
@@ -40,12 +41,12 @@ namespace Model
40
41
41
42
// /@{
42
43
/* *
43
- * <p>The base64- encoded, 32-bit CRC-32 checksum of the object. This will only be
44
- * present if it was uploaded with the object. When you use an API operation on an
45
- * object that was uploaded using multipart uploads, this value may not be a direct
46
- * checksum value of the full object. Instead, it's a calculation based on the
47
- * checksum values of each individual part. For more information about how
48
- * checksums are calculated with multipart uploads, see <a
44
+ * <p>The Base64 encoded, 32-bit <code> CRC-32 checksum</code> of the object. This
45
+ * checksum is only be present if the checksum was uploaded with the object. When
46
+ * you use an API operation on an object that was uploaded using multipart uploads,
47
+ * this value may not be a direct checksum value of the full object. Instead, it's
48
+ * a calculation based on the checksum values of each individual part. For more
49
+ * information about how checksums are calculated with multipart uploads, see <a
49
50
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
50
51
* Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
51
52
*/
@@ -61,12 +62,12 @@ namespace Model
61
62
62
63
// /@{
63
64
/* *
64
- * <p>The base64- encoded, 32-bit CRC-32C checksum of the object. This will only be
65
- * present if it was uploaded with the object. When you use an API operation on an
66
- * object that was uploaded using multipart uploads, this value may not be a direct
67
- * checksum value of the full object. Instead, it's a calculation based on the
68
- * checksum values of each individual part. For more information about how
69
- * checksums are calculated with multipart uploads, see <a
65
+ * <p>The Base64 encoded, 32-bit <code> CRC-32C</code> checksum of the object. This
66
+ * checksum is only present if the checksum was uploaded with the object. When you
67
+ * use an API operation on an object that was uploaded using multipart uploads,
68
+ * this value may not be a direct checksum value of the full object. Instead, it's
69
+ * a calculation based on the checksum values of each individual part. For more
70
+ * information about how checksums are calculated with multipart uploads, see <a
70
71
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
71
72
* Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
72
73
*/
@@ -82,12 +83,32 @@ namespace Model
82
83
83
84
// /@{
84
85
/* *
85
- * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
86
- * present if it was uploaded with the object. When you use the API operation on an
87
- * object that was uploaded using multipart uploads, this value may not be a direct
88
- * checksum value of the full object. Instead, it's a calculation based on the
89
- * checksum values of each individual part. For more information about how
90
- * checksums are calculated with multipart uploads, see <a
86
+ * <p>The Base64 encoded, 64-bit <code>CRC-64NVME</code> checksum of the object.
87
+ * This checksum is present if the object was uploaded with the
88
+ * <code>CRC-64NVME</code> checksum algorithm, or if the object was uploaded
89
+ * without a checksum (and Amazon S3 added the default checksum,
90
+ * <code>CRC-64NVME</code>, to the uploaded object). For more information, see <a
91
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
92
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
93
+ */
94
+ inline const Aws::String& GetChecksumCRC64NVME () const { return m_checksumCRC64NVME; }
95
+ inline bool ChecksumCRC64NVMEHasBeenSet () const { return m_checksumCRC64NVMEHasBeenSet; }
96
+ inline void SetChecksumCRC64NVME (const Aws::String& value) { m_checksumCRC64NVMEHasBeenSet = true ; m_checksumCRC64NVME = value; }
97
+ inline void SetChecksumCRC64NVME (Aws::String&& value) { m_checksumCRC64NVMEHasBeenSet = true ; m_checksumCRC64NVME = std::move (value); }
98
+ inline void SetChecksumCRC64NVME (const char * value) { m_checksumCRC64NVMEHasBeenSet = true ; m_checksumCRC64NVME.assign (value); }
99
+ inline Checksum& WithChecksumCRC64NVME (const Aws::String& value) { SetChecksumCRC64NVME (value); return *this ;}
100
+ inline Checksum& WithChecksumCRC64NVME (Aws::String&& value) { SetChecksumCRC64NVME (std::move (value)); return *this ;}
101
+ inline Checksum& WithChecksumCRC64NVME (const char * value) { SetChecksumCRC64NVME (value); return *this ;}
102
+ // /@}
103
+
104
+ // /@{
105
+ /* *
106
+ * <p>The Base64 encoded, 160-bit <code>SHA-1</code> digest of the object. This
107
+ * will only be present if the object was uploaded with the object. When you use
108
+ * the API operation on an object that was uploaded using multipart uploads, this
109
+ * value may not be a direct checksum value of the full object. Instead, it's a
110
+ * calculation based on the checksum values of each individual part. For more
111
+ * information about how checksums are calculated with multipart uploads, see <a
91
112
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
92
113
* Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
93
114
*/
@@ -103,12 +124,12 @@ namespace Model
103
124
104
125
// /@{
105
126
/* *
106
- * <p>The base64- encoded, 256-bit SHA-256 digest of the object. This will only be
107
- * present if it was uploaded with the object. When you use an API operation on an
108
- * object that was uploaded using multipart uploads, this value may not be a direct
109
- * checksum value of the full object. Instead, it's a calculation based on the
110
- * checksum values of each individual part. For more information about how
111
- * checksums are calculated with multipart uploads, see <a
127
+ * <p>The Base64 encoded, 256-bit <code> SHA-256</code> digest of the object. This
128
+ * will only be present if the object was uploaded with the object. When you use an
129
+ * API operation on an object that was uploaded using multipart uploads, this value
130
+ * may not be a direct checksum value of the full object. Instead, it's a
131
+ * calculation based on the checksum values of each individual part. For more
132
+ * information about how checksums are calculated with multipart uploads, see <a
112
133
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
113
134
* Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
114
135
*/
@@ -121,6 +142,21 @@ namespace Model
121
142
inline Checksum& WithChecksumSHA256 (Aws::String&& value) { SetChecksumSHA256 (std::move (value)); return *this ;}
122
143
inline Checksum& WithChecksumSHA256 (const char * value) { SetChecksumSHA256 (value); return *this ;}
123
144
// /@}
145
+
146
+ // /@{
147
+ /* *
148
+ * <p>The checksum type that is used to calculate the object’s checksum value. For
149
+ * more information, see <a
150
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
151
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
152
+ */
153
+ inline const ChecksumType& GetChecksumType () const { return m_checksumType; }
154
+ inline bool ChecksumTypeHasBeenSet () const { return m_checksumTypeHasBeenSet; }
155
+ inline void SetChecksumType (const ChecksumType& value) { m_checksumTypeHasBeenSet = true ; m_checksumType = value; }
156
+ inline void SetChecksumType (ChecksumType&& value) { m_checksumTypeHasBeenSet = true ; m_checksumType = std::move (value); }
157
+ inline Checksum& WithChecksumType (const ChecksumType& value) { SetChecksumType (value); return *this ;}
158
+ inline Checksum& WithChecksumType (ChecksumType&& value) { SetChecksumType (std::move (value)); return *this ;}
159
+ // /@}
124
160
private:
125
161
126
162
Aws::String m_checksumCRC32;
@@ -129,11 +165,17 @@ namespace Model
129
165
Aws::String m_checksumCRC32C;
130
166
bool m_checksumCRC32CHasBeenSet = false ;
131
167
168
+ Aws::String m_checksumCRC64NVME;
169
+ bool m_checksumCRC64NVMEHasBeenSet = false ;
170
+
132
171
Aws::String m_checksumSHA1;
133
172
bool m_checksumSHA1HasBeenSet = false ;
134
173
135
174
Aws::String m_checksumSHA256;
136
175
bool m_checksumSHA256HasBeenSet = false ;
176
+
177
+ ChecksumType m_checksumType;
178
+ bool m_checksumTypeHasBeenSet = false ;
137
179
};
138
180
139
181
} // namespace Model
0 commit comments