pub struct WatchtowerLoop { /* private fields */ }Expand description
The Watchtower content source watcher service.
Watches configured source directories for file changes, debounces events, and ingests changed files into the database via the shared pipeline.
Implementations§
Source§impl WatchtowerLoop
impl WatchtowerLoop
Sourcepub fn new(
pool: DbPool,
config: ContentSourcesConfig,
connector_config: ConnectorConfig,
data_dir: PathBuf,
) -> Self
pub fn new( pool: DbPool, config: ContentSourcesConfig, connector_config: ConnectorConfig, data_dir: PathBuf, ) -> Self
Create a new WatchtowerLoop.
Sourcepub async fn run(&self, cancel: CancellationToken)
pub async fn run(&self, cancel: CancellationToken)
Run the watchtower loop until the cancellation token is triggered.
Registers both local filesystem and remote sources, then runs:
notifywatcher + fallback polling for local sources- interval-based polling for remote sources (e.g. Google Drive)
Auto Trait Implementations§
impl Freeze for WatchtowerLoop
impl !RefUnwindSafe for WatchtowerLoop
impl Send for WatchtowerLoop
impl Sync for WatchtowerLoop
impl Unpin for WatchtowerLoop
impl UnsafeUnpin for WatchtowerLoop
impl !UnwindSafe for WatchtowerLoop
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more