service.go 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. package service
  2. import (
  3. loger2 "github.com/IceWhaleTech/CasaOS/pkg/utils/loger"
  4. "github.com/gorilla/websocket"
  5. "github.com/patrickmn/go-cache"
  6. "gorm.io/gorm"
  7. )
  8. var Cache *cache.Cache
  9. var MyService Repository
  10. var WebSocketConns []*websocket.Conn
  11. var SocketRun bool
  12. type Repository interface {
  13. App() AppService
  14. DDNS() DDNSService
  15. User() UserService
  16. Docker() DockerService
  17. //Redis() RedisService
  18. ZiMa() ZiMaService
  19. Casa() CasaService
  20. Disk() DiskService
  21. Notify() NotifyServer
  22. ShareDirectory() ShareDirService
  23. Task() TaskService
  24. Rely() RelyService
  25. System() SystemService
  26. Shortcuts() ShortcutsService
  27. Search() SearchService
  28. Person() PersonService
  29. Friend() FriendService
  30. Download() DownloadService
  31. }
  32. func NewService(db *gorm.DB, log loger2.OLog) Repository {
  33. return &store{
  34. app: NewAppService(db, log),
  35. ddns: NewDDNSService(db, log),
  36. user: NewUserService(),
  37. docker: NewDockerService(log),
  38. //redis: NewRedisService(rp),
  39. zima: NewZiMaService(),
  40. casa: NewCasaService(),
  41. disk: NewDiskService(log, db),
  42. notify: NewNotifyService(db),
  43. shareDirectory: NewShareDirService(db, log),
  44. task: NewTaskService(db, log),
  45. rely: NewRelyService(db, log),
  46. system: NewSystemService(log),
  47. shortcuts: NewShortcutsService(db),
  48. search: NewSearchService(),
  49. person: NewPersonService(db),
  50. friend: NewFriendService(db),
  51. download: NewDownloadService(db),
  52. }
  53. }
  54. type store struct {
  55. db *gorm.DB
  56. app AppService
  57. ddns DDNSService
  58. user UserService
  59. docker DockerService
  60. zima ZiMaService
  61. casa CasaService
  62. disk DiskService
  63. notify NotifyServer
  64. shareDirectory ShareDirService
  65. task TaskService
  66. rely RelyService
  67. system SystemService
  68. shortcuts ShortcutsService
  69. search SearchService
  70. person PersonService
  71. friend FriendService
  72. download DownloadService
  73. }
  74. func (c *store) Download() DownloadService {
  75. return c.download
  76. }
  77. func (c *store) Friend() FriendService {
  78. return c.friend
  79. }
  80. func (c *store) Rely() RelyService {
  81. return c.rely
  82. }
  83. func (c *store) Shortcuts() ShortcutsService {
  84. return c.shortcuts
  85. }
  86. func (c *store) Person() PersonService {
  87. return c.person
  88. }
  89. func (c *store) System() SystemService {
  90. return c.system
  91. }
  92. func (c *store) Notify() NotifyServer {
  93. return c.notify
  94. }
  95. func (c *store) App() AppService {
  96. return c.app
  97. }
  98. func (c *store) DDNS() DDNSService {
  99. return c.ddns
  100. }
  101. func (c *store) User() UserService {
  102. return c.user
  103. }
  104. func (c *store) Docker() DockerService {
  105. return c.docker
  106. }
  107. func (c *store) ZiMa() ZiMaService {
  108. return c.zima
  109. }
  110. func (c *store) Casa() CasaService {
  111. return c.casa
  112. }
  113. func (c *store) Disk() DiskService {
  114. return c.disk
  115. }
  116. func (c *store) ShareDirectory() ShareDirService {
  117. return c.shareDirectory
  118. }
  119. func (c *store) Task() TaskService {
  120. return c.task
  121. }
  122. func (c *store) Search() SearchService {
  123. return c.search
  124. }