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.

utils.go 804 B

123456789101112131415161718192021222324252627282930
  1. package opt
  2. import (
  3. "fmt"
  4. clitypes "gitlink.org.cn/cloudream/jcs-pub/client/types"
  5. "gitlink.org.cn/cloudream/jcs-pub/common/pkgs/ioswitch/dag"
  6. "gitlink.org.cn/cloudream/jcs-pub/common/pkgs/ioswitch2"
  7. cortypes "gitlink.org.cn/cloudream/jcs-pub/coordinator/types"
  8. )
  9. func setEnvBySpace(n dag.Node, space *clitypes.UserSpaceDetail) error {
  10. if space.RecommendHub == nil {
  11. n.Env().ToEnvDriver(true)
  12. return nil
  13. }
  14. switch addr := space.RecommendHub.Address.(type) {
  15. case *cortypes.HttpAddressInfo:
  16. n.Env().ToEnvWorker(&ioswitch2.HttpHubWorker{Hub: *space.RecommendHub}, true)
  17. case *cortypes.GRPCAddressInfo:
  18. n.Env().ToEnvWorker(&ioswitch2.HubWorker{Hub: *space.RecommendHub, Address: *addr}, true)
  19. default:
  20. return fmt.Errorf("unsupported node address type %T", addr)
  21. }
  22. return nil
  23. }

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