sqlite library

The SQLite persistence backend for at_server. Depends only on the abstract spec surface exported by package:at_persistence_secondary_server/at_persistence_secondary_server.dart.

One database per atSign (<storagePath>/<atSign>/atsign.db); the per-atSign schema is a stable interchange contract. See SqliteSchema for the canonical DDL.

Classes

SqliteAtAccessLog
SQLite-backed AtAccessLog (access_log table). Insert-only verb / connection audit; seq is the rowid alias, so insertion order is id order.
SqliteAtCommitLog
SQLite-backed AtCommitLog. One row per atKey, newest-wins, with a dense/gapless commit_id allocated from the counters table in the same transaction as the keystore write (see commitSync).
SqliteAtKeyValueStore
SQLite-backed AtKeyValueStore — the main keystore (at_data table).
SqliteAtNotificationKeystore
SQLite-backed AtNotificationKeystore (notifications table). A KeyValueStore<String, AtNotification> — no commit log, no metadata triplet — plus the notification-specific init / iterate surface.
SqliteAtPersistenceBundle
SQLite-backed AtPersistenceBundle. All stores share the one SqliteDatabase; the bundle owns its lifecycle.
SqliteAtPersistenceFactory
SQLite-backed AtPersistenceFactory. Produces one SqliteAtPersistenceBundle per atSign, each wrapping a single shared SqliteDatabase (<storagePath>/<atSign>/atsign.db) — so every store for an atSign transacts against the same connection.
SqliteDatabase
A single per-atSign SQLite database file. All four stores for an atSign (keystore, commit log, notification keystore, access log) share one instance — one open connection to one atsign.db — so a value write and its commit-log row commit atomically in one transaction.
SqlitePersistenceConfig
SQLite-specific persistence configuration.
SqliteSchema
The per-atSign SQLite schema — a stable interchange contract. One database per atSign; every store (keystore, commit log, notifications, access log) lives in the same atsign.db file so a value write and its commit entry can share one transaction.