aboutsummaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
authorAlex <alex@adnab.me>2024-02-09 13:38:17 +0000
committerAlex <alex@adnab.me>2024-02-09 13:38:17 +0000
commit3865080c354427f913de6f2bb5e5b03f6231751c (patch)
treee360185ee2a5d2ae5d1246ee6c5e6b161e88e03c /src/api
parent0c7ce001c907791518f93fd9d2db01eebc517c51 (diff)
parent10bc2ead6015bf446451015ee73e902c3fd5e9a9 (diff)
downloadgarage-3865080c354427f913de6f2bb5e5b03f6231751c.tar.gz
garage-3865080c354427f913de6f2bb5e5b03f6231751c.zip
Merge pull request 'Allow multi-character delimiters in List* (fix #692)' (#711) from multi-char-delimiter-692 into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/711
Diffstat (limited to 'src/api')
-rw-r--r--src/api/s3/api_server.rs6
-rw-r--r--src/api/s3/router.rs8
2 files changed, 7 insertions, 7 deletions
diff --git a/src/api/s3/api_server.rs b/src/api/s3/api_server.rs
index 4b815f79..0065ca59 100644
--- a/src/api/s3/api_server.rs
+++ b/src/api/s3/api_server.rs
@@ -260,7 +260,7 @@ impl ApiHandler for S3ApiServer {
common: ListQueryCommon {
bucket_name,
bucket_id,
- delimiter: delimiter.map(|d| d.to_string()),
+ delimiter,
page_size: max_keys.unwrap_or(1000).clamp(1, 1000),
prefix: prefix.unwrap_or_default(),
urlencode_resp: encoding_type.map(|e| e == "url").unwrap_or(false),
@@ -290,7 +290,7 @@ impl ApiHandler for S3ApiServer {
common: ListQueryCommon {
bucket_name,
bucket_id,
- delimiter: delimiter.map(|d| d.to_string()),
+ delimiter,
page_size: max_keys.unwrap_or(1000).clamp(1, 1000),
urlencode_resp: encoding_type.map(|e| e == "url").unwrap_or(false),
prefix: prefix.unwrap_or_default(),
@@ -323,7 +323,7 @@ impl ApiHandler for S3ApiServer {
common: ListQueryCommon {
bucket_name,
bucket_id,
- delimiter: delimiter.map(|d| d.to_string()),
+ delimiter,
page_size: max_uploads.unwrap_or(1000).clamp(1, 1000),
prefix: prefix.unwrap_or_default(),
urlencode_resp: encoding_type.map(|e| e == "url").unwrap_or(false),
diff --git a/src/api/s3/router.rs b/src/api/s3/router.rs
index 821b0e07..05882885 100644
--- a/src/api/s3/router.rs
+++ b/src/api/s3/router.rs
@@ -170,7 +170,7 @@ pub enum Endpoint {
},
ListBuckets,
ListMultipartUploads {
- delimiter: Option<char>,
+ delimiter: Option<String>,
encoding_type: Option<String>,
key_marker: Option<String>,
max_uploads: Option<usize>,
@@ -178,7 +178,7 @@ pub enum Endpoint {
upload_id_marker: Option<String>,
},
ListObjects {
- delimiter: Option<char>,
+ delimiter: Option<String>,
encoding_type: Option<String>,
marker: Option<String>,
max_keys: Option<usize>,
@@ -188,7 +188,7 @@ pub enum Endpoint {
// This value should always be 2. It is not checked when constructing the struct
list_type: String,
continuation_token: Option<String>,
- delimiter: Option<char>,
+ delimiter: Option<String>,
encoding_type: Option<String>,
fetch_owner: Option<bool>,
max_keys: Option<usize>,
@@ -196,7 +196,7 @@ pub enum Endpoint {
start_after: Option<String>,
},
ListObjectVersions {
- delimiter: Option<char>,
+ delimiter: Option<String>,
encoding_type: Option<String>,
key_marker: Option<String>,
max_keys: Option<u64>,