@@ -104,6 +104,10 @@ type VirtualMachineServiceIface interface {
104104 GetVMScheduleByID(id string, virtualmachineid string, opts ...OptionFunc) (*VMSchedule, int, error)
105105 DeleteVMSchedule(p *DeleteVMScheduleParams) (*DeleteVMScheduleResponse, error)
106106 NewDeleteVMScheduleParams(virtualmachineid string) *DeleteVMScheduleParams
107+ AssignVirtualMachineToBackupOffering(p *AssignVirtualMachineToBackupOfferingParams) (*AssignVirtualMachineToBackupOfferingResponse, error)
108+ NewAssignVirtualMachineToBackupOfferingParams(backupofferingid string, virtualmachineid string) *AssignVirtualMachineToBackupOfferingParams
109+ RemoveVirtualMachineFromBackupOffering(p *RemoveVirtualMachineFromBackupOfferingParams) (*RemoveVirtualMachineFromBackupOfferingResponse, error)
110+ NewRemoveVirtualMachineFromBackupOfferingParams(virtualmachineid string) *RemoveVirtualMachineFromBackupOfferingParams
107111}
108112
109113type AddNicToVirtualMachineParams struct {
@@ -14366,3 +14370,217 @@ func (r *DeleteVMScheduleResponse) UnmarshalJSON(b []byte) error {
1436614370 type alias DeleteVMScheduleResponse
1436714371 return json.Unmarshal(b, (*alias)(r))
1436814372}
14373+
14374+ type AssignVirtualMachineToBackupOfferingParams struct {
14375+ p map[string]interface{}
14376+ }
14377+
14378+ func (p *AssignVirtualMachineToBackupOfferingParams) toURLValues() url.Values {
14379+ u := url.Values{}
14380+ if p.p == nil {
14381+ return u
14382+ }
14383+ if v, found := p.p["backupofferingid"]; found {
14384+ u.Set("backupofferingid", v.(string))
14385+ }
14386+ if v, found := p.p["virtualmachineid"]; found {
14387+ u.Set("virtualmachineid", v.(string))
14388+ }
14389+ return u
14390+ }
14391+
14392+ func (p *AssignVirtualMachineToBackupOfferingParams) SetBackupofferingid(v string) {
14393+ if p.p == nil {
14394+ p.p = make(map[string]interface{})
14395+ }
14396+ p.p["backupofferingid"] = v
14397+ }
14398+
14399+ func (p *AssignVirtualMachineToBackupOfferingParams) ResetBackupofferingid() {
14400+ if p.p != nil && p.p["backupofferingid"] != nil {
14401+ delete(p.p, "backupofferingid")
14402+ }
14403+ }
14404+
14405+ func (p *AssignVirtualMachineToBackupOfferingParams) GetBackupofferingid() (string, bool) {
14406+ if p.p == nil {
14407+ p.p = make(map[string]interface{})
14408+ }
14409+ value, ok := p.p["backupofferingid"].(string)
14410+ return value, ok
14411+ }
14412+
14413+ func (p *AssignVirtualMachineToBackupOfferingParams) SetVirtualmachineid(v string) {
14414+ if p.p == nil {
14415+ p.p = make(map[string]interface{})
14416+ }
14417+ p.p["virtualmachineid"] = v
14418+ }
14419+
14420+ func (p *AssignVirtualMachineToBackupOfferingParams) ResetVirtualmachineid() {
14421+ if p.p != nil && p.p["virtualmachineid"] != nil {
14422+ delete(p.p, "virtualmachineid")
14423+ }
14424+ }
14425+
14426+ func (p *AssignVirtualMachineToBackupOfferingParams) GetVirtualmachineid() (string, bool) {
14427+ if p.p == nil {
14428+ p.p = make(map[string]interface{})
14429+ }
14430+ value, ok := p.p["virtualmachineid"].(string)
14431+ return value, ok
14432+ }
14433+
14434+ // You should always use this function to get a new AssignVirtualMachineToBackupOfferingParams instance,
14435+ // as then you are sure you have configured all required params
14436+ func (s *VirtualMachineService) NewAssignVirtualMachineToBackupOfferingParams(backupofferingid string, virtualmachineid string) *AssignVirtualMachineToBackupOfferingParams {
14437+ p := &AssignVirtualMachineToBackupOfferingParams{}
14438+ p.p = make(map[string]interface{})
14439+ p.p["backupofferingid"] = backupofferingid
14440+ p.p["virtualmachineid"] = virtualmachineid
14441+ return p
14442+ }
14443+
14444+ // Assigns a VM to a backup offering
14445+ func (s *VirtualMachineService) AssignVirtualMachineToBackupOffering(p *AssignVirtualMachineToBackupOfferingParams) (*AssignVirtualMachineToBackupOfferingResponse, error) {
14446+ resp, err := s.cs.newPostRequest("assignVirtualMachineToBackupOffering", p.toURLValues())
14447+ if err != nil {
14448+ return nil, err
14449+ }
14450+
14451+ var r AssignVirtualMachineToBackupOfferingResponse
14452+ if err := json.Unmarshal(resp, &r); err != nil {
14453+ return nil, err
14454+ }
14455+
14456+ // If we have a async client, we need to wait for the async result
14457+ if s.cs.async {
14458+ b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
14459+ if err != nil {
14460+ if err == AsyncTimeoutErr {
14461+ return &r, err
14462+ }
14463+ return nil, err
14464+ }
14465+
14466+ if err := json.Unmarshal(b, &r); err != nil {
14467+ return nil, err
14468+ }
14469+ }
14470+
14471+ return &r, nil
14472+ }
14473+
14474+ type AssignVirtualMachineToBackupOfferingResponse struct {
14475+ Displaytext string `json:"displaytext"`
14476+ JobID string `json:"jobid"`
14477+ Jobstatus int `json:"jobstatus"`
14478+ Success bool `json:"success"`
14479+ }
14480+
14481+ type RemoveVirtualMachineFromBackupOfferingParams struct {
14482+ p map[string]interface{}
14483+ }
14484+
14485+ func (p *RemoveVirtualMachineFromBackupOfferingParams) toURLValues() url.Values {
14486+ u := url.Values{}
14487+ if p.p == nil {
14488+ return u
14489+ }
14490+ if v, found := p.p["forced"]; found {
14491+ vv := strconv.FormatBool(v.(bool))
14492+ u.Set("forced", vv)
14493+ }
14494+ if v, found := p.p["virtualmachineid"]; found {
14495+ u.Set("virtualmachineid", v.(string))
14496+ }
14497+ return u
14498+ }
14499+
14500+ func (p *RemoveVirtualMachineFromBackupOfferingParams) SetForced(v bool) {
14501+ if p.p == nil {
14502+ p.p = make(map[string]interface{})
14503+ }
14504+ p.p["forced"] = v
14505+ }
14506+
14507+ func (p *RemoveVirtualMachineFromBackupOfferingParams) ResetForced() {
14508+ if p.p != nil && p.p["forced"] != nil {
14509+ delete(p.p, "forced")
14510+ }
14511+ }
14512+
14513+ func (p *RemoveVirtualMachineFromBackupOfferingParams) GetForced() (bool, bool) {
14514+ if p.p == nil {
14515+ p.p = make(map[string]interface{})
14516+ }
14517+ value, ok := p.p["forced"].(bool)
14518+ return value, ok
14519+ }
14520+
14521+ func (p *RemoveVirtualMachineFromBackupOfferingParams) SetVirtualmachineid(v string) {
14522+ if p.p == nil {
14523+ p.p = make(map[string]interface{})
14524+ }
14525+ p.p["virtualmachineid"] = v
14526+ }
14527+
14528+ func (p *RemoveVirtualMachineFromBackupOfferingParams) ResetVirtualmachineid() {
14529+ if p.p != nil && p.p["virtualmachineid"] != nil {
14530+ delete(p.p, "virtualmachineid")
14531+ }
14532+ }
14533+
14534+ func (p *RemoveVirtualMachineFromBackupOfferingParams) GetVirtualmachineid() (string, bool) {
14535+ if p.p == nil {
14536+ p.p = make(map[string]interface{})
14537+ }
14538+ value, ok := p.p["virtualmachineid"].(string)
14539+ return value, ok
14540+ }
14541+
14542+ // You should always use this function to get a new RemoveVirtualMachineFromBackupOfferingParams instance,
14543+ // as then you are sure you have configured all required params
14544+ func (s *VirtualMachineService) NewRemoveVirtualMachineFromBackupOfferingParams(virtualmachineid string) *RemoveVirtualMachineFromBackupOfferingParams {
14545+ p := &RemoveVirtualMachineFromBackupOfferingParams{}
14546+ p.p = make(map[string]interface{})
14547+ p.p["virtualmachineid"] = virtualmachineid
14548+ return p
14549+ }
14550+
14551+ // Removes a VM from any existing backup offering
14552+ func (s *VirtualMachineService) RemoveVirtualMachineFromBackupOffering(p *RemoveVirtualMachineFromBackupOfferingParams) (*RemoveVirtualMachineFromBackupOfferingResponse, error) {
14553+ resp, err := s.cs.newPostRequest("removeVirtualMachineFromBackupOffering", p.toURLValues())
14554+ if err != nil {
14555+ return nil, err
14556+ }
14557+
14558+ var r RemoveVirtualMachineFromBackupOfferingResponse
14559+ if err := json.Unmarshal(resp, &r); err != nil {
14560+ return nil, err
14561+ }
14562+
14563+ // If we have a async client, we need to wait for the async result
14564+ if s.cs.async {
14565+ b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
14566+ if err != nil {
14567+ if err == AsyncTimeoutErr {
14568+ return &r, err
14569+ }
14570+ return nil, err
14571+ }
14572+
14573+ if err := json.Unmarshal(b, &r); err != nil {
14574+ return nil, err
14575+ }
14576+ }
14577+
14578+ return &r, nil
14579+ }
14580+
14581+ type RemoveVirtualMachineFromBackupOfferingResponse struct {
14582+ Displaytext string `json:"displaytext"`
14583+ JobID string `json:"jobid"`
14584+ Jobstatus int `json:"jobstatus"`
14585+ Success bool `json:"success"`
14586+ }
0 commit comments