focus-flow/packages/scheduler_persistence_memory/lib/persistence_memory.dart

23 lines
1.1 KiB
Dart

/// In-memory implementations of the scheduler persistence repository contracts.
///
/// These repositories are intended for core tests, local integration tests, and
/// adapter conformance checks. They model optimistic compare-and-set behavior
/// but do not provide durable storage.
library;
import 'dart:convert';
import 'package:scheduler_core/scheduler_core.dart' as core;
import 'package:scheduler_persistence/persistence.dart';
part 'persistence_memory/repositories/in_memory_task_repository.dart';
part 'persistence_memory/repositories/in_memory_project_repository.dart';
part 'persistence_memory/repositories/in_memory_locked_block_repository.dart';
part 'persistence_memory/repositories/in_memory_settings_repository.dart';
part 'persistence_memory/repositories/in_memory_schedule_snapshot_repository.dart';
part 'persistence_memory/records/identified_record.dart';
part 'persistence_memory/records/record.dart';
part 'persistence_memory/records/snapshot_record.dart';
const _snapshotRetention = Duration(days: 30);
final _epoch = DateTime.fromMillisecondsSinceEpoch(0, isUtc: true);