google_cloud_storage/http/default_object_access_controls/
patch.rs1use reqwest_middleware::{ClientWithMiddleware as Client, RequestBuilder};
2
3use crate::http::object_access_controls::ObjectAccessControl;
4use crate::http::Escape;
5
6#[derive(Clone, PartialEq, Eq, serde::Deserialize, serde::Serialize, Debug)]
8#[serde(rename_all = "camelCase")]
9pub struct PatchDefaultObjectAccessControlRequest {
10 pub bucket: String,
12 pub entity: String,
20 pub object_access_control: ObjectAccessControl,
22}
23
24pub(crate) fn build(base_url: &str, client: &Client, req: &PatchDefaultObjectAccessControlRequest) -> RequestBuilder {
25 let url = format!(
26 "{}/b/{}/defaultObjectAcl/{}",
27 base_url,
28 req.bucket.escape(),
29 req.entity.escape()
30 );
31 client.patch(url).json(&req.object_access_control)
32}