|
|
|
@@ -456,6 +456,48 @@ func (c *ObjectService) DeleteByPath(req ObjectDeleteByPath) error { |
|
|
|
return jsonResp.ToError() |
|
|
|
} |
|
|
|
|
|
|
|
const ObjectClonePath = "/object/clone" |
|
|
|
|
|
|
|
type ObjectClone struct { |
|
|
|
UserID cdssdk.UserID `json:"userID" binding:"required"` |
|
|
|
Clonings []CloningObject `json:"clonings" binding:"required"` |
|
|
|
} |
|
|
|
|
|
|
|
type CloningObject struct { |
|
|
|
ObjectID cdssdk.ObjectID `json:"objectID" binding:"required"` |
|
|
|
NewPath string `json:"newPath" binding:"required"` |
|
|
|
NewPackageID cdssdk.PackageID `json:"newPackageID" binding:"required"` |
|
|
|
} |
|
|
|
|
|
|
|
type ObjectCloneResp struct { |
|
|
|
Objects []*cdssdk.Object `json:"objects"` |
|
|
|
} |
|
|
|
|
|
|
|
func (c *ObjectService) Clone(req ObjectClone) (*ObjectCloneResp, error) { |
|
|
|
url, err := url.JoinPath(c.baseURL, ObjectClonePath) |
|
|
|
if err != nil { |
|
|
|
return nil, err |
|
|
|
} |
|
|
|
|
|
|
|
resp, err := http2.PostJSON(url, http2.RequestParam{ |
|
|
|
Body: req, |
|
|
|
}) |
|
|
|
if err != nil { |
|
|
|
return nil, err |
|
|
|
} |
|
|
|
|
|
|
|
jsonResp, err := ParseJSONResponse[response[ObjectCloneResp]](resp) |
|
|
|
if err != nil { |
|
|
|
return nil, err |
|
|
|
} |
|
|
|
|
|
|
|
if jsonResp.Code == errorcode.OK { |
|
|
|
return &jsonResp.Data, nil |
|
|
|
} |
|
|
|
|
|
|
|
return nil, jsonResp.ToError() |
|
|
|
} |
|
|
|
|
|
|
|
const ObjectGetPackageObjectsPath = "/object/getPackageObjects" |
|
|
|
|
|
|
|
type ObjectGetPackageObjects struct { |
|
|
|
|