hunter/scheduler: implement updating the known_user of a known instance

This commit is contained in:
Astro 2023-08-01 22:18:17 +02:00
parent f407273229
commit 251fe68103
1 changed files with 15 additions and 8 deletions

View File

@ -1,4 +1,4 @@
use std::collections::{HashMap, BTreeMap};
use std::collections::{HashMap, BTreeMap, hash_map};
use std::sync::Arc;
use std::time::Duration;
use cave::feed::{Mention, Account};
@ -86,13 +86,20 @@ impl Scheduler {
let now = Instant::now();
let host = introduce_host.host;
if let std::collections::hash_map::Entry::Vacant(entry) = self.instances.entry(host.clone()) {
entry.insert(Instance {
last_fetch: None,
error: false,
known_user: introduce_host.known_user,
});
self.queue.insert(now, host);
match self.instances.entry(host.clone()) {
hash_map::Entry::Vacant(entry) => {
entry.insert(Instance {
last_fetch: None,
error: false,
known_user: introduce_host.known_user,
});
self.queue.insert(now, host);
}
hash_map::Entry::Occupied(ref mut entry) => {
if let Some(known_user) = &introduce_host.known_user {
entry.get_mut().known_user = Some(known_user.clone());
}
}
}
true