51 lines
2.0 KiB
Go
51 lines
2.0 KiB
Go
package services
|
|
|
|
import (
|
|
"gitlink.org.cn/cloudream/common/api/storage"
|
|
"gitlink.org.cn/cloudream/common/consts/errorcode"
|
|
"gitlink.org.cn/cloudream/common/pkgs/logger"
|
|
"gitlink.org.cn/cloudream/common/pkgs/mq"
|
|
"gitlink.org.cn/cloudream/scheduler-common/globals"
|
|
colmq "gitlink.org.cn/cloudream/scheduler-common/pkgs/mq/collector"
|
|
)
|
|
|
|
func (svc *Service) PackageGetCachedNodes(msg *colmq.PackageGetCachedNodes) (*colmq.PackageGetCachedNodesResp, *mq.CodeMessage) {
|
|
stgCli, err := globals.CloudreamStoragePool.Acquire()
|
|
if err != nil {
|
|
logger.Warnf("new storage client, err: %s", err.Error())
|
|
return mq.ReplyFailed[colmq.PackageGetCachedNodesResp](errorcode.OperationFailed, "new storage client failed")
|
|
}
|
|
defer stgCli.Close()
|
|
|
|
resp, err := stgCli.PackageGetCachedNodes(storage.PackageGetCachedNodesReq{
|
|
PackageID: msg.PackageID,
|
|
UserID: msg.UserID,
|
|
})
|
|
if err != nil {
|
|
logger.Warnf("get package cached nodes failed, err: %s", err.Error())
|
|
return mq.ReplyFailed[colmq.PackageGetCachedNodesResp](errorcode.OperationFailed, "get package cached nodes failed")
|
|
}
|
|
|
|
return mq.ReplyOK(colmq.NewPackageGetCachedNodesResp(resp.NodeInfos, resp.PackageSize, resp.RedunancyType))
|
|
}
|
|
|
|
func (svc *Service) PackageGetLoadedNodes(msg *colmq.PackageGetLoadedNodes) (*colmq.PackageGetLoadedNodesResp, *mq.CodeMessage) {
|
|
stgCli, err := globals.CloudreamStoragePool.Acquire()
|
|
if err != nil {
|
|
logger.Warnf("new storage client, err: %s", err.Error())
|
|
return mq.ReplyFailed[colmq.PackageGetLoadedNodesResp](errorcode.OperationFailed, "new storage client failed")
|
|
}
|
|
defer stgCli.Close()
|
|
|
|
resp, err := stgCli.PackageGetLoadedNodes(storage.PackageGetLoadedNodesReq{
|
|
PackageID: msg.PackageID,
|
|
UserID: msg.UserID,
|
|
})
|
|
if err != nil {
|
|
logger.Warnf("get package loaded nodes failed, err: %s", err.Error())
|
|
return mq.ReplyFailed[colmq.PackageGetLoadedNodesResp](errorcode.OperationFailed, "get package loaded nodes failed")
|
|
}
|
|
|
|
return mq.ReplyOK(colmq.NewPackageGetLoadedNodesResp(resp.NodeIDs))
|
|
}
|