pbs-client: avoid mut self in http_client methods.
It is not necessary, so avoid it. The client can now be used with multiple threads (without using a Mutex). Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
This commit is contained in:
@ -47,13 +47,13 @@ async fn start_garbage_collection(param: Value) -> Result<Value, Error> {
|
||||
|
||||
let store = required_string_param(¶m, "store")?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/admin/datastore/{}/gc", store);
|
||||
|
||||
let result = client.post(&path, None).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(Value::Null)
|
||||
}
|
||||
@ -178,9 +178,9 @@ async fn task_log(param: Value) -> Result<Value, Error> {
|
||||
|
||||
let upid = required_string_param(¶m, "upid")?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
display_task_log(&mut client, upid, true).await?;
|
||||
display_task_log(&client, upid, true).await?;
|
||||
|
||||
Ok(Value::Null)
|
||||
}
|
||||
@ -199,7 +199,7 @@ async fn task_stop(param: Value) -> Result<Value, Error> {
|
||||
|
||||
let upid_str = required_string_param(¶m, "upid")?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/nodes/localhost/tasks/{}", percent_encode_component(upid_str));
|
||||
let _ = client.delete(&path, None).await?;
|
||||
@ -263,7 +263,7 @@ async fn pull_datastore(
|
||||
|
||||
let output_format = get_output_format(¶m);
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let mut args = json!({
|
||||
"store": local_store,
|
||||
@ -281,7 +281,7 @@ async fn pull_datastore(
|
||||
|
||||
let result = client.post("api2/json/pull", Some(args)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(Value::Null)
|
||||
}
|
||||
@ -315,7 +315,7 @@ async fn verify(
|
||||
|
||||
let output_format = extract_output_format(&mut param);
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let args = json!(param);
|
||||
|
||||
@ -323,7 +323,7 @@ async fn verify(
|
||||
|
||||
let result = client.post(&path, Some(args)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(Value::Null)
|
||||
}
|
||||
|
@ -146,12 +146,12 @@ async fn format_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/format-media", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -179,12 +179,12 @@ async fn rewind(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/rewind", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -212,12 +212,12 @@ async fn eject_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/eject-media", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -248,12 +248,12 @@ async fn load_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/load-media", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -278,7 +278,7 @@ async fn export_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/export-media", drive);
|
||||
client.put(&path, Some(param)).await?;
|
||||
@ -308,7 +308,7 @@ async fn load_media_from_slot(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/load-slot", drive);
|
||||
client.put(&path, Some(param)).await?;
|
||||
@ -345,12 +345,12 @@ async fn unload_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/unload", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -385,12 +385,12 @@ async fn label_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/label-media", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -484,7 +484,7 @@ async fn inventory(
|
||||
|
||||
let do_read = read_labels.unwrap_or(false) || read_all_labels.unwrap_or(false);
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/inventory", drive);
|
||||
|
||||
@ -496,7 +496,7 @@ async fn inventory(
|
||||
}
|
||||
|
||||
let result = client.put(&path, Some(param)).await?; // update inventory
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
}
|
||||
|
||||
let mut result = client.get(&path, None).await?;
|
||||
@ -541,12 +541,12 @@ async fn barcode_label_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/barcode-label-media", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -819,12 +819,12 @@ async fn clean_drive(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/clean", drive);
|
||||
let result = client.put(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -894,11 +894,11 @@ async fn backup(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
param["drive"] = extract_drive_name(&mut param, &config)?.into();
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let result = client.post("api2/json/tape/backup", Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -949,11 +949,11 @@ async fn restore(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
param["drive"] = extract_drive_name(&mut param, &config)?.into();
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let result = client.post("api2/json/tape/restore", Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
@ -996,12 +996,12 @@ async fn catalog_media(mut param: Value) -> Result<(), Error> {
|
||||
|
||||
let drive = extract_drive_name(&mut param, &config)?;
|
||||
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!("api2/json/tape/drive/{}/catalog", drive);
|
||||
let result = client.post(&path, Some(param)).await?;
|
||||
|
||||
view_task_result(&mut client, result, &output_format).await?;
|
||||
view_task_result(&client, result, &output_format).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
@ -190,7 +190,7 @@ async fn call_api(
|
||||
}
|
||||
|
||||
async fn call_api_http(method: &str, path: &str, params: Option<Value>) -> Result<Value, Error> {
|
||||
let mut client = connect_to_localhost()?;
|
||||
let client = connect_to_localhost()?;
|
||||
|
||||
let path = format!(
|
||||
"api2/json/{}",
|
||||
@ -260,8 +260,8 @@ async fn call_api_and_format_result(
|
||||
if let Some(upid) = result.as_str() {
|
||||
if PROXMOX_UPID_REGEX.is_match(upid) {
|
||||
if use_http_client() {
|
||||
let mut client = connect_to_localhost()?;
|
||||
view_task_result(&mut client, json!({ "data": upid }), &output_format).await?;
|
||||
let client = connect_to_localhost()?;
|
||||
view_task_result(&client, json!({ "data": upid }), &output_format).await?;
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user