SqlitePersistenceConfig class
SQLite-specific persistence configuration.
Unlike Hive (which spreads the keystore / commit log / access log /
notifications across four storage directories), the SQLite backend
keeps all of an atSign's data in a single atsign.db file under a
per-atSign directory: <storagePath>/<atSign>/atsign.db. The four
path getters the AtPersistenceConfig contract requires therefore all
resolve to the one storage root — they are vestigial for a single-file
backend but kept for interface conformance.
- Implemented types
Constructors
- SqlitePersistenceConfig({required String storagePath, String? backendMarkerPath, bool enableAccessLog = true, bool enableNotificationKeystore = true, bool enableCommitLog = true})
- SqlitePersistenceConfig.clientDefaults({required String storagePath, String? backendMarkerPath})
-
at_client-shaped config: keystore only, commit-log-free.
factory
- SqlitePersistenceConfig.serverDefaults({required String storagePath, String? backendMarkerPath})
-
atSecondary server config: all optional capabilities on.
factory
Properties
- accessLogPath → String
-
Where the access log lives. Only consulted when
enableAccessLog is
true.no setteroverride - backend → AtPersistenceBackendId
-
The backend this config is for. Must match the
AtPersistenceFactory.backendId you pass it to.
no setteroverride
- backendMarkerPath → String
-
Where the marker file lives. A future backend-aware factory
will use this to detect backend changes between restarts; the
current implementation doesn't read it, it's declared here so
the field is part of the contract from day one.
final
- commitLogPath → String
-
Where the commit log lives.
no setteroverride
- enableAccessLog → bool
-
Whether the access log should be initialised. Server-only —
clients leave this
falseand never read the access log.final - enableCommitLog → bool
-
Whether the keystore should be initialised with a commit log.
Server bundles set this
true(every write appends to the commit log for sync). Clients that no longer rely on a commit log leave itfalse, in which case the keystore is created commit-log-free and commitLogPath is never consulted.final - enableNotificationKeystore → bool
-
Whether the notification keystore should be initialised as
persistence. Server-only — clients leave this
falseand handle notifications via the at_lookup connection instead.final - hashCode → int
-
The hash code for this object.
no setterinherited
- notificationStoragePath → String
-
Where the notification keystore lives. Only consulted when
enableNotificationKeystore is
true.no setteroverride - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- storagePath → String
-
The SQLite storage root. Per-atSign databases live at
<storagePath>/<atSign>/atsign.db, so this is typically a.../sqlitedirectory sibling to the Hive tree.final
Methods
-
dbPathFor(
String atSign) → String -
The
.dbfile path foratSign:<storagePath>/<atSign>/atsign.db. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited