hyprshell_core_lib/transfer/
receive.rs

1use crate::transfer::TransferType;
2use anyhow::Context;
3use tracing::debug;
4
5pub fn receive_from_buffer(buffer: Vec<u8>) -> anyhow::Result<TransferType> {
6    // TODO use this if newer rust version
7    // let str =
8    //     str::from_utf8(buffer).with_context(|| format!("Failed to convert buffer: {buffer:?}"))?;
9    let str = String::from_utf8(buffer).context("Failed to convert buffer")?;
10    let transfer: TransferType = serde_json::from_str(&str)
11        .with_context(|| format!("Failed to deserialize str: {str:?}"))?;
12    debug!("Received command: {transfer:?}");
13    Ok(transfer)
14}