SyncDriver constructor

SyncDriver({
  1. required IpcSink sink,
  2. required IpcSource source,
  3. required DurableOutbox outbox,
  4. required Clock clock,
  5. required SnapshotProvider provider,
  6. Epoch lastEpoch = 0,
})

A driver whose receiver has already applied through lastEpoch (0 = fresh; a Snapshot seeds the first epoch — resume otherwise).

Implementation

SyncDriver({
  required IpcSink sink,
  required IpcSource source,
  required DurableOutbox outbox,
  required Clock clock,
  required SnapshotProvider provider,
  Epoch lastEpoch = 0,
})  : _sink = sink,
      _source = source,
      _outbox = outbox,
      _clock = clock,
      _provider = provider,
      _coordinator = ResyncCoordinator(lastEpoch);