mirror of
https://github.com/Myzel394/tifsep.git
synced 2025-06-18 15:35:26 +02:00
feat: Show first result latency
This commit is contained in:
parent
9c3a48710d
commit
6a1bbe60ff
11
src/main.rs
11
src/main.rs
@ -7,6 +7,8 @@ use lazy_static::lazy_static;
|
||||
use reqwest::ClientBuilder;
|
||||
use rocket::response::content::{RawCss, RawHtml};
|
||||
use rocket::response::stream::TextStream;
|
||||
use rocket::time::Instant;
|
||||
use utils::utils::Yieldable;
|
||||
|
||||
use crate::helpers::helpers::run_search;
|
||||
use crate::static_files::static_files::read_file_contents;
|
||||
@ -54,6 +56,8 @@ async fn hello<'a>(query: &str) -> RawHtml<TextStream![String]> {
|
||||
let completed_ref_writer = completed_ref.clone();
|
||||
let brave_ref = Arc::new(Mutex::new(Brave::new()));
|
||||
let brave_ref_writer = brave_ref.clone();
|
||||
let mut brave_first_result_has_yielded = false;
|
||||
let brave_first_result_start = Instant::now();
|
||||
let client = Arc::new(Box::new(
|
||||
ClientBuilder::new().user_agent(USER_AGENT).build().unwrap(),
|
||||
));
|
||||
@ -92,6 +96,13 @@ async fn hello<'a>(query: &str) -> RawHtml<TextStream![String]> {
|
||||
}
|
||||
drop(completed);
|
||||
|
||||
if !brave_first_result_has_yielded {
|
||||
let diff = brave_first_result_start.elapsed().whole_milliseconds();
|
||||
brave_first_result_has_yielded = true;
|
||||
|
||||
yield format!("<strong>Time taken: {}ms</strong>", diff);
|
||||
}
|
||||
|
||||
for ii in (current_index + 1)..len {
|
||||
let result = brave.results.get(ii).unwrap();
|
||||
|
||||
|
@ -323,4 +323,10 @@ pub mod utils {
|
||||
}
|
||||
).to_string()
|
||||
}
|
||||
|
||||
pub enum Yieldable<T> {
|
||||
AwaitingValue,
|
||||
YieldRequired(T),
|
||||
Completed(T),
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user