diff --git a/src/search_results_handler/aggregation_models.rs b/src/search_results_handler/aggregation_models.rs index 07980b8..4dbad48 100644 --- a/src/search_results_handler/aggregation_models.rs +++ b/src/search_results_handler/aggregation_models.rs @@ -28,6 +28,7 @@ impl SearchResult { } } +#[derive(Clone)] pub struct RawSearchResult { pub title: String, pub visiting_url: String, @@ -52,6 +53,10 @@ impl RawSearchResult { pub fn add_engines(&mut self, engine: String) { self.engine.push(engine) } + + pub fn engine(self) -> String { + self.engine.get(0).unwrap().to_string() + } } #[derive(Debug, Serialize)] diff --git a/src/search_results_handler/aggregator.rs b/src/search_results_handler/aggregator.rs index 9752216..2986a7c 100644 --- a/src/search_results_handler/aggregator.rs +++ b/src/search_results_handler/aggregator.rs @@ -36,7 +36,7 @@ pub async fn aggregate( result_map .entry(key) .and_modify(|result| { - result.add_engines(value.engine[0].clone()); + result.add_engines(value.clone().engine()); }) .or_insert_with(|| -> RawSearchResult { RawSearchResult::new(