package controller import ( "context" "github.com/loveuer/nf-disk/internal/api" "github.com/loveuer/nf-disk/internal/db" "github.com/loveuer/nf-disk/internal/manager" "github.com/loveuer/nf-disk/internal/model" "github.com/loveuer/nf-disk/internal/tool" "github.com/loveuer/nf-disk/ndh" "github.com/loveuer/nf/nft/log" ) type App struct { ctx context.Context handlers map[string]ndh.Handler } func NewApp() *App { return &App{ handlers: make(map[string]ndh.Handler), } } func (a *App) Init(ctx context.Context) { log.Info("app init!!!") a.ctx = ctx tool.Must(db.Init(ctx, "sqlite::memory", db.OptSqliteByMem(nil))) tool.Must(model.Init(db.Default.Session())) tool.Must(manager.Init(ctx)) tool.Must(api.Init(ctx)) } func (a *App) Startup(ctx context.Context) { log.Info("app startup!!!") }