pub struct DataMarkerCapture { /* private fields */ }Expand description
Engine-thread component that captures data marker cursors at the bus boundary.
DataMarkerCapture owns the in-memory cursor state and the run-local marker sequence. It reads
the shared entry submit counter with acquire ordering so marker records preserve engine-thread
causal order while the writer lane remains non-blocking.
Implementations§
Source§impl DataMarkerCapture
impl DataMarkerCapture
Sourcepub fn new(
registry: DataMarkerExtractorRegistry,
writer: MarkerWriter,
submit_counter: Arc<AtomicU64>,
config: &DataMarkerConfig,
) -> Self
pub fn new( registry: DataMarkerExtractorRegistry, writer: MarkerWriter, submit_counter: Arc<AtomicU64>, config: &DataMarkerConfig, ) -> Self
Creates a capture component over registry, writer, and the shared submit counter.
Sourcepub fn observe_publish(
&mut self,
topic: Topic,
message: &dyn Any,
_now: UnixNanos,
)
pub fn observe_publish( &mut self, topic: Topic, message: &dyn Any, _now: UnixNanos, )
Observes a bus publish and advances the data cursor when an extractor is registered.
Sourcepub fn on_entry_submitted(&mut self, now: UnixNanos)
pub fn on_entry_submitted(&mut self, now: UnixNanos)
Emits a cursor snapshot for an event-store entry boundary when data advanced.
Sourcepub fn maybe_safety_flush(&mut self, now: UnixNanos)
pub fn maybe_safety_flush(&mut self, now: UnixNanos)
Emits a cursor snapshot when the safety interval has elapsed and data advanced.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for DataMarkerCapture
impl !RefUnwindSafe for DataMarkerCapture
impl !UnwindSafe for DataMarkerCapture
impl Send for DataMarkerCapture
impl Sync for DataMarkerCapture
impl Unpin for DataMarkerCapture
impl UnsafeUnpin for DataMarkerCapture
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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