mirror of
https://github.com/sxyazi/yazi.git
synced 2026-07-25 08:41:05 +00:00
fixup! feat: reconnect after a connection is lost
This commit is contained in:
parent
8b9ed5e39e
commit
2d3cd4d50e
1 changed files with 0 additions and 6 deletions
|
|
@ -69,14 +69,10 @@ impl Client {
|
||||||
/// If a server is closed, attempt to reconnect forever.
|
/// If a server is closed, attempt to reconnect forever.
|
||||||
pub async fn echo_events_to_stdout(kinds: HashSet<String>) -> Result<()> {
|
pub async fn echo_events_to_stdout(kinds: HashSet<String>) -> Result<()> {
|
||||||
let mut lines = Self::connect_listener(&kinds).await?;
|
let mut lines = Self::connect_listener(&kinds).await?;
|
||||||
let mut msg_counter = 0;
|
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
println!("Waiting for messages...");
|
|
||||||
match lines.next_line().await {
|
match lines.next_line().await {
|
||||||
Ok(Some(s)) => {
|
Ok(Some(s)) => {
|
||||||
println!("Received: message {} '{}'", msg_counter, s);
|
|
||||||
msg_counter += 1;
|
|
||||||
let kind = s.split(',').next();
|
let kind = s.split(',').next();
|
||||||
if matches!(kind, Some(kind) if kinds.contains(kind)) {
|
if matches!(kind, Some(kind) if kinds.contains(kind)) {
|
||||||
println!("{}", s);
|
println!("{}", s);
|
||||||
|
|
@ -87,11 +83,9 @@ impl Client {
|
||||||
match Self::connect_listener(&kinds).await {
|
match Self::connect_listener(&kinds).await {
|
||||||
Ok(new_lines) => {
|
Ok(new_lines) => {
|
||||||
lines = new_lines;
|
lines = new_lines;
|
||||||
println!("Reconnected");
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
Err(_) => {
|
Err(_) => {
|
||||||
println!("Reconnecting...");
|
|
||||||
time::sleep(time::Duration::from_secs(1)).await;
|
time::sleep(time::Duration::from_secs(1)).await;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue