google_cloud_bigquery/http/job/
cancel.rs1use reqwest::header::CONTENT_LENGTH;
2use reqwest_middleware::{ClientWithMiddleware as Client, RequestBuilder};
3
4use crate::http::job::Job;
5
6#[derive(Clone, PartialEq, serde::Deserialize, serde::Serialize, Debug, Default)]
7#[serde(rename_all = "camelCase")]
8pub struct CancelJobRequest {
9 pub location: Option<String>,
15}
16
17#[derive(Clone, PartialEq, serde::Deserialize, serde::Serialize, Debug, Default)]
18#[serde(rename_all = "camelCase")]
19pub struct CancelJobResponse {
20 pub kind: String,
22 pub job: Job,
24}
25
26pub fn build(
27 base_url: &str,
28 client: &Client,
29 project_id: &str,
30 job_id: &str,
31 data: &CancelJobRequest,
32) -> RequestBuilder {
33 let url = format!("{}/projects/{}/jobs/{}/cancel", base_url, project_id, job_id);
34 client.post(url).query(data).header(CONTENT_LENGTH, 0)
35}