You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

scanner.go 774 B

2 years ago
2 years ago
2 years ago
1234567891011121314151617181920212223242526272829303132
  1. package services
  2. import (
  3. "fmt"
  4. stgglb "gitlink.org.cn/cloudream/storage/common/globals"
  5. scmq "gitlink.org.cn/cloudream/storage/common/pkgs/mq/scanner"
  6. scevt "gitlink.org.cn/cloudream/storage/common/pkgs/mq/scanner/event"
  7. )
  8. type ScannerService struct {
  9. *Service
  10. }
  11. func (svc *Service) ScannerSvc() *ScannerService {
  12. return &ScannerService{Service: svc}
  13. }
  14. func (svc *ScannerService) PostEvent(event scevt.Event, isEmergency bool, dontMerge bool) error {
  15. scCli, err := stgglb.ScannerMQPool.Acquire()
  16. if err != nil {
  17. return fmt.Errorf("new scacnner client: %w", err)
  18. }
  19. defer scCli.Close()
  20. err = scCli.PostEvent(scmq.NewPostEvent(event, isEmergency, dontMerge))
  21. if err != nil {
  22. return fmt.Errorf("request to scanner failed, err: %w", err)
  23. }
  24. return nil
  25. }

本项目旨在将云际存储公共基础设施化,使个人及企业可低门槛使用高效的云际存储服务(安装开箱即用云际存储客户端即可,无需关注其他组件的部署),同时支持用户灵活便捷定制云际存储的功能细节。