DVCaptureSink class abstract interface

A sync destination: a warehouse, a column store, files in object storage.

Not a database adapter. No model is stored in a destination and no query is served from one; a capture stream is written to it.

Implementers

Properties

deduplicates → bool
Whether applying a change twice leaves the same result. None promises exactly-once delivery; this is what makes at-least-once harmless.
no setter
hashCode → int
The hash code for this object.
no setterinherited
name → String
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

backfillComplete(String model, int throughSequence, {String? tenant}) → Future<void>
A backfill copied every live row of model as of throughSequence; anything the destination holds that the backfill did not touch and no later change wrote is gone from the source.
erase(List<DVCapturedChange> changes) → Future<void>
Applies an erasure now, out of band, superseding every change to the same records with a lower sequence -- including one already in flight.
evolve(DVCaptureSchemaChange change) → Future<void>
Adds or removes columns. Must be idempotent: a crash after it and before the checkpoint delivers it again.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited
write(DVCaptureBatch batch) → Future<void>
Applies batch. Throwing leaves the checkpoint where it was, and the whole batch is delivered again (DV-CDC-001).

Operators

operator ==(Object other) → bool
The equality operator.
inherited