|
- package api
-
- import (
- "net/http"
-
- "gitlink.org.cn/cloudream/common/sdks"
- clitypes "gitlink.org.cn/cloudream/jcs-pub/client/types"
- )
-
- type SpaceSyncerService struct {
- *Client
- }
-
- func (c *Client) SpaceSyncer() *SpaceSyncerService {
- return &SpaceSyncerService{
- Client: c,
- }
- }
-
- const SpaceSyncerCreateTaskPath = "/spaceSyncer/createTask"
-
- type SpaceSyncerCreateTask struct {
- Trigger clitypes.SpaceSyncTrigger `json:"trigger" binding:"required"`
- Mode clitypes.SpaceSyncMode `json:"mode" binding:"required"`
- Filters []clitypes.SpaceSyncFilter `json:"filters"`
- Options clitypes.SpaceSyncOptions `json:"options" binding:"required"`
- SrcUserSpaceID clitypes.UserSpaceID `json:"srcUserSpaceID" binding:"required"`
- SrcPath string `json:"srcPath"`
- DestUserSpaceIDs []clitypes.UserSpaceID `json:"destUserSpaceIDs" binding:"required"`
- DestPathes []string `json:"destPathes" binding:"required"`
- }
-
- func (r *SpaceSyncerCreateTask) MakeParam() *sdks.RequestParam {
- return sdks.MakeJSONParam(http.MethodPost, SpaceSyncerCreateTaskPath, r)
- }
-
- type SpaceSyncerCreateTaskResp struct {
- Task clitypes.SpaceSyncTask `json:"task"`
- }
-
- func (r *SpaceSyncerCreateTaskResp) ParseResponse(resp *http.Response) error {
- return sdks.ParseCodeDataJSONResponse(resp, r)
- }
-
- func (c *SpaceSyncerService) CreateTask(req SpaceSyncerCreateTask) (*SpaceSyncerCreateTaskResp, error) {
- return JSONAPI(&c.cfg, c.httpCli, &req, &SpaceSyncerCreateTaskResp{})
- }
-
- const SpaceSyncerGetTaskPath = "/spaceSyncer/getTask"
-
- type SpaceSyncerGetTask struct {
- TaskID clitypes.SpaceSyncTaskID `url:"taskID" binding:"required"`
- }
-
- func (r *SpaceSyncerGetTask) MakeParam() *sdks.RequestParam {
- return sdks.MakeQueryParam(http.MethodGet, SpaceSyncerGetTaskPath, r)
- }
-
- type SpaceSyncerGetTaskResp struct {
- Task clitypes.SpaceSyncTask `json:"task"`
- }
-
- func (r *SpaceSyncerGetTaskResp) ParseResponse(resp *http.Response) error {
- return sdks.ParseCodeDataJSONResponse(resp, r)
- }
-
- func (c *SpaceSyncerService) GetTask(req SpaceSyncerGetTask) (*SpaceSyncerGetTaskResp, error) {
- return JSONAPI(&c.cfg, c.httpCli, &req, &SpaceSyncerGetTaskResp{})
- }
-
- const SpaceSyncerCancelTaskPath = "/spaceSyncer/cancelTask"
-
- type SpaceSyncerCancelTask struct {
- TaskID clitypes.SpaceSyncTaskID `json:"taskID" binding:"required"`
- }
-
- func (r *SpaceSyncerCancelTask) MakeParam() *sdks.RequestParam {
- return sdks.MakeJSONParam(http.MethodPost, SpaceSyncerCancelTaskPath, r)
- }
-
- type SpaceSyncerCancelTaskResp struct{}
-
- func (r *SpaceSyncerCancelTaskResp) ParseResponse(resp *http.Response) error {
- return sdks.ParseCodeDataJSONResponse(resp, r)
- }
-
- func (c *SpaceSyncerService) CancelTask(req SpaceSyncerCancelTask) (*SpaceSyncerCancelTaskResp, error) {
- return JSONAPI(&c.cfg, c.httpCli, &req, &SpaceSyncerCancelTaskResp{})
- }
|