rebuilderd_common/api/v1/models/
mod.rs1mod build;
2mod dashboard;
3mod meta;
4mod package;
5mod queue;
6mod worker;
7
8pub use build::*;
9pub use dashboard::*;
10pub use meta::*;
11pub use package::*;
12pub use queue::*;
13use serde::{Deserialize, Serialize};
14pub use worker::*;
15
16#[derive(Debug, Clone, Serialize, Deserialize)]
17pub struct Page {
18 pub limit: Option<i32>,
19 pub before: Option<i32>,
20 pub after: Option<i32>,
21 pub sort: Option<String>,
22 pub direction: Option<SortDirection>,
23}
24
25#[derive(Debug, PartialEq, Eq, Clone, Serialize, Deserialize)]
26pub enum SortDirection {
27 Ascending,
28 Descending,
29}
30
31#[derive(Debug, Serialize, Deserialize)]
32pub struct ResultPage<T> {
33 pub total: i64,
34 pub records: Vec<T>,
35}
36
37#[derive(Debug, Clone, Serialize, Deserialize)]
38pub struct OriginFilter {
39 pub distribution: Option<String>,
40 pub release: Option<String>,
41 pub component: Option<String>,
42 pub architecture: Option<String>,
43}
44
45#[derive(Debug, Clone, Serialize, Deserialize)]
46pub struct SourceIdentityFilter {
47 pub name: Option<String>,
48 pub version: Option<String>,
49}
50
51#[derive(Debug, Clone, Serialize, Deserialize)]
52pub struct BinaryIdentityFilter {
53 pub name: Option<String>,
54 pub version: Option<String>,
55 pub source_name: Option<String>,
56}
57
58#[derive(Debug, Clone, Serialize, Deserialize)]
59pub struct FreshnessFilter {
60 pub seen_only: Option<bool>,
61}