mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-24 16:03:43 +08:00
feat(climc): add DeleteWithParam
This commit is contained in:
@@ -362,6 +362,32 @@ func (cmd ResourceCmd) Delete(args IDeleteOpt) {
|
||||
cmd.RunWithDesc("delete", fmt.Sprintf("Delete %s", man.GetKeyword()), args, callback)
|
||||
}
|
||||
|
||||
type IDeleteWithParamOpt interface {
|
||||
IDeleteOpt
|
||||
QueryParams() (jsonutils.JSONObject, error)
|
||||
}
|
||||
|
||||
func (cmd ResourceCmd) DeleteWithParam(args IDeleteWithParamOpt) {
|
||||
man := cmd.manager
|
||||
callback := func(s *mcclient.ClientSession, args IDeleteWithParamOpt) error {
|
||||
queryParams, err := args.QueryParams()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
params, err := args.Params()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
ret, err := man.(modulebase.Manager).DeleteWithParam(s, args.GetId(), queryParams, params)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
PrintObject(ret)
|
||||
return nil
|
||||
}
|
||||
cmd.RunWithDesc("delete", fmt.Sprintf("Delete %s", man.GetKeyword()), args, callback)
|
||||
}
|
||||
|
||||
type IWithDescOpt interface {
|
||||
Description() string
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user