use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AutoPullSettings {
#[serde(rename = "enabled")]
pub enabled: bool,
#[serde(rename = "mode", skip_serializing_if = "Option::is_none")]
pub mode: Option<models::AutoPullMode>,
#[serde(rename = "poll_interval_s", skip_serializing_if = "Option::is_none")]
pub poll_interval_s: Option<i32>,
#[serde(rename = "sync_forks", skip_serializing_if = "Option::is_none")]
pub sync_forks: Option<bool>,
#[serde(rename = "webhook_id", skip_serializing_if = "Option::is_none")]
pub webhook_id: Option<i64>,
#[serde(rename = "webhook_secret", skip_serializing_if = "Option::is_none")]
pub webhook_secret: Option<String>,
#[serde(rename = "webhook_error", skip_serializing_if = "Option::is_none")]
pub webhook_error: Option<String>,
#[serde(rename = "last_synced_sha", skip_serializing_if = "Option::is_none")]
pub last_synced_sha: Option<std::collections::HashMap<String, String>>,
#[serde(rename = "last_pull_status", skip_serializing_if = "Option::is_none")]
pub last_pull_status: Option<Box<models::AutoPullStatus>>,
}
impl AutoPullSettings {
pub fn new(enabled: bool) -> AutoPullSettings {
AutoPullSettings {
enabled,
mode: None,
poll_interval_s: None,
sync_forks: None,
webhook_id: None,
webhook_secret: None,
webhook_error: None,
last_synced_sha: None,
last_pull_status: None,
}
}
}