diff options
author | sinanmohd <sinan@sinanmohd.com> | 2024-07-04 13:13:23 +0530 |
---|---|---|
committer | sinanmohd <sinan@sinanmohd.com> | 2024-07-05 17:02:06 +0530 |
commit | e2f67996a608346ea3f3525ef2febf6ca5d2b78c (patch) | |
tree | 932f766b65ed5a6ff3d57c772292a2b75210d9aa /db/main.go | |
parent | e309091d17720b69c53172a41c0ea45ad7b66911 (diff) |
refactor: drop http api, move to sqlc/postgresql
Diffstat (limited to 'db/main.go')
-rw-r--r-- | db/main.go | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/db/main.go b/db/main.go deleted file mode 100644 index 49658cd..0000000 --- a/db/main.go +++ /dev/null @@ -1,77 +0,0 @@ -package db - -import ( - "database/sql" - "os" - "path/filepath" - "sync" - - "github.com/go-playground/validator/v10" - _ "github.com/mattn/go-sqlite3" -) - -type SafeDB struct { - mu sync.Mutex - validate *validator.Validate - - path string - db *sql.DB -} - -func (safe *SafeDB) setupPath() error { - const path string = "/var/lib/redq/" - const name string = "redq.sqlite3" - - err := os.MkdirAll(path, os.ModeDir) - if err != nil { - return err - } - - safe.path = filepath.Join(path, name) - return nil -} - -func NewSafeDB() (*SafeDB, error) { - const create string = ` - CREATE TABLE IF NOT EXISTS Accounts( - id INTEGER PRIMARY KEY, - UserName CHAR(64) NOT NULL UNIQUE, - Password CHAR(128) NOT NULL, - - Level INTEGER NOT NULL, - FirstName CHAR(32) NOT NULL, - LastName CHAR(32) NOT NULL - ); - - CREATE TABLE IF NOT EXISTS Bearer( - id INTEGER PRIMARY KEY, - Token CHAR(128) NOT NULL UNIQUE, - ValidUpTo TIME NOT NULL, - accountId INTEGER NOT NULL, - - FOREIGN KEY (accountId) - REFERENCES Accounts (id) - ); - ` - safe := &SafeDB{} - err := safe.setupPath() - if err != nil { - return nil, err - } - - safe.mu.Lock() - defer safe.mu.Unlock() - - safe.db, err = sql.Open("sqlite3", safe.path) - if err != nil { - return nil, err - } - - _, err = safe.db.Exec(create) - if err != nil { - return nil, err - } - - safe.validate = validator.New(validator.WithRequiredStructEnabled()) - return safe, nil -} |