package plans import ( "fmt" "gitlink.org.cn/cloudream/jcs-pub/common/pkgs/ioswitch/dag" "gitlink.org.cn/cloudream/jcs-pub/common/pkgs/ioswitch2" jcstypes "gitlink.org.cn/cloudream/jcs-pub/common/types" ) func setEnvBySpace(n dag.Node, space *jcstypes.UserSpaceDetail) error { if space.RecommendHub == nil { n.Env().ToEnvDriver(true) return nil } switch addr := space.RecommendHub.Address.(type) { case *jcstypes.HttpAddressInfo: n.Env().ToEnvWorker(&ioswitch2.HttpHubWorker{Hub: *space.RecommendHub}, true) case *jcstypes.GRPCAddressInfo: n.Env().ToEnvWorker(&ioswitch2.HubWorker{Hub: *space.RecommendHub, Address: *addr}, true) default: return fmt.Errorf("unsupported node address type %T", addr) } return nil }