replay method

  1. @override
Future<void> replay(
  1. CommitEntry entry
)
override

Replay entry under its existing commitId WITHOUT firing change-event listeners. Used by the persistence migrator to copy commit-log content from one backend to another while preserving sync identity. Idempotent on (commitId, atKey, operation).

Implementation

@override
Future<void> replay(CommitEntry entry) async {
  if (entry.commitId == null) {
    throw ArgumentError('replay requires a non-null commitId on the entry');
  }
  try {
    await _commitLogKeyStore.getBox().put(entry.commitId, entry);
  } on Exception catch (e) {
    throw DataStoreException(
        'Exception replaying commit entry: ${e.toString()}');
  } on HiveError catch (e) {
    throw DataStoreException(
        'Hive error replaying commit entry: ${e.toString()}');
  }
}