feat(climc): add DeleteWithParam

This commit is contained in:
rainzm
2022-03-07 17:16:52 +08:00
parent 1dac86a231
commit c2be07be27
+26
View File
@@ -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
}