jkawamoto/roadie

View on GitHub
cloud/azure/compute/client/virtual_machine_scale_set_vms/virtual_machine_scale_set_vms_client.go

Summary

Maintainability
D
2 days
Test Coverage
package virtual_machine_scale_set_vms

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
    "github.com/go-openapi/runtime"

    strfmt "github.com/go-openapi/strfmt"
)

// New creates a new virtual machine scale set vms API client.
func New(transport runtime.ClientTransport, formats strfmt.Registry) *Client {
    return &Client{transport: transport, formats: formats}
}

/*
Client for virtual machine scale set vms API
*/
type Client struct {
    transport runtime.ClientTransport
    formats   strfmt.Registry
}

/*
VirtualMachineScaleSetVmsDeallocate Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.
*/
func (a *Client) VirtualMachineScaleSetVmsDeallocate(params *VirtualMachineScaleSetVmsDeallocateParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsDeallocateOK, *VirtualMachineScaleSetVmsDeallocateAccepted, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsDeallocateParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_Deallocate",
        Method:             "POST",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsDeallocateReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsDeallocateOK:
        return value, nil, nil
    case *VirtualMachineScaleSetVmsDeallocateAccepted:
        return nil, value, nil
    }
    return nil, nil, nil

}

/*
VirtualMachineScaleSetVmsDelete Deletes a virtual machine from a VM scale set.
*/
func (a *Client) VirtualMachineScaleSetVmsDelete(params *VirtualMachineScaleSetVmsDeleteParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsDeleteOK, *VirtualMachineScaleSetVmsDeleteAccepted, *VirtualMachineScaleSetVmsDeleteNoContent, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsDeleteParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_Delete",
        Method:             "DELETE",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsDeleteReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsDeleteOK:
        return value, nil, nil, nil
    case *VirtualMachineScaleSetVmsDeleteAccepted:
        return nil, value, nil, nil
    case *VirtualMachineScaleSetVmsDeleteNoContent:
        return nil, nil, value, nil
    }
    return nil, nil, nil, nil

}

/*
VirtualMachineScaleSetVmsGet Gets a virtual machine from a VM scale set.
*/
func (a *Client) VirtualMachineScaleSetVmsGet(params *VirtualMachineScaleSetVmsGetParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsGetOK, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsGetParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_Get",
        Method:             "GET",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsGetReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, err
    }
    return result.(*VirtualMachineScaleSetVmsGetOK), nil

}

/*
VirtualMachineScaleSetVmsGetInstanceView Gets the status of a virtual machine from a VM scale set.
*/
func (a *Client) VirtualMachineScaleSetVmsGetInstanceView(params *VirtualMachineScaleSetVmsGetInstanceViewParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsGetInstanceViewOK, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsGetInstanceViewParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_GetInstanceView",
        Method:             "GET",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsGetInstanceViewReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, err
    }
    return result.(*VirtualMachineScaleSetVmsGetInstanceViewOK), nil

}

/*
VirtualMachineScaleSetVmsList Gets a list of all virtual machines in a VM scale sets.
*/
func (a *Client) VirtualMachineScaleSetVmsList(params *VirtualMachineScaleSetVmsListParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsListOK, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsListParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_List",
        Method:             "GET",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsListReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, err
    }
    return result.(*VirtualMachineScaleSetVmsListOK), nil

}

/*
VirtualMachineScaleSetVmsPowerOff Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.
*/
func (a *Client) VirtualMachineScaleSetVmsPowerOff(params *VirtualMachineScaleSetVmsPowerOffParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsPowerOffOK, *VirtualMachineScaleSetVmsPowerOffAccepted, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsPowerOffParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_PowerOff",
        Method:             "POST",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsPowerOffReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsPowerOffOK:
        return value, nil, nil
    case *VirtualMachineScaleSetVmsPowerOffAccepted:
        return nil, value, nil
    }
    return nil, nil, nil

}

/*
VirtualMachineScaleSetVmsReimage Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.
*/
func (a *Client) VirtualMachineScaleSetVmsReimage(params *VirtualMachineScaleSetVmsReimageParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsReimageOK, *VirtualMachineScaleSetVmsReimageAccepted, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsReimageParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_Reimage",
        Method:             "POST",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsReimageReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsReimageOK:
        return value, nil, nil
    case *VirtualMachineScaleSetVmsReimageAccepted:
        return nil, value, nil
    }
    return nil, nil, nil

}

/*
VirtualMachineScaleSetVmsReimageAll Allows you to re-image all the disks ( including data disks ) in the a virtual machine scale set instance. This operation is only supported for managed disks.
*/
func (a *Client) VirtualMachineScaleSetVmsReimageAll(params *VirtualMachineScaleSetVmsReimageAllParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsReimageAllOK, *VirtualMachineScaleSetVmsReimageAllAccepted, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsReimageAllParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_ReimageAll",
        Method:             "POST",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsReimageAllReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsReimageAllOK:
        return value, nil, nil
    case *VirtualMachineScaleSetVmsReimageAllAccepted:
        return nil, value, nil
    }
    return nil, nil, nil

}

/*
VirtualMachineScaleSetVmsRestart Restarts a virtual machine in a VM scale set.
*/
func (a *Client) VirtualMachineScaleSetVmsRestart(params *VirtualMachineScaleSetVmsRestartParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsRestartOK, *VirtualMachineScaleSetVmsRestartAccepted, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsRestartParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_Restart",
        Method:             "POST",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsRestartReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsRestartOK:
        return value, nil, nil
    case *VirtualMachineScaleSetVmsRestartAccepted:
        return nil, value, nil
    }
    return nil, nil, nil

}

/*
VirtualMachineScaleSetVmsStart Starts a virtual machine in a VM scale set.
*/
func (a *Client) VirtualMachineScaleSetVmsStart(params *VirtualMachineScaleSetVmsStartParams, authInfo runtime.ClientAuthInfoWriter) (*VirtualMachineScaleSetVmsStartOK, *VirtualMachineScaleSetVmsStartAccepted, error) {
    // TODO: Validate the params before sending
    if params == nil {
        params = NewVirtualMachineScaleSetVmsStartParams()
    }

    result, err := a.transport.Submit(&runtime.ClientOperation{
        ID:                 "VirtualMachineScaleSetVMs_Start",
        Method:             "POST",
        PathPattern:        "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start",
        ProducesMediaTypes: []string{"application/json"},
        ConsumesMediaTypes: []string{"application/json"},
        Schemes:            []string{"https"},
        Params:             params,
        Reader:             &VirtualMachineScaleSetVmsStartReader{formats: a.formats},
        AuthInfo:           authInfo,
        Context:            params.Context,
        Client:             params.HTTPClient,
    })
    if err != nil {
        return nil, nil, err
    }
    switch value := result.(type) {
    case *VirtualMachineScaleSetVmsStartOK:
        return value, nil, nil
    case *VirtualMachineScaleSetVmsStartAccepted:
        return nil, value, nil
    }
    return nil, nil, nil

}

// SetTransport changes the transport on the client
func (a *Client) SetTransport(transport runtime.ClientTransport) {
    a.transport = transport
}