Skip to main content

socorro_cli/models/
search.rs

1use serde::{Deserialize, Serialize};
2use std::collections::HashMap;
3
4#[derive(Debug, Serialize, Deserialize)]
5pub struct SearchResponse {
6    pub total: u64,
7    pub hits: Vec<CrashHit>,
8    #[serde(default)]
9    pub facets: HashMap<String, Vec<FacetBucket>>,
10}
11
12#[derive(Debug, Serialize, Deserialize)]
13pub struct CrashHit {
14    pub uuid: String,
15    pub date: String,
16    pub signature: String,
17    pub product: String,
18    pub version: String,
19    #[serde(default)]
20    pub os_name: Option<String>,
21}
22
23#[derive(Debug, Serialize, Deserialize)]
24pub struct FacetBucket {
25    pub term: String,
26    pub count: u64,
27}
28
29pub struct SearchParams {
30    pub signature: Option<String>,
31    pub product: String,
32    pub version: Option<String>,
33    pub platform: Option<String>,
34    pub days: u32,
35    pub limit: usize,
36    pub facets: Vec<String>,
37    pub sort: String,
38}