Files
CertifiedInvSWDB/sw/sw.go
T

48 lines
753 B
Go

// Package sw will represent the sw
package sw
import (
"errors"
models "github.com/ESilva15/PTInvCertSWDB/sw/models"
repo "github.com/ESilva15/PTInvCertSWDB/sw/repo"
)
type RepoType int
const (
FILEDB RepoType = iota
POSTGRES
)
var service *SWService
type SWService struct {
SWRepo repo.SWRepo
}
func StartSWService(rt RepoType) error {
var err error
var swRepo repo.SWRepo
switch rt {
case FILEDB:
swRepo, err = repo.NewYAMLRepo("./swdb.yaml")
if err != nil {
return errors.New("Failed to create yaml repo: " + err.Error())
}
default:
return errors.New("repo type not implemented yet")
}
service = &SWService{
SWRepo: swRepo,
}
return nil
}
func Get(id int) (models.SW, error) {
return service.SWRepo.Get(id)
}