refactor(core,gui): make all needed changes to send and receive files on linux and android

This commit is contained in:
Patryk Hegenberg 2024-05-27 21:09:24 +02:00
parent 351b7b9323
commit 0416ab6dab
12 changed files with 108 additions and 193 deletions

View file

@ -46,19 +46,20 @@ pub async fn start_rust_sender(name: String, relay: String, files: Vec<String>)
Ok(())
}
// #[flutter_rust_bridge::frb(sync)]
// pub async fn start_rust_receiver(relay: String, transfername: String) -> Result<()> {
// let outcome = start_receiver(relay.as_str(), transfername.as_str())
// .await
// .map_err(|e| anyhow!("Failed to start Caesar receiver: {}", e))?;
// println!("Result of receiver is: {:?}", outcome);
// Ok(())
// }
pub async fn start_rust_receiver(relay: String, transfername: String) -> Result<String> {
let outcome = start_receiver(relay.as_str(), transfername.as_str())
pub async fn start_rust_receiver(
filepath: String,
relay: String,
transfername: String,
) -> Result<String> {
// #[cfg(target_os = "android")]
let outcome = start_receiver(filepath, relay.as_str(), transfername.as_str())
.await
.map_err(|e| anyhow!("Failed to start Caesar receiver: {}", e))?;
// #[cfg(not(target_os = "android"))]
// let outcome = start_receiver(relay.as_str(), transfername.as_str())
// .await
// .map_err(|e| anyhow!("Failed to start Caesar receiver: {}", e))?;
// Konvertieren Sie outcome zu einem String
let outcome_string = format!("{:?}", outcome);

View file

@ -120,13 +120,19 @@ fn wire_start_rust_receiver_impl(
};
let mut deserializer =
flutter_rust_bridge::for_generated::SseDeserializer::new(message);
let api_filepath = <String>::sse_decode(&mut deserializer);
let api_relay = <String>::sse_decode(&mut deserializer);
let api_transfername = <String>::sse_decode(&mut deserializer);
deserializer.end();
move |context| async move {
transform_result_sse(
(move || async move {
crate::api::simple::start_rust_receiver(api_relay, api_transfername).await
crate::api::simple::start_rust_receiver(
api_filepath,
api_relay,
api_transfername,
)
.await
})()
.await,
)