pub struct VersionManager { /* private fields */ }Expand description
Version manager for handling document versions
Implementations§
Source§impl VersionManager
impl VersionManager
Sourcepub async fn new(config: VersioningConfig) -> RragResult<Self>
pub async fn new(config: VersioningConfig) -> RragResult<Self>
Create a new version manager
Sourcepub async fn create_version(
&self,
document: &Document,
author: &str,
change_type: ChangeType,
branch: Option<&str>,
) -> RragResult<DocumentVersion>
pub async fn create_version( &self, document: &Document, author: &str, change_type: ChangeType, branch: Option<&str>, ) -> RragResult<DocumentVersion>
Create a new version of a document
Sourcepub async fn get_version(
&self,
document_id: &str,
version_id: &str,
) -> RragResult<Option<DocumentVersion>>
pub async fn get_version( &self, document_id: &str, version_id: &str, ) -> RragResult<Option<DocumentVersion>>
Get a specific version of a document
Sourcepub async fn get_current_version(
&self,
document_id: &str,
) -> RragResult<Option<DocumentVersion>>
pub async fn get_current_version( &self, document_id: &str, ) -> RragResult<Option<DocumentVersion>>
Get the current version of a document
Sourcepub async fn get_version_history(
&self,
document_id: &str,
) -> RragResult<Option<VersionHistory>>
pub async fn get_version_history( &self, document_id: &str, ) -> RragResult<Option<VersionHistory>>
Get version history for a document
Sourcepub async fn detect_conflicts(
&self,
document: &Document,
expected_version: Option<&str>,
) -> RragResult<Option<VersionConflict>>
pub async fn detect_conflicts( &self, document: &Document, expected_version: Option<&str>, ) -> RragResult<Option<VersionConflict>>
Detect conflicts when updating a document
Sourcepub async fn resolve_conflict(
&self,
conflict_id: &str,
resolution: VersionResolution,
) -> RragResult<bool>
pub async fn resolve_conflict( &self, conflict_id: &str, resolution: VersionResolution, ) -> RragResult<bool>
Resolve a version conflict
Sourcepub async fn get_unresolved_conflicts(&self) -> RragResult<Vec<VersionConflict>>
pub async fn get_unresolved_conflicts(&self) -> RragResult<Vec<VersionConflict>>
Get all unresolved conflicts
Sourcepub async fn get_stats(&self) -> VersionStats
pub async fn get_stats(&self) -> VersionStats
Get version statistics
Sourcepub async fn health_check(&self) -> RragResult<bool>
pub async fn health_check(&self) -> RragResult<bool>
Health check
Auto Trait Implementations§
impl Freeze for VersionManager
impl !RefUnwindSafe for VersionManager
impl Send for VersionManager
impl Sync for VersionManager
impl Unpin for VersionManager
impl !UnwindSafe for VersionManager
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