/* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is * regenerated. */ import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; import * as Models from "../models"; import * as Mappers from "../models/virtualMachinesMappers"; import * as Parameters from "../models/parameters"; import { ComputeManagementClientContext } from "../computeManagementClientContext"; /** Class representing a VirtualMachines. */ export class VirtualMachines { private readonly client: ComputeManagementClientContext; /** * Create a VirtualMachines. * @param {ComputeManagementClientContext} client Reference to the service client. */ constructor(client: ComputeManagementClientContext) { this.client = client; } /** * The operation to get all extensions of a Virtual Machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine containing the extension. * @param [options] The optional parameters * @returns Promise */ getExtensions(resourceGroupName: string, vmName: string, options?: Models.VirtualMachinesGetExtensionsOptionalParams): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine containing the extension. * @param callback The callback */ getExtensions(resourceGroupName: string, vmName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine containing the extension. * @param options The optional parameters * @param callback The callback */ getExtensions(resourceGroupName: string, vmName: string, options: Models.VirtualMachinesGetExtensionsOptionalParams, callback: msRest.ServiceCallback): void; getExtensions(resourceGroupName: string, vmName: string, options?: Models.VirtualMachinesGetExtensionsOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmName, options }, getExtensionsOperationSpec, callback) as Promise; } /** * Gets all the virtual machines under the specified subscription for the specified location. * @param location The location for which virtual machines under the subscription are queried. * @param [options] The optional parameters * @returns Promise */ listByLocation(location: string, options?: msRest.RequestOptionsBase): Promise; /** * @param location The location for which virtual machines under the subscription are queried. * @param callback The callback */ listByLocation(location: string, callback: msRest.ServiceCallback): void; /** * @param location The location for which virtual machines under the subscription are queried. * @param options The optional parameters * @param callback The callback */ listByLocation(location: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listByLocation(location: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { location, options }, listByLocationOperationSpec, callback) as Promise; } /** * Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used * to create similar VMs. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param parameters Parameters supplied to the Capture Virtual Machine operation. * @param [options] The optional parameters * @returns Promise */ capture(resourceGroupName: string, vmName: string, parameters: Models.VirtualMachineCaptureParameters, options?: msRest.RequestOptionsBase): Promise { return this.beginCapture(resourceGroupName,vmName,parameters,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to create or update a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param parameters Parameters supplied to the Create Virtual Machine operation. * @param [options] The optional parameters * @returns Promise */ createOrUpdate(resourceGroupName: string, vmName: string, parameters: Models.VirtualMachine, options?: msRest.RequestOptionsBase): Promise { return this.beginCreateOrUpdate(resourceGroupName,vmName,parameters,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to update a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param parameters Parameters supplied to the Update Virtual Machine operation. * @param [options] The optional parameters * @returns Promise */ update(resourceGroupName: string, vmName: string, parameters: Models.VirtualMachineUpdate, options?: msRest.RequestOptionsBase): Promise { return this.beginUpdate(resourceGroupName,vmName,parameters,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to delete a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ deleteMethod(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginDeleteMethod(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Retrieves information about the model view or the instance view of a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ get(resourceGroupName: string, vmName: string, options?: Models.VirtualMachinesGetOptionalParams): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param callback The callback */ get(resourceGroupName: string, vmName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param options The optional parameters * @param callback The callback */ get(resourceGroupName: string, vmName: string, options: Models.VirtualMachinesGetOptionalParams, callback: msRest.ServiceCallback): void; get(resourceGroupName: string, vmName: string, options?: Models.VirtualMachinesGetOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmName, options }, getOperationSpec, callback) as Promise; } /** * Retrieves information about the run-time state of a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ instanceView(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param callback The callback */ instanceView(resourceGroupName: string, vmName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param options The optional parameters * @param callback The callback */ instanceView(resourceGroupName: string, vmName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; instanceView(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmName, options }, instanceViewOperationSpec, callback) as Promise; } /** * Converts virtual machine disks from blob-based to managed disks. Virtual machine must be * stop-deallocated before invoking this operation. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ convertToManagedDisks(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginConvertToManagedDisks(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Shuts down the virtual machine and releases the compute resources. You are not billed for the * compute resources that this virtual machine uses. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ deallocate(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginDeallocate(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Sets the state of the virtual machine to generalized. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ generalize(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param callback The callback */ generalize(resourceGroupName: string, vmName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param options The optional parameters * @param callback The callback */ generalize(resourceGroupName: string, vmName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; generalize(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmName, options }, generalizeOperationSpec, callback) as Promise; } /** * Lists all of the virtual machines in the specified resource group. Use the nextLink property in * the response to get the next page of virtual machines. * @param resourceGroupName The name of the resource group. * @param [options] The optional parameters * @returns Promise */ list(resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group. * @param callback The callback */ list(resourceGroupName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param options The optional parameters * @param callback The callback */ list(resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; list(resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, options }, listOperationSpec, callback) as Promise; } /** * Lists all of the virtual machines in the specified subscription. Use the nextLink property in * the response to get the next page of virtual machines. * @param [options] The optional parameters * @returns Promise */ listAll(options?: msRest.RequestOptionsBase): Promise; /** * @param callback The callback */ listAll(callback: msRest.ServiceCallback): void; /** * @param options The optional parameters * @param callback The callback */ listAll(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listAll(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { options }, listAllOperationSpec, callback) as Promise; } /** * Lists all available virtual machine sizes to which the specified virtual machine can be resized. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ listAvailableSizes(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param callback The callback */ listAvailableSizes(resourceGroupName: string, vmName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param options The optional parameters * @param callback The callback */ listAvailableSizes(resourceGroupName: string, vmName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listAvailableSizes(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmName, options }, listAvailableSizesOperationSpec, callback) as Promise; } /** * The operation to power off (stop) a virtual machine. The virtual machine can be restarted with * the same provisioned resources. You are still charged for this virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ powerOff(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginPowerOff(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to restart a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ restart(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginRestart(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to start a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ start(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginStart(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to redeploy a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ redeploy(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginRedeploy(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * The operation to perform maintenance on a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ performMaintenance(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.beginPerformMaintenance(resourceGroupName,vmName,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used * to create similar VMs. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param parameters Parameters supplied to the Capture Virtual Machine operation. * @param [options] The optional parameters * @returns Promise */ beginCapture(resourceGroupName: string, vmName: string, parameters: Models.VirtualMachineCaptureParameters, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, parameters, options }, beginCaptureOperationSpec, options); } /** * The operation to create or update a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param parameters Parameters supplied to the Create Virtual Machine operation. * @param [options] The optional parameters * @returns Promise */ beginCreateOrUpdate(resourceGroupName: string, vmName: string, parameters: Models.VirtualMachine, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, parameters, options }, beginCreateOrUpdateOperationSpec, options); } /** * The operation to update a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param parameters Parameters supplied to the Update Virtual Machine operation. * @param [options] The optional parameters * @returns Promise */ beginUpdate(resourceGroupName: string, vmName: string, parameters: Models.VirtualMachineUpdate, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, parameters, options }, beginUpdateOperationSpec, options); } /** * The operation to delete a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginDeleteMethod(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginDeleteMethodOperationSpec, options); } /** * Converts virtual machine disks from blob-based to managed disks. Virtual machine must be * stop-deallocated before invoking this operation. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginConvertToManagedDisks(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginConvertToManagedDisksOperationSpec, options); } /** * Shuts down the virtual machine and releases the compute resources. You are not billed for the * compute resources that this virtual machine uses. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginDeallocate(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginDeallocateOperationSpec, options); } /** * The operation to power off (stop) a virtual machine. The virtual machine can be restarted with * the same provisioned resources. You are still charged for this virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginPowerOff(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginPowerOffOperationSpec, options); } /** * The operation to restart a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginRestart(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginRestartOperationSpec, options); } /** * The operation to start a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginStart(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginStartOperationSpec, options); } /** * The operation to redeploy a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginRedeploy(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginRedeployOperationSpec, options); } /** * The operation to perform maintenance on a virtual machine. * @param resourceGroupName The name of the resource group. * @param vmName The name of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginPerformMaintenance(resourceGroupName: string, vmName: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmName, options }, beginPerformMaintenanceOperationSpec, options); } /** * Gets all the virtual machines under the specified subscription for the specified location. * @param nextPageLink The NextLink from the previous successful call to List operation. * @param [options] The optional parameters * @returns Promise */ listByLocationNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback */ listByLocationNext(nextPageLink: string, callback: msRest.ServiceCallback): void; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param options The optional parameters * @param callback The callback */ listByLocationNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listByLocationNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, options }, listByLocationNextOperationSpec, callback) as Promise; } /** * Lists all of the virtual machines in the specified resource group. Use the nextLink property in * the response to get the next page of virtual machines. * @param nextPageLink The NextLink from the previous successful call to List operation. * @param [options] The optional parameters * @returns Promise */ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback */ listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param options The optional parameters * @param callback The callback */ listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, options }, listNextOperationSpec, callback) as Promise; } /** * Lists all of the virtual machines in the specified subscription. Use the nextLink property in * the response to get the next page of virtual machines. * @param nextPageLink The NextLink from the previous successful call to List operation. * @param [options] The optional parameters * @returns Promise */ listAllNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback */ listAllNext(nextPageLink: string, callback: msRest.ServiceCallback): void; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param options The optional parameters * @param callback The callback */ listAllNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listAllNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, options }, listAllNextOperationSpec, callback) as Promise; } } // Operation Specifications const serializer = new msRest.Serializer(Mappers); const getExtensionsOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.expand0, Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineExtensionsListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listByLocationOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines", urlParameters: [ Parameters.location1, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const getOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.expand1, Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachine }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const instanceViewOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineInstanceView }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const generalizeOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines", urlParameters: [ Parameters.resourceGroupName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listAllOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines", urlParameters: [ Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listAvailableSizesOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineSizeListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginCaptureOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], requestBody: { parameterPath: "parameters", mapper: { ...Mappers.VirtualMachineCaptureParameters, required: true } }, responses: { 200: { bodyMapper: Mappers.VirtualMachineCaptureResult }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = { httpMethod: "PUT", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], requestBody: { parameterPath: "parameters", mapper: { ...Mappers.VirtualMachine, required: true } }, responses: { 200: { bodyMapper: Mappers.VirtualMachine }, 201: { bodyMapper: Mappers.VirtualMachine }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginUpdateOperationSpec: msRest.OperationSpec = { httpMethod: "PATCH", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], requestBody: { parameterPath: "parameters", mapper: { ...Mappers.VirtualMachineUpdate, required: true } }, responses: { 200: { bodyMapper: Mappers.VirtualMachine }, 201: { bodyMapper: Mappers.VirtualMachine }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginDeleteMethodOperationSpec: msRest.OperationSpec = { httpMethod: "DELETE", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, 204: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginConvertToManagedDisksOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginDeallocateOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginPowerOffOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginRestartOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginStartOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginRedeployOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginPerformMaintenanceOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance", urlParameters: [ Parameters.resourceGroupName, Parameters.vmName, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listByLocationNextOperationSpec: msRest.OperationSpec = { httpMethod: "GET", baseUrl: "https://management.azure.com", path: "{nextLink}", urlParameters: [ Parameters.nextPageLink ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listNextOperationSpec: msRest.OperationSpec = { httpMethod: "GET", baseUrl: "https://management.azure.com", path: "{nextLink}", urlParameters: [ Parameters.nextPageLink ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listAllNextOperationSpec: msRest.OperationSpec = { httpMethod: "GET", baseUrl: "https://management.azure.com", path: "{nextLink}", urlParameters: [ Parameters.nextPageLink ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer };