working commit
This commit is contained in:
+33
-11
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user