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}