pub struct MemoryRegistry { /* private fields */ }Expand description
Thread-safe in-memory schema registry.
Implementations§
Source§impl MemoryRegistry
impl MemoryRegistry
pub fn new() -> Self
Sourcepub fn load_directory(&self, dir: &Path) -> Result<usize, RegistryError>
pub fn load_directory(&self, dir: &Path) -> Result<usize, RegistryError>
Load all .csdl files from a directory recursively.
Each file may contain multiple schema documents (separated by ---).
Returns the total number of schema versions loaded.
Sourcepub fn load_file(&self, path: &Path) -> Result<usize, RegistryError>
pub fn load_file(&self, path: &Path) -> Result<usize, RegistryError>
Load a single CSDL file.
If the file contains multiple schemas (separated by ---), all are
added to the registry. Returns the count of schemas loaded.
Sourcepub fn insert(&self, schema: Schema) -> Result<(), RegistryError>
pub fn insert(&self, schema: Schema) -> Result<(), RegistryError>
Alias for add() — adds a schema to the registry.
pub fn is_empty(&self) -> bool
Sourcepub fn all_names(&self) -> Vec<String>
pub fn all_names(&self) -> Vec<String>
Returns all schema names (deduplicated, one entry per name regardless of versions).
Sourcepub fn all_schemas(&self) -> Vec<Schema>
pub fn all_schemas(&self) -> Vec<Schema>
Returns all schemas (latest non-deprecated version of each).
Trait Implementations§
Source§impl Clone for MemoryRegistry
impl Clone for MemoryRegistry
Source§fn clone(&self) -> MemoryRegistry
fn clone(&self) -> MemoryRegistry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for MemoryRegistry
impl Default for MemoryRegistry
Source§impl SchemaRegistry for MemoryRegistry
impl SchemaRegistry for MemoryRegistry
Source§fn get_by_fingerprint(&self, fp: &EventFingerprint) -> Option<Schema>
fn get_by_fingerprint(&self, fp: &EventFingerprint) -> Option<Schema>
Look up a schema by its fingerprint.
Source§fn get_by_name(&self, name: &str, version: Option<u32>) -> Option<Schema>
fn get_by_name(&self, name: &str, version: Option<u32>) -> Option<Schema>
Look up a schema by name and optional version.
If
version is None, returns the latest non-deprecated version.Auto Trait Implementations§
impl Freeze for MemoryRegistry
impl RefUnwindSafe for MemoryRegistry
impl Send for MemoryRegistry
impl Sync for MemoryRegistry
impl Unpin for MemoryRegistry
impl UnsafeUnpin for MemoryRegistry
impl UnwindSafe for MemoryRegistry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more