use crate::types::session::SessionConfig;
use crate::types::trust::TrustDomain;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct LdpAdapterConfig {
pub delegate_id: String,
#[serde(default)]
pub trust_domain: TrustDomain,
#[serde(default)]
pub session: SessionConfig,
#[serde(default = "default_true")]
pub enforce_trust_domains: bool,
#[serde(default = "default_true")]
pub attach_provenance: bool,
#[serde(default)]
pub signing_secret: Option<String>,
}
fn default_true() -> bool {
true
}
impl Default for LdpAdapterConfig {
fn default() -> Self {
Self {
delegate_id: "ldp:delegate:local".into(),
trust_domain: TrustDomain::new("default"),
session: SessionConfig::default(),
enforce_trust_domains: true,
attach_provenance: true,
signing_secret: None,
}
}
}