github.com/soulteary/pocket-bookcase@v0.0.0-20240428065142-0b5a9a0fc98a/internal/webserver/server.go (about) 1 package webserver 2 3 import ( 4 "time" 5 6 cch "github.com/patrickmn/go-cache" 7 "github.com/soulteary/pocket-bookcase/internal/database" 8 "github.com/soulteary/pocket-bookcase/internal/dependencies" 9 ) 10 11 // Config is parameter that used for starting web server 12 type Config struct { 13 DB database.DB 14 DataDir string 15 ServerAddress string 16 ServerPort int 17 RootPath string 18 Log bool 19 } 20 21 func GetLegacyHandler(cfg Config, dependencies *dependencies.Dependencies) *Handler { 22 return &Handler{ 23 DB: cfg.DB, 24 DataDir: cfg.DataDir, 25 UserCache: cch.New(time.Hour, 10*time.Minute), 26 SessionCache: cch.New(time.Hour, 10*time.Minute), 27 ArchiveCache: cch.New(time.Minute, 5*time.Minute), 28 RootPath: cfg.RootPath, 29 Log: cfg.Log, 30 dependencies: dependencies, 31 } 32 }