mirror of
https://github.com/Drop-OSS/drop-app.git
synced 2025-11-16 09:41:17 +10:00
feat: retry connnection on server unavailable
This commit is contained in:
@ -1,7 +1,5 @@
|
||||
use std::{
|
||||
env,
|
||||
sync::Mutex,
|
||||
time::{SystemTime, UNIX_EPOCH},
|
||||
borrow::BorrowMut, env, sync::Mutex, time::{SystemTime, UNIX_EPOCH}
|
||||
};
|
||||
|
||||
use log::{info, warn};
|
||||
@ -11,7 +9,7 @@ use tauri::{AppHandle, Emitter, Manager};
|
||||
use url::Url;
|
||||
|
||||
use crate::{
|
||||
db::{DatabaseAuth, DatabaseImpls},
|
||||
db::{self, DatabaseAuth, DatabaseImpls},
|
||||
remote::RemoteAccessError,
|
||||
AppState, AppStatus, User, DB,
|
||||
};
|
||||
@ -185,6 +183,18 @@ pub async fn auth_initiate<'a>() -> Result<(), String> {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
pub fn retry_connect(state: tauri::State<'_, Mutex<AppState>>) -> Result<(), ()> {
|
||||
let (app_status, user) = setup()?;
|
||||
|
||||
let mut guard = state.lock().unwrap();
|
||||
guard.status = app_status;
|
||||
guard.user = user;
|
||||
drop(guard);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub fn setup() -> Result<(AppStatus, Option<User>), ()> {
|
||||
let data = DB.borrow_data().unwrap();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user