mirror of
https://gitlab.com/comunic/comunicapiv3
synced 2025-02-19 23:42:39 +00:00
35 lines
1.2 KiB
Rust
35 lines
1.2 KiB
Rust
|
//! # Server configuration
|
||
|
//!
|
||
|
//! @author Pierre Hubert
|
||
|
use serde::Serialize;
|
||
|
use crate::constants::conservation_policy;
|
||
|
|
||
|
#[derive(Serialize)]
|
||
|
struct DataConservationPolicy {
|
||
|
min_inactive_account_lifetime: u64,
|
||
|
min_notification_lifetime: u64,
|
||
|
min_comments_lifetime: u64,
|
||
|
min_posts_lifetime: u64,
|
||
|
min_conversation_messages_lifetime: u64,
|
||
|
min_likes_lifetime: u64,
|
||
|
}
|
||
|
|
||
|
#[derive(Serialize)]
|
||
|
pub struct ServerConfig {
|
||
|
data_conservation_policy: DataConservationPolicy,
|
||
|
}
|
||
|
|
||
|
impl ServerConfig {
|
||
|
pub fn new() -> Self {
|
||
|
ServerConfig {
|
||
|
data_conservation_policy: DataConservationPolicy {
|
||
|
min_inactive_account_lifetime: conservation_policy::MIN_INACTIVE_ACCOUNT_LIFETIME.as_secs(),
|
||
|
min_notification_lifetime: conservation_policy::MIN_NOTIFICATIONS_LIFETIME.as_secs(),
|
||
|
min_comments_lifetime: conservation_policy::MIN_COMMENTS_LIFETIME.as_secs(),
|
||
|
min_posts_lifetime: conservation_policy::MIN_POSTS_LIFETIME.as_secs(),
|
||
|
min_conversation_messages_lifetime: conservation_policy::MIN_CONVERSATION_MESSAGES_LIFETIME.as_secs(),
|
||
|
min_likes_lifetime: conservation_policy::MIN_LIKES_LIFETIME.as_secs(),
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|