1
0
mirror of https://gitlab.com/comunic/comunicapiv3 synced 2025-02-19 23:42:39 +00:00
comunicapiv3/src/api_data/server_config.rs

35 lines
1.2 KiB
Rust
Raw Normal View History

2021-02-15 17:03:25 +01:00
//! # 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(),
}
}
}
}