37
vendor/github.com/status-im/status-go/walletdatabase/database.go
generated
vendored
Normal file
37
vendor/github.com/status-im/status-go/walletdatabase/database.go
generated
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
package walletdatabase
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
|
||||
"github.com/status-im/status-go/sqlite"
|
||||
"github.com/status-im/status-go/walletdatabase/migrations"
|
||||
)
|
||||
|
||||
type DbInitializer struct {
|
||||
}
|
||||
|
||||
func (a DbInitializer) Initialize(path, password string, kdfIterationsNumber int) (*sql.DB, error) {
|
||||
return InitializeDB(path, password, kdfIterationsNumber)
|
||||
}
|
||||
|
||||
var walletCustomSteps = []*sqlite.PostStep{}
|
||||
|
||||
func doMigration(db *sql.DB) error {
|
||||
// Run all the new migrations
|
||||
return migrations.Migrate(db, walletCustomSteps)
|
||||
}
|
||||
|
||||
// InitializeDB creates db file at a given path and applies migrations.
|
||||
func InitializeDB(path, password string, kdfIterationsNumber int) (*sql.DB, error) {
|
||||
db, err := sqlite.OpenDB(path, password, kdfIterationsNumber)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
err = doMigration(db)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return db, nil
|
||||
}
|
||||
781
vendor/github.com/status-im/status-go/walletdatabase/migrations/bindata.go
generated
vendored
Normal file
781
vendor/github.com/status-im/status-go/walletdatabase/migrations/bindata.go
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
30
vendor/github.com/status-im/status-go/walletdatabase/migrations/migrate.go
generated
vendored
Normal file
30
vendor/github.com/status-im/status-go/walletdatabase/migrations/migrate.go
generated
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
package migrations
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
|
||||
bindata "github.com/status-im/migrate/v4/source/go_bindata"
|
||||
|
||||
"github.com/status-im/status-go/sqlite"
|
||||
)
|
||||
|
||||
// Migrate applies migrations.
|
||||
// see Migrate in vendor/status-go/sqlite/migrate.go
|
||||
func Migrate(db *sql.DB, customSteps []*sqlite.PostStep) error {
|
||||
return sqlite.Migrate(db, bindata.Resource(
|
||||
AssetNames(),
|
||||
func(name string) ([]byte, error) {
|
||||
return Asset(name)
|
||||
},
|
||||
), customSteps, nil)
|
||||
}
|
||||
|
||||
// MigrateTo is used for testing purposes
|
||||
func MigrateTo(db *sql.DB, customSteps []*sqlite.PostStep, untilVersion uint) error {
|
||||
return sqlite.Migrate(db, bindata.Resource(
|
||||
AssetNames(),
|
||||
func(name string) ([]byte, error) {
|
||||
return Asset(name)
|
||||
},
|
||||
), customSteps, &untilVersion)
|
||||
}
|
||||
Reference in New Issue
Block a user