rustack_s3_model/output/object.rs
1//! Auto-generated from AWS S3 Smithy model. DO NOT EDIT.
2
3use std::collections::HashMap;
4
5use crate::{
6 request::StreamingBlob,
7 types::{
8 ArchiveStatus, ChecksumType, CopyObjectResult, DeletedObject, Error,
9 ObjectLockLegalHoldStatus, ObjectLockMode, ReplicationStatus, RequestCharged,
10 ServerSideEncryption, StorageClass,
11 },
12};
13
14/// S3 CopyObjectOutput.
15#[derive(Debug, Clone, Default)]
16pub struct CopyObjectOutput {
17 /// HTTP header: `x-amz-server-side-encryption-bucket-key-enabled`.
18 pub bucket_key_enabled: Option<bool>,
19 /// HTTP payload body.
20 pub copy_object_result: Option<CopyObjectResult>,
21 /// HTTP header: `x-amz-copy-source-version-id`.
22 pub copy_source_version_id: Option<String>,
23 /// HTTP header: `x-amz-expiration`.
24 pub expiration: Option<String>,
25 /// HTTP header: `x-amz-request-charged`.
26 pub request_charged: Option<RequestCharged>,
27 /// HTTP header: `x-amz-server-side-encryption-customer-algorithm`.
28 pub sse_customer_algorithm: Option<String>,
29 /// HTTP header: `x-amz-server-side-encryption-customer-key-MD5`.
30 pub sse_customer_key_md5: Option<String>,
31 /// HTTP header: `x-amz-server-side-encryption-context`.
32 pub ssekms_encryption_context: Option<String>,
33 /// HTTP header: `x-amz-server-side-encryption-aws-kms-key-id`.
34 pub ssekms_key_id: Option<String>,
35 /// HTTP header: `x-amz-server-side-encryption`.
36 pub server_side_encryption: Option<ServerSideEncryption>,
37 /// HTTP header: `x-amz-version-id`.
38 pub version_id: Option<String>,
39}
40
41/// S3 DeleteObjectOutput.
42#[derive(Debug, Clone, Default)]
43pub struct DeleteObjectOutput {
44 /// HTTP header: `x-amz-delete-marker`.
45 pub delete_marker: Option<bool>,
46 /// HTTP header: `x-amz-request-charged`.
47 pub request_charged: Option<RequestCharged>,
48 /// HTTP header: `x-amz-version-id`.
49 pub version_id: Option<String>,
50}
51
52/// S3 DeleteObjectsOutput.
53#[derive(Debug, Clone, Default)]
54pub struct DeleteObjectsOutput {
55 pub deleted: Vec<DeletedObject>,
56 pub errors: Vec<Error>,
57 /// HTTP header: `x-amz-request-charged`.
58 pub request_charged: Option<RequestCharged>,
59}
60
61/// S3 GetObjectOutput.
62#[derive(Debug, Clone, Default)]
63pub struct GetObjectOutput {
64 /// HTTP header: `accept-ranges`.
65 pub accept_ranges: Option<String>,
66 /// HTTP payload body.
67 pub body: Option<StreamingBlob>,
68 /// HTTP header: `x-amz-server-side-encryption-bucket-key-enabled`.
69 pub bucket_key_enabled: Option<bool>,
70 /// HTTP header: `Cache-Control`.
71 pub cache_control: Option<String>,
72 /// HTTP header: `x-amz-checksum-crc32`.
73 pub checksum_crc32: Option<String>,
74 /// HTTP header: `x-amz-checksum-crc32c`.
75 pub checksum_crc32c: Option<String>,
76 /// HTTP header: `x-amz-checksum-crc64nvme`.
77 pub checksum_crc64nvme: Option<String>,
78 /// HTTP header: `x-amz-checksum-sha1`.
79 pub checksum_sha1: Option<String>,
80 /// HTTP header: `x-amz-checksum-sha256`.
81 pub checksum_sha256: Option<String>,
82 /// HTTP header: `x-amz-checksum-type`.
83 pub checksum_type: Option<ChecksumType>,
84 /// HTTP header: `Content-Disposition`.
85 pub content_disposition: Option<String>,
86 /// HTTP header: `Content-Encoding`.
87 pub content_encoding: Option<String>,
88 /// HTTP header: `Content-Language`.
89 pub content_language: Option<String>,
90 /// HTTP header: `Content-Length`.
91 pub content_length: Option<i64>,
92 /// HTTP header: `Content-Range`.
93 pub content_range: Option<String>,
94 /// HTTP header: `Content-Type`.
95 pub content_type: Option<String>,
96 /// HTTP header: `x-amz-delete-marker`.
97 pub delete_marker: Option<bool>,
98 /// HTTP header: `ETag`.
99 pub e_tag: Option<String>,
100 /// HTTP header: `x-amz-expiration`.
101 pub expiration: Option<String>,
102 /// HTTP header: `Expires`.
103 pub expires: Option<String>,
104 /// HTTP header: `Last-Modified`.
105 pub last_modified: Option<chrono::DateTime<chrono::Utc>>,
106 /// HTTP prefix headers: `x-amz-meta-`.
107 pub metadata: HashMap<String, String>,
108 /// HTTP header: `x-amz-missing-meta`.
109 pub missing_meta: Option<i32>,
110 /// HTTP header: `x-amz-object-lock-legal-hold`.
111 pub object_lock_legal_hold_status: Option<ObjectLockLegalHoldStatus>,
112 /// HTTP header: `x-amz-object-lock-mode`.
113 pub object_lock_mode: Option<ObjectLockMode>,
114 /// HTTP header: `x-amz-object-lock-retain-until-date`.
115 pub object_lock_retain_until_date: Option<chrono::DateTime<chrono::Utc>>,
116 /// HTTP header: `x-amz-mp-parts-count`.
117 pub parts_count: Option<i32>,
118 /// HTTP header: `x-amz-replication-status`.
119 pub replication_status: Option<ReplicationStatus>,
120 /// HTTP header: `x-amz-request-charged`.
121 pub request_charged: Option<RequestCharged>,
122 /// HTTP header: `x-amz-restore`.
123 pub restore: Option<String>,
124 /// HTTP header: `x-amz-server-side-encryption-customer-algorithm`.
125 pub sse_customer_algorithm: Option<String>,
126 /// HTTP header: `x-amz-server-side-encryption-customer-key-MD5`.
127 pub sse_customer_key_md5: Option<String>,
128 /// HTTP header: `x-amz-server-side-encryption-aws-kms-key-id`.
129 pub ssekms_key_id: Option<String>,
130 /// HTTP header: `x-amz-server-side-encryption`.
131 pub server_side_encryption: Option<ServerSideEncryption>,
132 /// HTTP header: `x-amz-storage-class`.
133 pub storage_class: Option<StorageClass>,
134 /// HTTP header: `x-amz-tagging-count`.
135 pub tag_count: Option<i32>,
136 /// HTTP header: `x-amz-version-id`.
137 pub version_id: Option<String>,
138 /// HTTP header: `x-amz-website-redirect-location`.
139 pub website_redirect_location: Option<String>,
140}
141
142/// S3 HeadObjectOutput.
143#[derive(Debug, Clone, Default)]
144pub struct HeadObjectOutput {
145 /// HTTP header: `accept-ranges`.
146 pub accept_ranges: Option<String>,
147 /// HTTP header: `x-amz-archive-status`.
148 pub archive_status: Option<ArchiveStatus>,
149 /// HTTP header: `x-amz-server-side-encryption-bucket-key-enabled`.
150 pub bucket_key_enabled: Option<bool>,
151 /// HTTP header: `Cache-Control`.
152 pub cache_control: Option<String>,
153 /// HTTP header: `x-amz-checksum-crc32`.
154 pub checksum_crc32: Option<String>,
155 /// HTTP header: `x-amz-checksum-crc32c`.
156 pub checksum_crc32c: Option<String>,
157 /// HTTP header: `x-amz-checksum-crc64nvme`.
158 pub checksum_crc64nvme: Option<String>,
159 /// HTTP header: `x-amz-checksum-sha1`.
160 pub checksum_sha1: Option<String>,
161 /// HTTP header: `x-amz-checksum-sha256`.
162 pub checksum_sha256: Option<String>,
163 /// HTTP header: `x-amz-checksum-type`.
164 pub checksum_type: Option<ChecksumType>,
165 /// HTTP header: `Content-Disposition`.
166 pub content_disposition: Option<String>,
167 /// HTTP header: `Content-Encoding`.
168 pub content_encoding: Option<String>,
169 /// HTTP header: `Content-Language`.
170 pub content_language: Option<String>,
171 /// HTTP header: `Content-Length`.
172 pub content_length: Option<i64>,
173 /// HTTP header: `Content-Range`.
174 pub content_range: Option<String>,
175 /// HTTP header: `Content-Type`.
176 pub content_type: Option<String>,
177 /// HTTP header: `x-amz-delete-marker`.
178 pub delete_marker: Option<bool>,
179 /// HTTP header: `ETag`.
180 pub e_tag: Option<String>,
181 /// HTTP header: `x-amz-expiration`.
182 pub expiration: Option<String>,
183 /// HTTP header: `Expires`.
184 pub expires: Option<String>,
185 /// HTTP header: `Last-Modified`.
186 pub last_modified: Option<chrono::DateTime<chrono::Utc>>,
187 /// HTTP prefix headers: `x-amz-meta-`.
188 pub metadata: HashMap<String, String>,
189 /// HTTP header: `x-amz-missing-meta`.
190 pub missing_meta: Option<i32>,
191 /// HTTP header: `x-amz-object-lock-legal-hold`.
192 pub object_lock_legal_hold_status: Option<ObjectLockLegalHoldStatus>,
193 /// HTTP header: `x-amz-object-lock-mode`.
194 pub object_lock_mode: Option<ObjectLockMode>,
195 /// HTTP header: `x-amz-object-lock-retain-until-date`.
196 pub object_lock_retain_until_date: Option<chrono::DateTime<chrono::Utc>>,
197 /// HTTP header: `x-amz-mp-parts-count`.
198 pub parts_count: Option<i32>,
199 /// HTTP header: `x-amz-replication-status`.
200 pub replication_status: Option<ReplicationStatus>,
201 /// HTTP header: `x-amz-request-charged`.
202 pub request_charged: Option<RequestCharged>,
203 /// HTTP header: `x-amz-restore`.
204 pub restore: Option<String>,
205 /// HTTP header: `x-amz-server-side-encryption-customer-algorithm`.
206 pub sse_customer_algorithm: Option<String>,
207 /// HTTP header: `x-amz-server-side-encryption-customer-key-MD5`.
208 pub sse_customer_key_md5: Option<String>,
209 /// HTTP header: `x-amz-server-side-encryption-aws-kms-key-id`.
210 pub ssekms_key_id: Option<String>,
211 /// HTTP header: `x-amz-server-side-encryption`.
212 pub server_side_encryption: Option<ServerSideEncryption>,
213 /// HTTP header: `x-amz-storage-class`.
214 pub storage_class: Option<StorageClass>,
215 /// HTTP header: `x-amz-tagging-count`.
216 pub tag_count: Option<i32>,
217 /// HTTP header: `x-amz-version-id`.
218 pub version_id: Option<String>,
219 /// HTTP header: `x-amz-website-redirect-location`.
220 pub website_redirect_location: Option<String>,
221}
222
223/// S3 PutObjectOutput.
224#[derive(Debug, Clone, Default)]
225pub struct PutObjectOutput {
226 /// HTTP header: `x-amz-server-side-encryption-bucket-key-enabled`.
227 pub bucket_key_enabled: Option<bool>,
228 /// HTTP header: `x-amz-checksum-crc32`.
229 pub checksum_crc32: Option<String>,
230 /// HTTP header: `x-amz-checksum-crc32c`.
231 pub checksum_crc32c: Option<String>,
232 /// HTTP header: `x-amz-checksum-crc64nvme`.
233 pub checksum_crc64nvme: Option<String>,
234 /// HTTP header: `x-amz-checksum-sha1`.
235 pub checksum_sha1: Option<String>,
236 /// HTTP header: `x-amz-checksum-sha256`.
237 pub checksum_sha256: Option<String>,
238 /// HTTP header: `x-amz-checksum-type`.
239 pub checksum_type: Option<ChecksumType>,
240 /// HTTP header: `ETag`.
241 pub e_tag: Option<String>,
242 /// HTTP header: `x-amz-expiration`.
243 pub expiration: Option<String>,
244 /// HTTP header: `x-amz-request-charged`.
245 pub request_charged: Option<RequestCharged>,
246 /// HTTP header: `x-amz-server-side-encryption-customer-algorithm`.
247 pub sse_customer_algorithm: Option<String>,
248 /// HTTP header: `x-amz-server-side-encryption-customer-key-MD5`.
249 pub sse_customer_key_md5: Option<String>,
250 /// HTTP header: `x-amz-server-side-encryption-context`.
251 pub ssekms_encryption_context: Option<String>,
252 /// HTTP header: `x-amz-server-side-encryption-aws-kms-key-id`.
253 pub ssekms_key_id: Option<String>,
254 /// HTTP header: `x-amz-server-side-encryption`.
255 pub server_side_encryption: Option<ServerSideEncryption>,
256 /// HTTP header: `x-amz-object-size`.
257 pub size: Option<i64>,
258 /// HTTP header: `x-amz-version-id`.
259 pub version_id: Option<String>,
260}