working commit

This commit is contained in:
2026-01-28 13:06:04 +02:00
parent 6db319088e
commit d647854e98
13 changed files with 293 additions and 45 deletions
+33 -11
View File
@@ -18,15 +18,17 @@ import (
"mstore/app/maindb"
"mstore/app/operator"
"mstore/app/service"
"mstore/app/storage"
)
type Server struct {
conf *config.Config
oper *operator.Operator
svc *service.Service
maindb *maindb.Database
hand *handler.Handler
logg *logger.Logger
conf *config.Config
oper *operator.Operator
svc *service.Service
mdb *maindb.Database
hand *handler.Handler
logg *logger.Logger
stor *storage.Storage
}
func NewServer() (*Server, error) {
@@ -56,31 +58,49 @@ func (srv *Server) Build() error {
srv.logg.Infof("Server build")
// Database create
srv.logg.Infof("Create database directory")
dbdir := srv.conf.Database.Basepath
err = os.MkdirAll(srv.conf.Database.Basepath, 0750)
err = os.MkdirAll(dbdir, 0750)
if err != nil {
return err
}
maindb := maindb.NewDatabase(dbdir)
err = maindb.OpenDatabase()
mdb := maindb.NewDatabase(dbdir)
srv.logg.Infof("Open database")
err = mdb.OpenDatabase()
if err != nil {
return err
}
err = maindb.InitDatabase()
srv.logg.Infof("Initialize database")
err = mdb.InitDatabase()
if err != nil {
return err
}
srv.mdb = mdb
// Storage create
srv.logg.Infof("Create storage directory")
datadir := srv.conf.Database.Basepath
err = os.MkdirAll(datadir, 0750)
if err != nil {
return err
}
srv.logg.Infof("Create storage")
store := storage.NewStorage(datadir)
srv.stor = store
// Operator create
srv.logg.Infof("Create operator")
operatorParams := &operator.OperatorParams{
MainDB: srv.maindb,
MainDB: srv.mdb,
Store: srv.stor,
}
srv.oper, err = operator.NewOperator(operatorParams)
if err != nil {
return err
}
// Handler create
srv.logg.Infof("Create handler")
handlerParams := &handler.HandlerParams{
Operator: srv.oper,
}
@@ -92,6 +112,7 @@ func (srv *Server) Build() error {
serviceParams := &service.ServiceParams{
Handler: srv.hand,
}
srv.logg.Infof("Create service")
srv.svc, err = service.NewService(serviceParams)
if err != nil {
return err
@@ -118,6 +139,7 @@ func (srv *Server) Run() error {
svcDone := make(chan error, 1)
// Service run
srv.logg.Infof("Start service")
startService := func(svc *service.Service, done chan error) {
err = svc.Run()
if err != nil {