type
Store
type Store struct {
db *sql.DB
anchor *sql.Conn
dsn string
filePath string
lockPath string
now func() time.Time
writeGate chan struct{}
uploadGate chan struct{}
}A SQLite implementation of Ridu’s document, snapshot, auth, preference, task, lock, version, and migration store contracts.
Source adapters/sqlite/sqlite.go:51
Use the application and Local API for content operations. SQLite is supported on a local filesystem and one application host; it is not a shared-network-filesystem or multi-host store.
Methods
Store.Close()Release every pooled SQLite connection.
Store.Ping()Check connectivity and foreign-key enforcement.
Store.Ready()Prove connectivity and an exact applied manifest.
Store.ReadyWithMigrationHistory()Prove ordinary readiness and exact agreement with executable migration history.
Store.Begin()Begin a write-capable transaction with an immediate writer reservation.
Store.BeginSnapshot()Begin a stable deferred read snapshot.
Store.Migrate()Install adapter-owned tables and record the manifest for development or bootstrap use.
Store.ApplyArtifacts()Validate and atomically apply all pending immutable artifacts.
Store.ArtifactPlan()Return manifest-bound pending and applied artifact topology.
Store.ArtifactStatus()Report immutable history against the SQLite ledger and executable manifest.
Store.DownArtifacts()Atomically reverse the latest applied artifact.
Store.ResetArtifacts()Atomically reverse all applied artifacts.
Store.RefreshArtifacts()Atomically reverse and replay committed history.
Store.FreshArtifacts()Drop non-internal objects and replay committed history atomically.
Store.AcquireDocumentLock()Public method Store.AcquireDocumentLock from github.com/riducms/ridu/adapters/sqlite.
Store.AllowAuthAttempt()Public method Store.AllowAuthAttempt from github.com/riducms/ridu/adapters/sqlite.
Store.CancelTask()Public method Store.CancelTask from github.com/riducms/ridu/adapters/sqlite.
Store.ChangePasswordHash()Public method Store.ChangePasswordHash from github.com/riducms/ridu/adapters/sqlite.
Store.ClaimTasks()Public method Store.ClaimTasks from github.com/riducms/ridu/adapters/sqlite.
Store.CompleteTask()Public method Store.CompleteTask from github.com/riducms/ridu/adapters/sqlite.
Store.CreateAPIKey()Public method Store.CreateAPIKey from github.com/riducms/ridu/adapters/sqlite.
Store.CreateAuthToken()Public method Store.CreateAuthToken from github.com/riducms/ridu/adapters/sqlite.
Store.CreateSession()Public method Store.CreateSession from github.com/riducms/ridu/adapters/sqlite.
Store.DeleteAPIKey()Public method Store.DeleteAPIKey from github.com/riducms/ridu/adapters/sqlite.
Store.DeletePreference()Public method Store.DeletePreference from github.com/riducms/ridu/adapters/sqlite.
Store.DeletePreferences()Public method Store.DeletePreferences from github.com/riducms/ridu/adapters/sqlite.
Store.DeleteSession()Public method Store.DeleteSession from github.com/riducms/ridu/adapters/sqlite.
Store.DeleteUserSession()Public method Store.DeleteUserSession from github.com/riducms/ridu/adapters/sqlite.
Store.DeleteUserSessions()Public method Store.DeleteUserSessions from github.com/riducms/ridu/adapters/sqlite.
Store.DismissTaskForTarget()Public method Store.DismissTaskForTarget from github.com/riducms/ridu/adapters/sqlite.
Store.EnqueueTask()Public method Store.EnqueueTask from github.com/riducms/ridu/adapters/sqlite.
Store.FailTask()Public method Store.FailTask from github.com/riducms/ridu/adapters/sqlite.
Store.FindAPIKey()Public method Store.FindAPIKey from github.com/riducms/ridu/adapters/sqlite.
Store.FindAuthCredential()Public method Store.FindAuthCredential from github.com/riducms/ridu/adapters/sqlite.
Store.FindDocumentLock()Public method Store.FindDocumentLock from github.com/riducms/ridu/adapters/sqlite.
Store.FindSession()Public method Store.FindSession from github.com/riducms/ridu/adapters/sqlite.
Store.FindTask()Public method Store.FindTask from github.com/riducms/ridu/adapters/sqlite.
Store.ForceUnlock()Public method Store.ForceUnlock from github.com/riducms/ridu/adapters/sqlite.
Store.GetPreference()Public method Store.GetPreference from github.com/riducms/ridu/adapters/sqlite.
Store.HeartbeatTask()Public method Store.HeartbeatTask from github.com/riducms/ridu/adapters/sqlite.
Store.ListAPIKeys()Public method Store.ListAPIKeys from github.com/riducms/ridu/adapters/sqlite.
Store.ListSessions()Public method Store.ListSessions from github.com/riducms/ridu/adapters/sqlite.
Store.ListTasks()Public method Store.ListTasks from github.com/riducms/ridu/adapters/sqlite.
Store.LockUploadObjects()LockUploadObjects serializes upload admission and cleanup across every process sharing a file database. SQLite memory databases are private to one Store and use the equivalent in-process gate.
Store.PruneExpiredAuth()PruneExpiredAuth removes at most limit records from each expiring auth family. BEGIN IMMEDIATE serializes candidates across processes so two maintenance workers cannot count or delete the same record.
Store.PruneTasks()Public method Store.PruneTasks from github.com/riducms/ridu/adapters/sqlite.
Store.RecordFailedLogin()Public method Store.RecordFailedLogin from github.com/riducms/ridu/adapters/sqlite.
Store.ReleaseDocumentLock()Public method Store.ReleaseDocumentLock from github.com/riducms/ridu/adapters/sqlite.
Store.ReleaseTask()Public method Store.ReleaseTask from github.com/riducms/ridu/adapters/sqlite.
Store.ResetLoginAttempts()Public method Store.ResetLoginAttempts from github.com/riducms/ridu/adapters/sqlite.
Store.ResetPasswordWithToken()Public method Store.ResetPasswordWithToken from github.com/riducms/ridu/adapters/sqlite.
Store.RotateSession()Public method Store.RotateSession from github.com/riducms/ridu/adapters/sqlite.
Store.SetPasswordHash()Public method Store.SetPasswordHash from github.com/riducms/ridu/adapters/sqlite.
Store.SetPreference()Public method Store.SetPreference from github.com/riducms/ridu/adapters/sqlite.
Store.TouchAPIKey()Public method Store.TouchAPIKey from github.com/riducms/ridu/adapters/sqlite.
Store.UpgradePasswordHash()Public method Store.UpgradePasswordHash from github.com/riducms/ridu/adapters/sqlite.
Store.VerifyEmailWithToken()Public method Store.VerifyEmailWithToken from github.com/riducms/ridu/adapters/sqlite.