Contracts and DTOs for SquidStd's binary persistence engine. Depend on this package to expose or consume persistence types without pulling in the engine implementation.
dotnet add package SquidStd.Persistence.Abstractions| Type | Purpose |
|---|---|
IPersistenceService |
Lifecycle (ISquidStdService) + GetStore<TEntity,TKey>(). |
IEntityStore<TEntity,TKey> |
In-memory CRUD contract (clones on read, journals on write). |
IPersistenceEntityRegistry |
Registry of entity descriptors keyed by typeId/type pair. |
IPersistenceEntityDescriptor<T,TKey> |
Serialize / deserialize / clone / key extraction contract. |
ISnapshotService / IJournalService |
Per-type snapshot and append-only journal contracts. |
PersistenceConfig |
Autosave cadence, file names, save directory, file lock. |
JournalEntry, EntitySnapshotBucket, PersistedBucket, SnapshotFileEnvelope |
Persisted DTOs. |
JournalEntityOperationType |
Upsert / Remove journal operation discriminator. |
SnapshotSaveStartedEvent / SnapshotSaveCompletedEvent |
Snapshot lifecycle events (IEvent). |
- Article: Persistence abstractions
- Tutorial: Persistence
SquidStd.Persistence- the binary persistence engine implementing these contractsSquidStd.Persistence.MessagePack- MessagePack entity descriptors for the engine
MIT - part of SquidStd.