Skip to main content

ordinary_config/api/limits/
cache.rs

1// Copyright (C) 2026 Ordinary Labs, LLC.
2//
3// SPDX-License-Identifier: AGPL-3.0-only
4
5use serde::{Deserialize, Serialize};
6
7#[cfg_attr(feature = "utoipa", derive(utoipa::ToSchema))]
8#[cfg_attr(feature = "docs", derive(schemars::JsonSchema))]
9#[derive(Deserialize, Serialize, Debug, Clone)]
10pub struct CacheLimits {
11    pub max_size_range: (u64, u64),
12    pub max_count_range: (usize, usize),
13
14    pub clean_interval_ranges: ((u64, u64), (u64, u64)),
15}
16
17impl Default for CacheLimits {
18    fn default() -> Self {
19        Self {
20            max_size_range: (1_000_000, 10_000_000),
21            max_count_range: (100, 500),
22
23            clean_interval_ranges: ((5, 10), (15, 20)),
24        }
25    }
26}