Files
server/database/database.go
T
2020-05-08 15:54:40 +02:00

30 lines
730 B
Go

package database
import (
"errors"
"git.aiterp.net/stufflog/server/database/drivers/mysqldriver"
"git.aiterp.net/stufflog/server/database/repositories"
)
var ErrDriverNotSupported = errors.New("driver not found or supported")
type Database interface {
Issues() repositories.IssueRepository
Items() repositories.ItemRepository
Projects() repositories.ProjectRepository
Session() repositories.SessionRepository
Users() repositories.UserRepository
ProjectStatuses() repositories.ProjectStatusRepository
// Migrate the database.
Migrate() error
}
func Open(driver, connect string) (Database, error) {
switch driver {
case "mysql":
return mysqldriver.Open(connect)
default:
return nil, ErrDriverNotSupported
}
}