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.

cache.go 1.7 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package cdssdk
  2. import (
  3. "net/url"
  4. "gitlink.org.cn/cloudream/common/consts/errorcode"
  5. myhttp "gitlink.org.cn/cloudream/common/utils/http"
  6. )
  7. type CacheMovePackageReq struct {
  8. UserID int64 `json:"userID"`
  9. PackageID int64 `json:"packageID"`
  10. NodeID int64 `json:"nodeID"`
  11. }
  12. type CacheMovePackageResp struct {
  13. CacheInfos []ObjectCacheInfo `json:"cacheInfos"`
  14. }
  15. func (c *Client) CacheMovePackage(req CacheMovePackageReq) (*CacheMovePackageResp, error) {
  16. url, err := url.JoinPath(c.baseURL, "/cache/movePackage")
  17. if err != nil {
  18. return nil, err
  19. }
  20. resp, err := myhttp.PostJSON(url, myhttp.RequestParam{
  21. Body: req,
  22. })
  23. if err != nil {
  24. return nil, err
  25. }
  26. jsonResp, err := myhttp.ParseJSONResponse[response[CacheMovePackageResp]](resp)
  27. if err != nil {
  28. return nil, err
  29. }
  30. if jsonResp.Code == errorcode.OK {
  31. return &jsonResp.Data, nil
  32. }
  33. return nil, jsonResp.ToError()
  34. }
  35. type CacheGetPackageObjectCacheInfosReq struct {
  36. UserID int64 `json:"userID"`
  37. PackageID int64 `json:"packageID"`
  38. }
  39. type CacheGetPackageObjectCacheInfosResp struct {
  40. Infos []ObjectCacheInfo `json:"cacheInfos"`
  41. }
  42. func (c *Client) CacheGetPackageObjectCacheInfos(req CacheGetPackageObjectCacheInfosReq) (*CacheGetPackageObjectCacheInfosResp, error) {
  43. url, err := url.JoinPath(c.baseURL, "/cache/getPackageObjectCacheInfos")
  44. if err != nil {
  45. return nil, err
  46. }
  47. resp, err := myhttp.GetForm(url, myhttp.RequestParam{
  48. Query: req,
  49. })
  50. if err != nil {
  51. return nil, err
  52. }
  53. jsonResp, err := myhttp.ParseJSONResponse[response[CacheGetPackageObjectCacheInfosResp]](resp)
  54. if err != nil {
  55. return nil, err
  56. }
  57. if jsonResp.Code == errorcode.OK {
  58. return &jsonResp.Data, nil
  59. }
  60. return nil, jsonResp.ToError()
  61. }