mirror of
https://github.com/IceWhaleTech/CasaOS.git
synced 2025-06-16 05:55:33 +00:00
Added CasaOS own file manager, now you can browse, upload, download files from the system, even edit code online, preview photos and videos through it. It will appear in the first position of Apps. Added CPU core count display and memory capacity display.
136 lines
2.8 KiB
Go
136 lines
2.8 KiB
Go
package service
|
|
|
|
import (
|
|
loger2 "github.com/IceWhaleTech/CasaOS/pkg/utils/loger"
|
|
"github.com/gorilla/websocket"
|
|
"github.com/patrickmn/go-cache"
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
var Cache *cache.Cache
|
|
|
|
var MyService Repository
|
|
|
|
var WebSocketConns []*websocket.Conn
|
|
|
|
var SocketRun bool
|
|
|
|
type Repository interface {
|
|
App() AppService
|
|
DDNS() DDNSService
|
|
User() UserService
|
|
Docker() DockerService
|
|
//Redis() RedisService
|
|
ZeroTier() ZeroTierService
|
|
ZiMa() ZiMaService
|
|
Casa() CasaService
|
|
Disk() DiskService
|
|
Notify() NotifyServer
|
|
ShareDirectory() ShareDirService
|
|
Task() TaskService
|
|
Rely() RelyService
|
|
System() SystemService
|
|
Shortcuts() ShortcutsService
|
|
Search() SearchService
|
|
Person() PersonService
|
|
}
|
|
|
|
func NewService(db *gorm.DB, log loger2.OLog) Repository {
|
|
|
|
return &store{
|
|
app: NewAppService(db, log),
|
|
ddns: NewDDNSService(db, log),
|
|
user: NewUserService(),
|
|
docker: NewDockerService(log),
|
|
//redis: NewRedisService(rp),
|
|
zerotier: NewZeroTierService(),
|
|
zima: NewZiMaService(),
|
|
casa: NewCasaService(),
|
|
disk: NewDiskService(log, db),
|
|
notify: NewNotifyService(db),
|
|
shareDirectory: NewShareDirService(db, log),
|
|
task: NewTaskService(db, log),
|
|
rely: NewRelyService(db, log),
|
|
system: NewSystemService(log),
|
|
shortcuts: NewShortcutsService(db),
|
|
search: NewSearchService(),
|
|
person: NewPersonService(db),
|
|
}
|
|
}
|
|
|
|
type store struct {
|
|
db *gorm.DB
|
|
app AppService
|
|
ddns DDNSService
|
|
user UserService
|
|
docker DockerService
|
|
zerotier ZeroTierService
|
|
zima ZiMaService
|
|
casa CasaService
|
|
disk DiskService
|
|
notify NotifyServer
|
|
shareDirectory ShareDirService
|
|
task TaskService
|
|
rely RelyService
|
|
system SystemService
|
|
shortcuts ShortcutsService
|
|
search SearchService
|
|
person PersonService
|
|
}
|
|
|
|
func (c *store) Rely() RelyService {
|
|
return c.rely
|
|
}
|
|
func (c *store) Shortcuts() ShortcutsService {
|
|
return c.shortcuts
|
|
}
|
|
func (c *store) Person() PersonService {
|
|
return c.person
|
|
}
|
|
func (c *store) System() SystemService {
|
|
return c.system
|
|
}
|
|
func (c *store) Notify() NotifyServer {
|
|
|
|
return c.notify
|
|
}
|
|
|
|
func (c *store) App() AppService {
|
|
return c.app
|
|
}
|
|
|
|
func (c *store) DDNS() DDNSService {
|
|
return c.ddns
|
|
}
|
|
|
|
func (c *store) User() UserService {
|
|
return c.user
|
|
}
|
|
|
|
func (c *store) Docker() DockerService {
|
|
return c.docker
|
|
}
|
|
|
|
func (c *store) ZeroTier() ZeroTierService {
|
|
return c.zerotier
|
|
}
|
|
func (c *store) ZiMa() ZiMaService {
|
|
return c.zima
|
|
}
|
|
func (c *store) Casa() CasaService {
|
|
return c.casa
|
|
}
|
|
|
|
func (c *store) Disk() DiskService {
|
|
return c.disk
|
|
}
|
|
func (c *store) ShareDirectory() ShareDirService {
|
|
return c.shareDirectory
|
|
}
|
|
func (c *store) Task() TaskService {
|
|
return c.task
|
|
}
|
|
func (c *store) Search() SearchService {
|
|
return c.search
|
|
}
|