use super::metadata::*;
use {
kutil::io::reader::*,
std::{collections::*, sync::*},
};
pub static GLOBAL_INTERNAL_URL_REGISTRY: LazyLock<InternalUrlRegistry> =
LazyLock::new(|| RegisteredInternalUrls::default().into());
pub type InternalUrlRegistry = Mutex<RegisteredInternalUrls>;
pub type RegisteredInternalUrls = HashMap<String, RegisteredInternalUrl>;
#[derive(Clone, Debug)]
pub struct RegisteredInternalUrl {
pub metadata: InternalUrlMetadata,
pub content: ReadableBuffer,
}
impl RegisteredInternalUrl {
pub fn new(slashable: bool, base_path: Option<String>, format: Option<String>, content: &[u8]) -> Self {
Self { metadata: InternalUrlMetadata::new(slashable, base_path, format), content: ReadableBuffer::new(content) }
}
}