From aa0ca1362473c9e37c46eee83ebf67b00a616250 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Wed, 3 Feb 2021 07:19:28 +0000 Subject: [PATCH] CodeGen from PR 12731 in Azure/azure-rest-api-specs Merge c3eb2677cd82bfcae9bcd07f71f60996a6205478 into c44ebe5648f53dbc714701e0ce7a4d6b7b0ee5ac --- .../arm-resourcemover/LICENSE.txt | 21 + sdk/resourcemover/arm-resourcemover/README.md | 102 + .../arm-resourcemover/package.json | 58 + .../arm-resourcemover/rollup.config.js | 37 + .../arm-resourcemover/src/models/index.ts | 2162 +++++++++++++++++ .../arm-resourcemover/src/models/mappers.ts | 2029 ++++++++++++++++ .../src/models/moveCollectionsMappers.ts | 68 + .../src/models/moveResourcesMappers.ts | 63 + .../operationsDiscoveryOperationsMappers.ts | 15 + .../src/models/parameters.ts | 128 + .../models/unresolvedDependenciesMappers.ts | 16 + .../arm-resourcemover/src/operations/index.ts | 13 + .../src/operations/moveCollections.ts | 945 +++++++ .../src/operations/moveResources.ts | 333 +++ .../operationsDiscoveryOperations.ts | 72 + .../src/operations/unresolvedDependencies.ts | 144 ++ .../src/resourceMoverServiceAPI.ts | 47 + .../src/resourceMoverServiceAPIContext.ts | 61 + .../arm-resourcemover/tsconfig.json | 19 + 19 files changed, 6333 insertions(+) create mode 100644 sdk/resourcemover/arm-resourcemover/LICENSE.txt create mode 100644 sdk/resourcemover/arm-resourcemover/README.md create mode 100644 sdk/resourcemover/arm-resourcemover/package.json create mode 100644 sdk/resourcemover/arm-resourcemover/rollup.config.js create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/index.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/mappers.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/moveCollectionsMappers.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/moveResourcesMappers.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/operationsDiscoveryOperationsMappers.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/parameters.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/models/unresolvedDependenciesMappers.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/operations/index.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/operations/moveCollections.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/operations/moveResources.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/operations/operationsDiscoveryOperations.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/operations/unresolvedDependencies.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPI.ts create mode 100644 sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPIContext.ts create mode 100644 sdk/resourcemover/arm-resourcemover/tsconfig.json diff --git a/sdk/resourcemover/arm-resourcemover/LICENSE.txt b/sdk/resourcemover/arm-resourcemover/LICENSE.txt new file mode 100644 index 000000000000..2d3163745319 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/LICENSE.txt @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2021 Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/sdk/resourcemover/arm-resourcemover/README.md b/sdk/resourcemover/arm-resourcemover/README.md new file mode 100644 index 000000000000..3852bc19218c --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/README.md @@ -0,0 +1,102 @@ +## Azure ResourceMoverServiceAPI SDK for JavaScript + +This package contains an isomorphic SDK for ResourceMoverServiceAPI. + +### Currently supported environments + +- Node.js version 6.x.x or higher +- Browser JavaScript + +### How to Install + +```bash +npm install resourcemover +``` + +### How to use + +#### nodejs - client creation and get moveCollections as an example written in TypeScript. + +##### Install @azure/ms-rest-nodeauth + +- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. +```bash +npm install @azure/ms-rest-nodeauth@"^3.0.0" +``` + +##### Sample code + +While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package +```typescript +const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +const { ResourceMoverServiceAPI } = require("resourcemover"); +const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; + +msRestNodeAuth.interactiveLogin().then((creds) => { + const client = new ResourceMoverServiceAPI(creds, subscriptionId); + const resourceGroupName = "testresourceGroupName"; + const moveCollectionName = "testmoveCollectionName"; + client.moveCollections.get(resourceGroupName, moveCollectionName).then((result) => { + console.log("The result is:"); + console.log(result); + }); +}).catch((err) => { + console.error(err); +}); +``` + +#### browser - Authentication, client creation and get moveCollections as an example written in JavaScript. + +##### Install @azure/ms-rest-browserauth + +```bash +npm install @azure/ms-rest-browserauth +``` + +##### Sample code + +See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. + +- index.html +```html + + + + resourcemover sample + + + + + + + + +``` + +## Related projects + +- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/resourcemover/arm-resourcemover/README.png) diff --git a/sdk/resourcemover/arm-resourcemover/package.json b/sdk/resourcemover/arm-resourcemover/package.json new file mode 100644 index 000000000000..9071e70fc8bb --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/package.json @@ -0,0 +1,58 @@ +{ + "name": "resourcemover", + "author": "Microsoft Corporation", + "description": "ResourceMoverServiceAPI Library with typescript type definitions for node.js and browser.", + "version": "1.0.0", + "dependencies": { + "@azure/ms-rest-azure-js": "^2.0.1", + "@azure/ms-rest-js": "^2.0.4", + "tslib": "^1.10.0" + }, + "keywords": [ + "node", + "azure", + "typescript", + "browser", + "isomorphic" + ], + "license": "MIT", + "main": "./dist/resourcemover.js", + "module": "./esm/resourceMoverServiceAPI.js", + "types": "./esm/resourceMoverServiceAPI.d.ts", + "devDependencies": { + "typescript": "^3.5.3", + "rollup": "^1.18.0", + "rollup-plugin-node-resolve": "^5.2.0", + "rollup-plugin-sourcemaps": "^0.4.2", + "uglify-js": "^3.6.0" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/resourcemover/arm-resourcemover", + "repository": { + "type": "git", + "url": "https://github.com/Azure/azure-sdk-for-js.git" + }, + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "files": [ + "dist/**/*.js", + "dist/**/*.js.map", + "dist/**/*.d.ts", + "dist/**/*.d.ts.map", + "esm/**/*.js", + "esm/**/*.js.map", + "esm/**/*.d.ts", + "esm/**/*.d.ts.map", + "src/**/*.ts", + "README.md", + "rollup.config.js", + "tsconfig.json" + ], + "scripts": { + "build": "tsc && rollup -c rollup.config.js && npm run minify", + "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/resourcemover.js.map'\" -o ./dist/resourcemover.min.js ./dist/resourcemover.js", + "prepack": "npm install && npm run build" + }, + "sideEffects": false, + "autoPublish": true +} diff --git a/sdk/resourcemover/arm-resourcemover/rollup.config.js b/sdk/resourcemover/arm-resourcemover/rollup.config.js new file mode 100644 index 000000000000..751518d98074 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/rollup.config.js @@ -0,0 +1,37 @@ +import rollup from "rollup"; +import nodeResolve from "rollup-plugin-node-resolve"; +import sourcemaps from "rollup-plugin-sourcemaps"; + +/** + * @type {rollup.RollupFileOptions} + */ +const config = { + input: "./esm/resourceMoverServiceAPI.js", + external: [ + "@azure/ms-rest-js", + "@azure/ms-rest-azure-js" + ], + output: { + file: "./dist/resourcemover.js", + format: "umd", + name: "Resourcemover", + sourcemap: true, + globals: { + "@azure/ms-rest-js": "msRest", + "@azure/ms-rest-azure-js": "msRestAzure" + }, + banner: `/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */` + }, + plugins: [ + nodeResolve({ mainFields: ['module', 'main'] }), + sourcemaps() + ] +}; + +export default config; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/index.ts b/sdk/resourcemover/arm-resourcemover/src/models/index.ts new file mode 100644 index 000000000000..a518b7546e44 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/index.ts @@ -0,0 +1,2162 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; +import * as msRest from "@azure/ms-rest-js"; + +export { BaseResource, CloudError }; + +/** + * Defines the MSI properties of the Move Collection. + */ +export interface Identity { + /** + * Possible values include: 'None', 'SystemAssigned', 'UserAssigned' + */ + type?: ResourceIdentityType; + /** + * Gets or sets the principal id. + */ + principalId?: string; + /** + * Gets or sets the tenant id. + */ + tenantId?: string; +} + +/** + * Defines the job status. + */ +export interface JobStatus { + /** + * Possible values include: 'InitialSync' + */ + jobName?: JobName; + /** + * Gets or sets the monitoring job percentage. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly jobProgress?: string; +} + +/** + * An error response from the Azure Migrate service. + */ +export interface MoveResourceErrorBody { + /** + * An identifier for the error. Codes are invariant and are intended to be consumed + * programmatically. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly code?: string; + /** + * A message describing the error, intended to be suitable for display in a user interface. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly message?: string; + /** + * The target of the particular error. For example, the name of the property in error. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly target?: string; + /** + * A list of additional details about the error. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly details?: MoveResourceErrorBody[]; +} + +/** + * An error response from the azure resource mover service. + */ +export interface MoveResourceError { + /** + * The move resource error body. + */ + properties?: MoveResourceErrorBody; +} + +/** + * Defines the move resource status. + */ +export interface MoveResourceStatus { + /** + * Possible values include: 'AssignmentPending', 'PreparePending', 'PrepareInProgress', + * 'PrepareFailed', 'MovePending', 'MoveInProgress', 'MoveFailed', 'DiscardInProgress', + * 'DiscardFailed', 'CommitPending', 'CommitInProgress', 'CommitFailed', 'Committed', + * 'DeleteSourcePending', 'ResourceMoveCompleted' + */ + moveState?: MoveState; + jobStatus?: JobStatus; + errors?: MoveResourceError; +} + +/** + * Defines the properties for manual resolution. + */ +export interface ManualResolutionProperties { + /** + * Gets or sets the target resource ARM ID of the dependent resource if the resource type is + * Manual. + */ + targetId?: string; +} + +/** + * Defines the properties for automatic resolution. + */ +export interface AutomaticResolutionProperties { + /** + * Gets the MoveResource ARM ID of + * the dependent resource if the resolution type is Automatic. + */ + moveResourceId?: string; +} + +/** + * Defines the dependency of the move resource. + */ +export interface MoveResourceDependency { + /** + * Gets the source ARM ID of the dependent resource. + */ + id?: string; + /** + * Gets the dependency resolution status. + */ + resolutionStatus?: string; + /** + * Possible values include: 'Manual', 'Automatic' + */ + resolutionType?: ResolutionType; + /** + * Possible values include: 'RequiredForPrepare', 'RequiredForMove' + */ + dependencyType?: DependencyType; + manualResolution?: ManualResolutionProperties; + automaticResolution?: AutomaticResolutionProperties; + /** + * Gets or sets a value indicating whether the dependency is optional. + */ + isOptional?: string; +} + +/** + * Defines the dependency override of the move resource. + */ +export interface MoveResourceDependencyOverride { + /** + * Gets or sets the ARM ID of the dependent resource. + */ + id?: string; + /** + * Gets or sets the resource ARM id of either the MoveResource or the resource ARM ID of + * the dependent resource. + */ + targetId?: string; +} + +/** + * Contains the possible cases for ResourceSettings. + */ +export type ResourceSettingsUnion = ResourceSettings | VirtualMachineResourceSettings | AvailabilitySetResourceSettings | VirtualNetworkResourceSettings | NetworkInterfaceResourceSettings | NetworkSecurityGroupResourceSettings | LoadBalancerResourceSettings | SqlServerResourceSettings | SqlElasticPoolResourceSettings | SqlDatabaseResourceSettings | ResourceGroupResourceSettings | PublicIPAddressResourceSettings | KeyVaultResourceSettings | DiskEncryptionSetResourceSettings; + +/** + * Gets or sets the resource settings. + */ +export interface ResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "ResourceSettings"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; +} + +/** + * Defines the move resource status. + */ +export interface MoveResourcePropertiesMoveStatus extends MoveResourceStatus { +} + +/** + * Defines the move resource errors. + */ +export interface MoveResourcePropertiesErrors extends MoveResourceError { +} + +/** + * Defines the move resource properties. + */ +export interface MoveResourceProperties { + /** + * Possible values include: 'Succeeded', 'Updating', 'Creating', 'Failed' + */ + provisioningState?: ProvisioningState; + /** + * Gets or sets the Source ARM Id of the resource. + */ + sourceId: string; + /** + * Gets or sets the Target ARM Id of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly targetId?: string; + /** + * Gets or sets the existing target ARM Id of the resource. + */ + existingTargetId?: string; + /** + * Gets or sets the resource settings. + */ + resourceSettings?: ResourceSettingsUnion; + /** + * Gets or sets the source resource settings. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly sourceResourceSettings?: ResourceSettingsUnion; + /** + * Defines the move resource status. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly moveStatus?: MoveResourcePropertiesMoveStatus; + /** + * Gets or sets the move resource dependencies. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly dependsOn?: MoveResourceDependency[]; + /** + * Gets or sets the move resource dependencies overrides. + */ + dependsOnOverrides?: MoveResourceDependencyOverride[]; + /** + * Gets a value indicating whether the resolve action is required over the move collection. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly isResolveRequired?: boolean; + /** + * Defines the move resource errors. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly errors?: MoveResourcePropertiesErrors; +} + +/** + * Defines the move resource. + */ +export interface MoveResource extends BaseResource { + /** + * Fully qualified resource Id for the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * The name of the resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * The type of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + properties?: MoveResourceProperties; +} + +/** + * Summary item. + */ +export interface Summary { + /** + * Gets the count. + */ + count?: number; + /** + * Gets the item. + */ + item?: string; +} + +/** + * Summary Collection. + */ +export interface SummaryCollection { + /** + * Gets or sets the field name on which summary is done. + */ + fieldName?: string; + /** + * Gets or sets the list of summary items. + */ + summary?: Summary[]; +} + +/** + * Defines the move collection errors. + */ +export interface MoveCollectionPropertiesErrors extends MoveResourceError { +} + +/** + * Defines the move collection properties. + */ +export interface MoveCollectionProperties { + /** + * Gets or sets the source region. + */ + sourceRegion: string; + /** + * Gets or sets the target region. + */ + targetRegion: string; + /** + * Possible values include: 'Succeeded', 'Updating', 'Creating', 'Failed' + */ + provisioningState?: ProvisioningState; + /** + * Defines the move collection errors. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly errors?: MoveCollectionPropertiesErrors; +} + +/** + * Define the move collection. + */ +export interface MoveCollection extends BaseResource { + /** + * Fully qualified resource Id for the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * The name of the resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * The type of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * The etag of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly etag?: string; + /** + * Resource tags. + */ + tags?: { [propertyName: string]: string }; + /** + * The geo-location where the resource lives. + */ + location?: string; + identity?: Identity; + properties?: MoveCollectionProperties; +} + +/** + * Defines the request body for updating move collection. + */ +export interface UpdateMoveCollectionRequest { + /** + * Gets or sets the Resource tags. + */ + tags?: { [propertyName: string]: string }; + identity?: Identity; +} + +/** + * Defines the request body for initiate prepare operation. + */ +export interface PrepareRequest { + /** + * Gets or sets a value indicating whether the operation needs to only run pre-requisite. + */ + validateOnly?: boolean; + /** + * Gets or sets the list of resource Id's, by default it accepts move resource id's unless the + * input type is switched via moveResourceInputType property. + */ + moveResources: string[]; + /** + * Possible values include: 'MoveResourceId', 'MoveResourceSourceId' + */ + moveResourceInputType?: MoveResourceInputType; +} + +/** + * Defines the request body for resource move operation. + */ +export interface ResourceMoveRequest { + /** + * Gets or sets a value indicating whether the operation needs to only run pre-requisite. + */ + validateOnly?: boolean; + /** + * Gets or sets the list of resource Id's, by default it accepts move resource id's unless the + * input type is switched via moveResourceInputType property. + */ + moveResources: string[]; + /** + * Possible values include: 'MoveResourceId', 'MoveResourceSourceId' + */ + moveResourceInputType?: MoveResourceInputType; +} + +/** + * Defines the request body for commit operation. + */ +export interface CommitRequest { + /** + * Gets or sets a value indicating whether the operation needs to only run pre-requisite. + */ + validateOnly?: boolean; + /** + * Gets or sets the list of resource Id's, by default it accepts move resource id's unless the + * input type is switched via moveResourceInputType property. + */ + moveResources: string[]; + /** + * Possible values include: 'MoveResourceId', 'MoveResourceSourceId' + */ + moveResourceInputType?: MoveResourceInputType; +} + +/** + * Defines the request body for discard operation. + */ +export interface DiscardRequest { + /** + * Gets or sets a value indicating whether the operation needs to only run pre-requisite. + */ + validateOnly?: boolean; + /** + * Gets or sets the list of resource Id's, by default it accepts move resource id's unless the + * input type is switched via moveResourceInputType property. + */ + moveResources: string[]; + /** + * Possible values include: 'MoveResourceId', 'MoveResourceSourceId' + */ + moveResourceInputType?: MoveResourceInputType; +} + +/** + * Defines the request body for bulk remove of move resources operation. + */ +export interface BulkRemoveRequest { + /** + * Gets or sets a value indicating whether the operation needs to only run pre-requisite. + */ + validateOnly?: boolean; + /** + * Gets or sets the list of resource Id's, by default it accepts move resource id's unless the + * input type is switched via moveResourceInputType property. + */ + moveResources?: string[]; + /** + * Possible values include: 'MoveResourceId', 'MoveResourceSourceId' + */ + moveResourceInputType?: MoveResourceInputType; +} + +/** + * An interface representing MoveResourceFilterProperties. + */ +export interface MoveResourceFilterProperties { + /** + * The provisioning state. + */ + provisioningState?: string; +} + +/** + * Move resource filter. + */ +export interface MoveResourceFilter { + properties?: MoveResourceFilterProperties; +} + +/** + * An interface representing UnresolvedDependenciesFilterProperties. + */ +export interface UnresolvedDependenciesFilterProperties { + /** + * The count of the resource. + */ + count?: number; +} + +/** + * Unresolved dependencies contract. + */ +export interface UnresolvedDependenciesFilter { + properties?: UnresolvedDependenciesFilterProperties; +} + +/** + * Unresolved dependency. + */ +export interface UnresolvedDependency { + /** + * Gets or sets the count. + */ + count?: number; + /** + * Gets or sets the arm id of the dependency. + */ + id?: string; +} + +/** + * Required for resources collection. + */ +export interface RequiredForResourcesCollection { + /** + * Gets or sets the list of source Ids for which the input resource is required. + */ + sourceIds?: string[]; +} + +/** + * Contains the localized display information for this particular operation / action. These + * value will be used by several clients for + * (1) custom role definitions for RBAC; + * (2) complex query filters for the event service; and + * (3) audit history / records for management operations. + */ +export interface Display { + /** + * Gets or sets the provider. + * The localized friendly form of the resource provider name – it is expected to also + * include the publisher/company responsible. + * It should use Title Casing and begin with "Microsoft" for 1st party services. + * e.g. "Microsoft Monitoring Insights" or "Microsoft Compute.". + */ + provider?: string; + /** + * Gets or sets the resource. + * The localized friendly form of the resource related to this action/operation – it + * should match the public documentation for the resource provider. + * It should use Title Casing. + * This value should be unique for a particular URL type (e.g. nested types should *not* + * reuse their parent’s display.resource field) + * e.g. "Virtual Machines" or "Scheduler Job Collections", or "Virtual Machine VM Sizes" + * or "Scheduler Jobs". + */ + resource?: string; + /** + * Gets or sets the operation. + * The localized friendly name for the operation, as it should be shown to the user. + * It should be concise (to fit in drop downs) but clear (i.e. self-documenting). + * It should use Title Casing. + * Prescriptive guidance: Read Create or Update Delete 'ActionName'. + */ + operation?: string; + /** + * Gets or sets the description. + * The localized friendly description for the operation, as it should be shown to the + * user. + * It should be thorough, yet concise – it will be used in tool tips and detailed views. + * Prescriptive guidance for namespace: + * Read any 'display.provider' resource + * Create or Update any 'display.provider' resource + * Delete any 'display.provider' resource + * Perform any other action on any 'display.provider' resource + * Prescriptive guidance for namespace: + * Read any 'display.resource' Create or Update any 'display.resource' Delete any + * 'display.resource' 'ActionName' any 'display.resources'. + */ + description?: string; +} + +/** + * Operations discovery class. + */ +export interface OperationsDiscovery { + /** + * Gets or sets Name of the API. + * The name of the operation being performed on this particular object. It should + * match the action name that appears in RBAC / the event service. + * Examples of operations include: + * * Microsoft.Compute/virtualMachine/capture/action + * * Microsoft.Compute/virtualMachine/restart/action + * * Microsoft.Compute/virtualMachine/write + * * Microsoft.Compute/virtualMachine/read + * * Microsoft.Compute/virtualMachine/delete + * Each action should include, in order: + * (1) Resource Provider Namespace + * (2) Type hierarchy for which the action applies (e.g. server/databases for a SQL + * Azure database) + * (3) Read, Write, Action or Delete indicating which type applies. If it is a PUT/PATCH + * on a collection or named value, Write should be used. + * If it is a GET, Read should be used. If it is a DELETE, Delete should be used. If it + * is a POST, Action should be used. + * As a note: all resource providers would need to include the "{Resource Provider + * Namespace}/register/action" operation in their response. + * This API is used to register for their service, and should include details about the + * operation (e.g. a localized name for the resource provider + any special + * considerations like PII release). + */ + name?: string; + /** + * Indicates whether the operation is a data action + */ + isDataAction?: boolean; + display?: Display; + /** + * Gets or sets Origin. + * The intended executor of the operation; governs the display of the operation in the + * RBAC UX and the audit logs UX. + * Default value is "user,system". + */ + origin?: string; + properties?: any; +} + +/** + * Collection of ClientDiscovery details. + */ +export interface OperationsDiscoveryCollection { + /** + * Gets or sets the ClientDiscovery details. + */ + value?: OperationsDiscovery[]; + /** + * Gets or sets the value of next link. + */ + nextLink?: string; +} + +/** + * Gets or sets the virtual machine resource settings. + */ +export interface VirtualMachineResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Compute/virtualMachines"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets the target availability zone. Possible values include: '1', '2', '3', 'NA' + */ + targetAvailabilityZone?: TargetAvailabilityZone; + /** + * Gets or sets the target virtual machine size. + */ + targetVmSize?: string; + /** + * Gets or sets the target availability set id for virtual machines not in an availability set at + * source. + */ + targetAvailabilitySetId?: string; +} + +/** + * Gets or sets the availability set resource settings. + */ +export interface AvailabilitySetResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Compute/availabilitySets"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets the target fault domain. + */ + faultDomain?: number; + /** + * Gets or sets the target update domain. + */ + updateDomain?: number; +} + +/** + * Defines reference to an Azure resource. + */ +export interface AzureResourceReference { + /** + * Gets the ARM resource ID of the tracked resource being referenced. + */ + sourceArmResourceId: string; +} + +/** + * Defines reference to NSG. + */ +export interface NsgReference extends AzureResourceReference { +} + +/** + * Defines the virtual network subnets resource settings. + */ +export interface SubnetResourceSettings { + /** + * Gets or sets the Subnet name. + */ + name?: string; + /** + * Gets or sets address prefix for the subnet. + */ + addressPrefix?: string; + networkSecurityGroup?: NsgReference; +} + +/** + * Defines the virtual network resource settings. + */ +export interface VirtualNetworkResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Network/virtualNetworks"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets a value indicating whether gets or sets whether the + * DDOS protection should be switched on. + */ + enableDdosProtection?: boolean; + /** + * Gets or sets the address prefixes for the virtual network. + */ + addressSpace?: string[]; + /** + * Gets or sets DHCPOptions that contains an array of DNS servers available to VMs + * deployed in the virtual network. + */ + dnsServers?: string[]; + /** + * Gets or sets List of subnets in a VirtualNetwork. + */ + subnets?: SubnetResourceSettings[]; +} + +/** + * Defines reference to a proxy resource. + */ +export interface ProxyResourceReference extends AzureResourceReference { + /** + * Gets the name of the proxy resource on the target side. + */ + name?: string; +} + +/** + * Defines reference to subnet. + */ +export interface SubnetReference extends ProxyResourceReference { +} + +/** + * Defines reference to load balancer backend address pools. + */ +export interface LoadBalancerBackendAddressPoolReference extends ProxyResourceReference { +} + +/** + * Defines reference to load balancer NAT rules. + */ +export interface LoadBalancerNatRuleReference extends ProxyResourceReference { +} + +/** + * Defines reference to a public IP. + */ +export interface PublicIpReference extends AzureResourceReference { +} + +/** + * Defines NIC IP configuration properties. + */ +export interface NicIpConfigurationResourceSettings { + /** + * Gets or sets the IP configuration name. + */ + name?: string; + /** + * Gets or sets the private IP address of the network interface IP Configuration. + */ + privateIpAddress?: string; + /** + * Gets or sets the private IP address allocation method. + */ + privateIpAllocationMethod?: string; + subnet?: SubnetReference; + /** + * Gets or sets a value indicating whether this IP configuration is the primary. + */ + primary?: boolean; + /** + * Gets or sets the references of the load balancer backend address pools. + */ + loadBalancerBackendAddressPools?: LoadBalancerBackendAddressPoolReference[]; + /** + * Gets or sets the references of the load balancer NAT rules. + */ + loadBalancerNatRules?: LoadBalancerNatRuleReference[]; + publicIp?: PublicIpReference; +} + +/** + * Defines the network interface resource settings. + */ +export interface NetworkInterfaceResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Network/networkInterfaces"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets the IP configurations of the NIC. + */ + ipConfigurations?: NicIpConfigurationResourceSettings[]; + /** + * Gets or sets a value indicating whether accelerated networking is enabled. + */ + enableAcceleratedNetworking?: boolean; +} + +/** + * Security Rule data model for Network Security Groups. + */ +export interface NsgSecurityRule { + /** + * Gets or sets the Security rule name. + */ + name?: string; + /** + * Gets or sets whether network traffic is allowed or denied. + * Possible values are “Allow” and “Deny”. + */ + access?: string; + /** + * Gets or sets a description for this rule. Restricted to 140 chars. + */ + description?: string; + /** + * Gets or sets destination address prefix. CIDR or source IP range. + * A “*” can also be used to match all source IPs. Default tags such + * as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. + */ + destinationAddressPrefix?: string; + /** + * Gets or sets Destination Port or Range. Integer or range between + * 0 and 65535. A “*” can also be used to match all ports. + */ + destinationPortRange?: string; + /** + * Gets or sets the direction of the rule.InBound or Outbound. The + * direction specifies if rule will be evaluated on incoming or outgoing traffic. + */ + direction?: string; + /** + * Gets or sets the priority of the rule. The value can be between + * 100 and 4096. The priority number must be unique for each rule in the collection. + * The lower the priority number, the higher the priority of the rule. + */ + priority?: number; + /** + * Gets or sets Network protocol this rule applies to. Can be Tcp, Udp or All(*). + */ + protocol?: string; + /** + * Gets or sets source address prefix. CIDR or source IP range. A + * “*” can also be used to match all source IPs. Default tags such as ‘VirtualNetwork’, + * ‘AzureLoadBalancer’ and ‘Internet’ can also be used. If this is an ingress + * rule, specifies where network traffic originates from. + */ + sourceAddressPrefix?: string; + /** + * Gets or sets Source Port or Range. Integer or range between 0 and + * 65535. A “*” can also be used to match all ports. + */ + sourcePortRange?: string; +} + +/** + * Defines the NSG resource settings. + */ +export interface NetworkSecurityGroupResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Network/networkSecurityGroups"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets Security rules of network security group. + */ + securityRules?: NsgSecurityRule[]; +} + +/** + * Defines load balancer frontend IP configuration properties. + */ +export interface LBFrontendIPConfigurationResourceSettings { + /** + * Gets or sets the frontend IP configuration name. + */ + name?: string; + /** + * Gets or sets the IP address of the Load Balancer.This is only specified if a specific + * private IP address shall be allocated from the subnet specified in subnetRef. + */ + privateIpAddress?: string; + /** + * Gets or sets PrivateIP allocation method (Static/Dynamic). + */ + privateIpAllocationMethod?: string; + subnet?: SubnetReference; + /** + * Gets or sets the csv list of zones. + */ + zones?: string; +} + +/** + * Defines load balancer backend address pool properties. + */ +export interface LBBackendAddressPoolResourceSettings { + /** + * Gets or sets the backend address pool name. + */ + name?: string; +} + +/** + * Defines the load balancer resource settings. + */ +export interface LoadBalancerResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Network/loadBalancers"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets load balancer sku (Basic/Standard). + */ + sku?: string; + /** + * Gets or sets the frontend IP configurations of the load balancer. + */ + frontendIPConfigurations?: LBFrontendIPConfigurationResourceSettings[]; + /** + * Gets or sets the backend address pools of the load balancer. + */ + backendAddressPools?: LBBackendAddressPoolResourceSettings[]; + /** + * Gets or sets the csv list of zones common for all frontend IP configurations. Note this is + * given + * precedence only if frontend IP configurations settings are not present. + */ + zones?: string; +} + +/** + * Defines the SQL Server resource settings. + */ +export interface SqlServerResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Sql/servers"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; +} + +/** + * Defines the Sql ElasticPool resource settings. + */ +export interface SqlElasticPoolResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Sql/servers/elasticPools"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Possible values include: 'Enable', 'Disable' + */ + zoneRedundant?: ZoneRedundant; +} + +/** + * Defines the Sql Database resource settings. + */ +export interface SqlDatabaseResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Sql/servers/databases"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Possible values include: 'Enable', 'Disable' + */ + zoneRedundant?: ZoneRedundant; +} + +/** + * Defines the resource group resource settings. + */ +export interface ResourceGroupResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "resourceGroups"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; +} + +/** + * Defines the public IP address resource settings. + */ +export interface PublicIPAddressResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Network/publicIPAddresses"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; + /** + * Gets or sets the domain name label. + */ + domainNameLabel?: string; + /** + * Gets or sets the fully qualified domain name. + */ + fqdn?: string; + /** + * Gets or sets public IP allocation method. + */ + publicIpAllocationMethod?: string; + /** + * Gets or sets public IP sku. + */ + sku?: string; + /** + * Gets or sets public IP zones. + */ + zones?: string; +} + +/** + * Defines the key vault resource settings. + */ +export interface KeyVaultResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.KeyVault/vaults"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; +} + +/** + * Defines the disk encryption set resource settings. + */ +export interface DiskEncryptionSetResourceSettings { + /** + * Polymorphic Discriminator + */ + resourceType: "Microsoft.Compute/diskEncryptionSets"; + /** + * Gets or sets the target Resource name. + */ + targetResourceName: string; +} + +/** + * The RP custom operation error info. + */ +export interface AffectedMoveResource { + /** + * The affected move resource id. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * The affected move resource source id. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly sourceId?: string; + /** + * The affected move resources. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly moveResources?: AffectedMoveResource[]; +} + +/** + * The move custom error info. + */ +export interface MoveErrorInfo { + /** + * The affected move resources. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly moveResources?: AffectedMoveResource[]; +} + +/** + * The operation error info. + */ +export interface OperationErrorAdditionalInfo { + /** + * The error type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * The operation error info. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly info?: MoveErrorInfo; +} + +/** + * Class for operation status errors. + */ +export interface OperationStatusError { + /** + * The error code. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly code?: string; + /** + * The error message. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly message?: string; + /** + * The error details. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly details?: OperationStatusError[]; + /** + * The additional info. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly additionalInfo?: OperationErrorAdditionalInfo[]; +} + +/** + * Operation status REST resource. + */ +export interface OperationStatus { + /** + * Resource Id. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Operation name. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Status of the operation. ARM expects the terminal status to be one of Succeeded/ Failed/ + * Canceled. All other values imply that the operation is still running. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly status?: string; + /** + * Start time. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly startTime?: string; + /** + * End time. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly endTime?: string; + /** + * Error stating all error details for the operation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly error?: OperationStatusError; + /** + * Custom data. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly properties?: any; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsCreateOptionalParams extends msRest.RequestOptionsBase { + body?: MoveCollection; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsUpdateOptionalParams extends msRest.RequestOptionsBase { + body?: UpdateMoveCollectionRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsPrepareOptionalParams extends msRest.RequestOptionsBase { + body?: PrepareRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsInitiateMoveOptionalParams extends msRest.RequestOptionsBase { + body?: ResourceMoveRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsCommitOptionalParams extends msRest.RequestOptionsBase { + body?: CommitRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsDiscardOptionalParams extends msRest.RequestOptionsBase { + body?: DiscardRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsBulkRemoveOptionalParams extends msRest.RequestOptionsBase { + body?: BulkRemoveRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsBeginPrepareOptionalParams extends msRest.RequestOptionsBase { + body?: PrepareRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsBeginInitiateMoveOptionalParams extends msRest.RequestOptionsBase { + body?: ResourceMoveRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsBeginCommitOptionalParams extends msRest.RequestOptionsBase { + body?: CommitRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsBeginDiscardOptionalParams extends msRest.RequestOptionsBase { + body?: DiscardRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveCollectionsBeginBulkRemoveOptionalParams extends msRest.RequestOptionsBase { + body?: BulkRemoveRequest; +} + +/** + * Optional Parameters. + */ +export interface MoveResourcesListOptionalParams extends msRest.RequestOptionsBase { + /** + * The filter to apply on the operation. For example, you can use + * $filter=Properties/ProvisioningState eq 'Succeeded'. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface MoveResourcesCreateOptionalParams extends msRest.RequestOptionsBase { + properties?: MoveResourceProperties; +} + +/** + * Optional Parameters. + */ +export interface MoveResourcesBeginCreateOptionalParams extends msRest.RequestOptionsBase { + properties?: MoveResourceProperties; +} + +/** + * Optional Parameters. + */ +export interface MoveResourcesListNextOptionalParams extends msRest.RequestOptionsBase { + /** + * The filter to apply on the operation. For example, you can use + * $filter=Properties/ProvisioningState eq 'Succeeded'. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface UnresolvedDependenciesGetOptionalParams extends msRest.RequestOptionsBase { + /** + * Defines the dependency level. Possible values include: 'Direct', 'Descendant' + */ + dependencyLevel?: DependencyLevel; + /** + * OData order by query option. For example, you can use $orderby=Count desc. + */ + orderby?: string; + /** + * The filter to apply on the operation. For example, $apply=filter(count eq 2). + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface UnresolvedDependenciesGetNextOptionalParams extends msRest.RequestOptionsBase { + /** + * Defines the dependency level. Possible values include: 'Direct', 'Descendant' + */ + dependencyLevel?: DependencyLevel; + /** + * OData order by query option. For example, you can use $orderby=Count desc. + */ + orderby?: string; + /** + * The filter to apply on the operation. For example, $apply=filter(count eq 2). + */ + filter?: string; +} + +/** + * An interface representing ResourceMoverServiceAPIOptions. + */ +export interface ResourceMoverServiceAPIOptions extends AzureServiceClientOptions { + baseUri?: string; +} + +/** + * @interface + * Defines the collection of move collections. + * @extends Array + */ +export interface MoveCollectionResultList extends Array { + /** + * Gets the value of next link. + */ + nextLink?: string; +} + +/** + * @interface + * Defines the collection of move resources. + * @extends Array + */ +export interface MoveResourceCollection extends Array { + /** + * Gets the value of next link. + */ + nextLink?: string; + /** + * Gets or sets the list of summary items and the field on which summary is done. + */ + summaryCollection?: SummaryCollection; + /** + * Gets the total count. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly totalCount?: number; +} + +/** + * @interface + * Unresolved dependency collection. + * @extends Array + */ +export interface UnresolvedDependencyCollection extends Array { + /** + * Gets or sets the value of next link. + */ + nextLink?: string; + /** + * Gets or sets the list of summary items and the field on which summary is done. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly summaryCollection?: SummaryCollection; + /** + * Gets the total count. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly totalCount?: number; +} + +/** + * Defines values for ResourceIdentityType. + * Possible values include: 'None', 'SystemAssigned', 'UserAssigned' + * @readonly + * @enum {string} + */ +export type ResourceIdentityType = 'None' | 'SystemAssigned' | 'UserAssigned'; + +/** + * Defines values for MoveState. + * Possible values include: 'AssignmentPending', 'PreparePending', 'PrepareInProgress', + * 'PrepareFailed', 'MovePending', 'MoveInProgress', 'MoveFailed', 'DiscardInProgress', + * 'DiscardFailed', 'CommitPending', 'CommitInProgress', 'CommitFailed', 'Committed', + * 'DeleteSourcePending', 'ResourceMoveCompleted' + * @readonly + * @enum {string} + */ +export type MoveState = 'AssignmentPending' | 'PreparePending' | 'PrepareInProgress' | 'PrepareFailed' | 'MovePending' | 'MoveInProgress' | 'MoveFailed' | 'DiscardInProgress' | 'DiscardFailed' | 'CommitPending' | 'CommitInProgress' | 'CommitFailed' | 'Committed' | 'DeleteSourcePending' | 'ResourceMoveCompleted'; + +/** + * Defines values for MoveResourceInputType. + * Possible values include: 'MoveResourceId', 'MoveResourceSourceId' + * @readonly + * @enum {string} + */ +export type MoveResourceInputType = 'MoveResourceId' | 'MoveResourceSourceId'; + +/** + * Defines values for ProvisioningState. + * Possible values include: 'Succeeded', 'Updating', 'Creating', 'Failed' + * @readonly + * @enum {string} + */ +export type ProvisioningState = 'Succeeded' | 'Updating' | 'Creating' | 'Failed'; + +/** + * Defines values for JobName. + * Possible values include: 'InitialSync' + * @readonly + * @enum {string} + */ +export type JobName = 'InitialSync'; + +/** + * Defines values for ResolutionType. + * Possible values include: 'Manual', 'Automatic' + * @readonly + * @enum {string} + */ +export type ResolutionType = 'Manual' | 'Automatic'; + +/** + * Defines values for DependencyType. + * Possible values include: 'RequiredForPrepare', 'RequiredForMove' + * @readonly + * @enum {string} + */ +export type DependencyType = 'RequiredForPrepare' | 'RequiredForMove'; + +/** + * Defines values for TargetAvailabilityZone. + * Possible values include: '1', '2', '3', 'NA' + * @readonly + * @enum {string} + */ +export type TargetAvailabilityZone = '1' | '2' | '3' | 'NA'; + +/** + * Defines values for ZoneRedundant. + * Possible values include: 'Enable', 'Disable' + * @readonly + * @enum {string} + */ +export type ZoneRedundant = 'Enable' | 'Disable'; + +/** + * Defines values for DependencyLevel. + * Possible values include: 'Direct', 'Descendant' + * @readonly + * @enum {string} + */ +export type DependencyLevel = 'Direct' | 'Descendant'; + +/** + * Contains response data for the create operation. + */ +export type MoveCollectionsCreateResponse = MoveCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollection; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type MoveCollectionsUpdateResponse = MoveCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollection; + }; +}; + +/** + * Contains response data for the deleteMethod operation. + */ +export type MoveCollectionsDeleteMethodResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type MoveCollectionsGetResponse = MoveCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollection; + }; +}; + +/** + * Contains response data for the prepare operation. + */ +export type MoveCollectionsPrepareResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the initiateMove operation. + */ +export type MoveCollectionsInitiateMoveResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the commit operation. + */ +export type MoveCollectionsCommitResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the discard operation. + */ +export type MoveCollectionsDiscardResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the resolveDependencies operation. + */ +export type MoveCollectionsResolveDependenciesResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the bulkRemove operation. + */ +export type MoveCollectionsBulkRemoveResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the listMoveCollectionsBySubscription operation. + */ +export type MoveCollectionsListMoveCollectionsBySubscriptionResponse = MoveCollectionResultList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollectionResultList; + }; +}; + +/** + * Contains response data for the listMoveCollectionsByResourceGroup operation. + */ +export type MoveCollectionsListMoveCollectionsByResourceGroupResponse = MoveCollectionResultList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollectionResultList; + }; +}; + +/** + * Contains response data for the listRequiredFor operation. + */ +export type MoveCollectionsListRequiredForResponse = RequiredForResourcesCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: RequiredForResourcesCollection; + }; +}; + +/** + * Contains response data for the beginDeleteMethod operation. + */ +export type MoveCollectionsBeginDeleteMethodResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the beginPrepare operation. + */ +export type MoveCollectionsBeginPrepareResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the beginInitiateMove operation. + */ +export type MoveCollectionsBeginInitiateMoveResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the beginCommit operation. + */ +export type MoveCollectionsBeginCommitResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the beginDiscard operation. + */ +export type MoveCollectionsBeginDiscardResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the beginResolveDependencies operation. + */ +export type MoveCollectionsBeginResolveDependenciesResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the beginBulkRemove operation. + */ +export type MoveCollectionsBeginBulkRemoveResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the listMoveCollectionsBySubscriptionNext operation. + */ +export type MoveCollectionsListMoveCollectionsBySubscriptionNextResponse = MoveCollectionResultList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollectionResultList; + }; +}; + +/** + * Contains response data for the listMoveCollectionsByResourceGroupNext operation. + */ +export type MoveCollectionsListMoveCollectionsByResourceGroupNextResponse = MoveCollectionResultList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveCollectionResultList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type MoveResourcesListResponse = MoveResourceCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveResourceCollection; + }; +}; + +/** + * Contains response data for the create operation. + */ +export type MoveResourcesCreateResponse = MoveResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveResource; + }; +}; + +/** + * Contains response data for the deleteMethod operation. + */ +export type MoveResourcesDeleteMethodResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type MoveResourcesGetResponse = MoveResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveResource; + }; +}; + +/** + * Contains response data for the beginCreate operation. + */ +export type MoveResourcesBeginCreateResponse = MoveResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveResource; + }; +}; + +/** + * Contains response data for the beginDeleteMethod operation. + */ +export type MoveResourcesBeginDeleteMethodResponse = OperationStatus & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationStatus; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type MoveResourcesListNextResponse = MoveResourceCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: MoveResourceCollection; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type UnresolvedDependenciesGetResponse = UnresolvedDependencyCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: UnresolvedDependencyCollection; + }; +}; + +/** + * Contains response data for the getNext operation. + */ +export type UnresolvedDependenciesGetNextResponse = UnresolvedDependencyCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: UnresolvedDependencyCollection; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type OperationsDiscoveryGetResponse = OperationsDiscoveryCollection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationsDiscoveryCollection; + }; +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/mappers.ts b/sdk/resourcemover/arm-resourcemover/src/models/mappers.ts new file mode 100644 index 000000000000..7af8a09e85d2 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/mappers.ts @@ -0,0 +1,2029 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js"; +import * as msRest from "@azure/ms-rest-js"; + +export const CloudError = CloudErrorMapper; +export const BaseResource = BaseResourceMapper; + +export const Identity: msRest.CompositeMapper = { + serializedName: "Identity", + type: { + name: "Composite", + className: "Identity", + modelProperties: { + type: { + serializedName: "type", + type: { + name: "String" + } + }, + principalId: { + serializedName: "principalId", + type: { + name: "String" + } + }, + tenantId: { + serializedName: "tenantId", + type: { + name: "String" + } + } + } + } +}; + +export const JobStatus: msRest.CompositeMapper = { + serializedName: "JobStatus", + type: { + name: "Composite", + className: "JobStatus", + modelProperties: { + jobName: { + serializedName: "jobName", + type: { + name: "String" + } + }, + jobProgress: { + readOnly: true, + serializedName: "jobProgress", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourceErrorBody: msRest.CompositeMapper = { + serializedName: "MoveResourceErrorBody", + type: { + name: "Composite", + className: "MoveResourceErrorBody", + modelProperties: { + code: { + readOnly: true, + serializedName: "code", + type: { + name: "String" + } + }, + message: { + readOnly: true, + serializedName: "message", + type: { + name: "String" + } + }, + target: { + readOnly: true, + serializedName: "target", + type: { + name: "String" + } + }, + details: { + readOnly: true, + serializedName: "details", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MoveResourceErrorBody" + } + } + } + } + } + } +}; + +export const MoveResourceError: msRest.CompositeMapper = { + serializedName: "MoveResourceError", + type: { + name: "Composite", + className: "MoveResourceError", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "MoveResourceErrorBody" + } + } + } + } +}; + +export const MoveResourceStatus: msRest.CompositeMapper = { + serializedName: "MoveResourceStatus", + type: { + name: "Composite", + className: "MoveResourceStatus", + modelProperties: { + moveState: { + serializedName: "moveState", + type: { + name: "String" + } + }, + jobStatus: { + serializedName: "jobStatus", + type: { + name: "Composite", + className: "JobStatus" + } + }, + errors: { + serializedName: "errors", + type: { + name: "Composite", + className: "MoveResourceError" + } + } + } + } +}; + +export const ManualResolutionProperties: msRest.CompositeMapper = { + serializedName: "ManualResolutionProperties", + type: { + name: "Composite", + className: "ManualResolutionProperties", + modelProperties: { + targetId: { + serializedName: "targetId", + type: { + name: "String" + } + } + } + } +}; + +export const AutomaticResolutionProperties: msRest.CompositeMapper = { + serializedName: "AutomaticResolutionProperties", + type: { + name: "Composite", + className: "AutomaticResolutionProperties", + modelProperties: { + moveResourceId: { + serializedName: "moveResourceId", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourceDependency: msRest.CompositeMapper = { + serializedName: "MoveResourceDependency", + type: { + name: "Composite", + className: "MoveResourceDependency", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + }, + resolutionStatus: { + serializedName: "resolutionStatus", + type: { + name: "String" + } + }, + resolutionType: { + serializedName: "resolutionType", + type: { + name: "String" + } + }, + dependencyType: { + serializedName: "dependencyType", + type: { + name: "String" + } + }, + manualResolution: { + serializedName: "manualResolution", + type: { + name: "Composite", + className: "ManualResolutionProperties" + } + }, + automaticResolution: { + serializedName: "automaticResolution", + type: { + name: "Composite", + className: "AutomaticResolutionProperties" + } + }, + isOptional: { + serializedName: "isOptional", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourceDependencyOverride: msRest.CompositeMapper = { + serializedName: "MoveResourceDependencyOverride", + type: { + name: "Composite", + className: "MoveResourceDependencyOverride", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + }, + targetId: { + serializedName: "targetId", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceSettings: msRest.CompositeMapper = { + serializedName: "ResourceSettings", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "resourceType", + clientName: "resourceType" + }, + uberParent: "ResourceSettings", + className: "ResourceSettings", + modelProperties: { + targetResourceName: { + required: true, + serializedName: "targetResourceName", + type: { + name: "String" + } + }, + resourceType: { + required: true, + serializedName: "resourceType", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourcePropertiesMoveStatus: msRest.CompositeMapper = { + serializedName: "MoveResourceProperties_moveStatus", + type: { + name: "Composite", + className: "MoveResourcePropertiesMoveStatus", + modelProperties: { + ...MoveResourceStatus.type.modelProperties + } + } +}; + +export const MoveResourcePropertiesErrors: msRest.CompositeMapper = { + serializedName: "MoveResourceProperties_errors", + type: { + name: "Composite", + className: "MoveResourcePropertiesErrors", + modelProperties: { + ...MoveResourceError.type.modelProperties + } + } +}; + +export const MoveResourceProperties: msRest.CompositeMapper = { + serializedName: "MoveResourceProperties", + type: { + name: "Composite", + className: "MoveResourceProperties", + modelProperties: { + provisioningState: { + serializedName: "provisioningState", + type: { + name: "String" + } + }, + sourceId: { + required: true, + serializedName: "sourceId", + type: { + name: "String" + } + }, + targetId: { + readOnly: true, + serializedName: "targetId", + type: { + name: "String" + } + }, + existingTargetId: { + serializedName: "existingTargetId", + type: { + name: "String" + } + }, + resourceSettings: { + serializedName: "resourceSettings", + type: { + name: "Composite", + className: "ResourceSettings" + } + }, + sourceResourceSettings: { + readOnly: true, + serializedName: "sourceResourceSettings", + type: { + name: "Composite", + className: "ResourceSettings" + } + }, + moveStatus: { + readOnly: true, + serializedName: "moveStatus", + type: { + name: "Composite", + className: "MoveResourcePropertiesMoveStatus" + } + }, + dependsOn: { + readOnly: true, + serializedName: "dependsOn", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MoveResourceDependency" + } + } + } + }, + dependsOnOverrides: { + serializedName: "dependsOnOverrides", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MoveResourceDependencyOverride" + } + } + } + }, + isResolveRequired: { + readOnly: true, + serializedName: "isResolveRequired", + type: { + name: "Boolean" + } + }, + errors: { + readOnly: true, + serializedName: "errors", + type: { + name: "Composite", + className: "MoveResourcePropertiesErrors" + } + } + } + } +}; + +export const MoveResource: msRest.CompositeMapper = { + serializedName: "MoveResource", + type: { + name: "Composite", + className: "MoveResource", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "MoveResourceProperties" + } + } + } + } +}; + +export const Summary: msRest.CompositeMapper = { + serializedName: "Summary", + type: { + name: "Composite", + className: "Summary", + modelProperties: { + count: { + serializedName: "count", + type: { + name: "Number" + } + }, + item: { + serializedName: "item", + type: { + name: "String" + } + } + } + } +}; + +export const SummaryCollection: msRest.CompositeMapper = { + serializedName: "SummaryCollection", + type: { + name: "Composite", + className: "SummaryCollection", + modelProperties: { + fieldName: { + serializedName: "fieldName", + type: { + name: "String" + } + }, + summary: { + serializedName: "summary", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Summary" + } + } + } + } + } + } +}; + +export const MoveCollectionPropertiesErrors: msRest.CompositeMapper = { + serializedName: "MoveCollectionProperties_errors", + type: { + name: "Composite", + className: "MoveCollectionPropertiesErrors", + modelProperties: { + ...MoveResourceError.type.modelProperties + } + } +}; + +export const MoveCollectionProperties: msRest.CompositeMapper = { + serializedName: "MoveCollectionProperties", + type: { + name: "Composite", + className: "MoveCollectionProperties", + modelProperties: { + sourceRegion: { + required: true, + serializedName: "sourceRegion", + type: { + name: "String" + } + }, + targetRegion: { + required: true, + serializedName: "targetRegion", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "provisioningState", + type: { + name: "String" + } + }, + errors: { + readOnly: true, + serializedName: "errors", + type: { + name: "Composite", + className: "MoveCollectionPropertiesErrors" + } + } + } + } +}; + +export const MoveCollection: msRest.CompositeMapper = { + serializedName: "MoveCollection", + type: { + name: "Composite", + className: "MoveCollection", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + etag: { + readOnly: true, + serializedName: "etag", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "Identity" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "MoveCollectionProperties" + } + } + } + } +}; + +export const UpdateMoveCollectionRequest: msRest.CompositeMapper = { + serializedName: "UpdateMoveCollectionRequest", + type: { + name: "Composite", + className: "UpdateMoveCollectionRequest", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "Identity" + } + } + } + } +}; + +export const PrepareRequest: msRest.CompositeMapper = { + serializedName: "PrepareRequest", + type: { + name: "Composite", + className: "PrepareRequest", + modelProperties: { + validateOnly: { + serializedName: "validateOnly", + type: { + name: "Boolean" + } + }, + moveResources: { + required: true, + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + moveResourceInputType: { + serializedName: "moveResourceInputType", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceMoveRequest: msRest.CompositeMapper = { + serializedName: "ResourceMoveRequest", + type: { + name: "Composite", + className: "ResourceMoveRequest", + modelProperties: { + validateOnly: { + serializedName: "validateOnly", + type: { + name: "Boolean" + } + }, + moveResources: { + required: true, + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + moveResourceInputType: { + serializedName: "moveResourceInputType", + type: { + name: "String" + } + } + } + } +}; + +export const CommitRequest: msRest.CompositeMapper = { + serializedName: "CommitRequest", + type: { + name: "Composite", + className: "CommitRequest", + modelProperties: { + validateOnly: { + serializedName: "validateOnly", + type: { + name: "Boolean" + } + }, + moveResources: { + required: true, + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + moveResourceInputType: { + serializedName: "moveResourceInputType", + type: { + name: "String" + } + } + } + } +}; + +export const DiscardRequest: msRest.CompositeMapper = { + serializedName: "DiscardRequest", + type: { + name: "Composite", + className: "DiscardRequest", + modelProperties: { + validateOnly: { + serializedName: "validateOnly", + type: { + name: "Boolean" + } + }, + moveResources: { + required: true, + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + moveResourceInputType: { + serializedName: "moveResourceInputType", + type: { + name: "String" + } + } + } + } +}; + +export const BulkRemoveRequest: msRest.CompositeMapper = { + serializedName: "BulkRemoveRequest", + type: { + name: "Composite", + className: "BulkRemoveRequest", + modelProperties: { + validateOnly: { + serializedName: "validateOnly", + type: { + name: "Boolean" + } + }, + moveResources: { + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + moveResourceInputType: { + serializedName: "moveResourceInputType", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourceFilterProperties: msRest.CompositeMapper = { + serializedName: "MoveResourceFilterProperties", + type: { + name: "Composite", + className: "MoveResourceFilterProperties", + modelProperties: { + provisioningState: { + serializedName: "provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourceFilter: msRest.CompositeMapper = { + serializedName: "MoveResourceFilter", + type: { + name: "Composite", + className: "MoveResourceFilter", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "MoveResourceFilterProperties" + } + } + } + } +}; + +export const UnresolvedDependenciesFilterProperties: msRest.CompositeMapper = { + serializedName: "UnresolvedDependenciesFilterProperties", + type: { + name: "Composite", + className: "UnresolvedDependenciesFilterProperties", + modelProperties: { + count: { + serializedName: "count", + type: { + name: "Number" + } + } + } + } +}; + +export const UnresolvedDependenciesFilter: msRest.CompositeMapper = { + serializedName: "UnresolvedDependenciesFilter", + type: { + name: "Composite", + className: "UnresolvedDependenciesFilter", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "UnresolvedDependenciesFilterProperties" + } + } + } + } +}; + +export const UnresolvedDependency: msRest.CompositeMapper = { + serializedName: "UnresolvedDependency", + type: { + name: "Composite", + className: "UnresolvedDependency", + modelProperties: { + count: { + serializedName: "count", + type: { + name: "Number" + } + }, + id: { + serializedName: "id", + type: { + name: "String" + } + } + } + } +}; + +export const RequiredForResourcesCollection: msRest.CompositeMapper = { + serializedName: "RequiredForResourcesCollection", + type: { + name: "Composite", + className: "RequiredForResourcesCollection", + modelProperties: { + sourceIds: { + serializedName: "sourceIds", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const Display: msRest.CompositeMapper = { + serializedName: "Display", + type: { + name: "Composite", + className: "Display", + modelProperties: { + provider: { + serializedName: "provider", + type: { + name: "String" + } + }, + resource: { + serializedName: "resource", + type: { + name: "String" + } + }, + operation: { + serializedName: "operation", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + } + } + } +}; + +export const OperationsDiscovery: msRest.CompositeMapper = { + serializedName: "OperationsDiscovery", + type: { + name: "Composite", + className: "OperationsDiscovery", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + isDataAction: { + serializedName: "isDataAction", + type: { + name: "Boolean" + } + }, + display: { + serializedName: "display", + type: { + name: "Composite", + className: "Display" + } + }, + origin: { + serializedName: "origin", + type: { + name: "String" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Object" + } + } + } + } +}; + +export const OperationsDiscoveryCollection: msRest.CompositeMapper = { + serializedName: "OperationsDiscoveryCollection", + type: { + name: "Composite", + className: "OperationsDiscoveryCollection", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "OperationsDiscovery" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const VirtualMachineResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Compute/virtualMachines", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "VirtualMachineResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + targetAvailabilityZone: { + serializedName: "targetAvailabilityZone", + type: { + name: "String" + } + }, + targetVmSize: { + serializedName: "targetVmSize", + type: { + name: "String" + } + }, + targetAvailabilitySetId: { + serializedName: "targetAvailabilitySetId", + type: { + name: "String" + } + } + } + } +}; + +export const AvailabilitySetResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Compute/availabilitySets", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "AvailabilitySetResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + faultDomain: { + nullable: true, + serializedName: "faultDomain", + constraints: { + InclusiveMinimum: 1 + }, + type: { + name: "Number" + } + }, + updateDomain: { + nullable: true, + serializedName: "updateDomain", + constraints: { + InclusiveMaximum: 20, + InclusiveMinimum: 1 + }, + type: { + name: "Number" + } + } + } + } +}; + +export const AzureResourceReference: msRest.CompositeMapper = { + serializedName: "AzureResourceReference", + type: { + name: "Composite", + className: "AzureResourceReference", + modelProperties: { + sourceArmResourceId: { + required: true, + serializedName: "sourceArmResourceId", + type: { + name: "String" + } + } + } + } +}; + +export const NsgReference: msRest.CompositeMapper = { + serializedName: "NsgReference", + type: { + name: "Composite", + className: "NsgReference", + modelProperties: { + ...AzureResourceReference.type.modelProperties + } + } +}; + +export const SubnetResourceSettings: msRest.CompositeMapper = { + serializedName: "SubnetResourceSettings", + type: { + name: "Composite", + className: "SubnetResourceSettings", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + addressPrefix: { + serializedName: "addressPrefix", + type: { + name: "String" + } + }, + networkSecurityGroup: { + serializedName: "networkSecurityGroup", + type: { + name: "Composite", + className: "NsgReference" + } + } + } + } +}; + +export const VirtualNetworkResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Network/virtualNetworks", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "VirtualNetworkResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + enableDdosProtection: { + nullable: true, + serializedName: "enableDdosProtection", + type: { + name: "Boolean" + } + }, + addressSpace: { + serializedName: "addressSpace", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + dnsServers: { + serializedName: "dnsServers", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + subnets: { + serializedName: "subnets", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubnetResourceSettings" + } + } + } + } + } + } +}; + +export const ProxyResourceReference: msRest.CompositeMapper = { + serializedName: "ProxyResourceReference", + type: { + name: "Composite", + className: "ProxyResourceReference", + modelProperties: { + ...AzureResourceReference.type.modelProperties, + name: { + serializedName: "name", + type: { + name: "String" + } + } + } + } +}; + +export const SubnetReference: msRest.CompositeMapper = { + serializedName: "SubnetReference", + type: { + name: "Composite", + className: "SubnetReference", + modelProperties: { + ...ProxyResourceReference.type.modelProperties + } + } +}; + +export const LoadBalancerBackendAddressPoolReference: msRest.CompositeMapper = { + serializedName: "LoadBalancerBackendAddressPoolReference", + type: { + name: "Composite", + className: "LoadBalancerBackendAddressPoolReference", + modelProperties: { + ...ProxyResourceReference.type.modelProperties + } + } +}; + +export const LoadBalancerNatRuleReference: msRest.CompositeMapper = { + serializedName: "LoadBalancerNatRuleReference", + type: { + name: "Composite", + className: "LoadBalancerNatRuleReference", + modelProperties: { + ...ProxyResourceReference.type.modelProperties + } + } +}; + +export const PublicIpReference: msRest.CompositeMapper = { + serializedName: "PublicIpReference", + type: { + name: "Composite", + className: "PublicIpReference", + modelProperties: { + ...AzureResourceReference.type.modelProperties + } + } +}; + +export const NicIpConfigurationResourceSettings: msRest.CompositeMapper = { + serializedName: "NicIpConfigurationResourceSettings", + type: { + name: "Composite", + className: "NicIpConfigurationResourceSettings", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + privateIpAddress: { + serializedName: "privateIpAddress", + type: { + name: "String" + } + }, + privateIpAllocationMethod: { + serializedName: "privateIpAllocationMethod", + type: { + name: "String" + } + }, + subnet: { + serializedName: "subnet", + type: { + name: "Composite", + className: "SubnetReference" + } + }, + primary: { + serializedName: "primary", + type: { + name: "Boolean" + } + }, + loadBalancerBackendAddressPools: { + serializedName: "loadBalancerBackendAddressPools", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LoadBalancerBackendAddressPoolReference" + } + } + } + }, + loadBalancerNatRules: { + serializedName: "loadBalancerNatRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LoadBalancerNatRuleReference" + } + } + } + }, + publicIp: { + serializedName: "publicIp", + type: { + name: "Composite", + className: "PublicIpReference" + } + } + } + } +}; + +export const NetworkInterfaceResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Network/networkInterfaces", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "NetworkInterfaceResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + ipConfigurations: { + serializedName: "ipConfigurations", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "NicIpConfigurationResourceSettings" + } + } + } + }, + enableAcceleratedNetworking: { + nullable: true, + serializedName: "enableAcceleratedNetworking", + type: { + name: "Boolean" + } + } + } + } +}; + +export const NsgSecurityRule: msRest.CompositeMapper = { + serializedName: "NsgSecurityRule", + type: { + name: "Composite", + className: "NsgSecurityRule", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + access: { + serializedName: "access", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + }, + destinationAddressPrefix: { + serializedName: "destinationAddressPrefix", + type: { + name: "String" + } + }, + destinationPortRange: { + serializedName: "destinationPortRange", + type: { + name: "String" + } + }, + direction: { + serializedName: "direction", + type: { + name: "String" + } + }, + priority: { + serializedName: "priority", + type: { + name: "Number" + } + }, + protocol: { + serializedName: "protocol", + type: { + name: "String" + } + }, + sourceAddressPrefix: { + serializedName: "sourceAddressPrefix", + type: { + name: "String" + } + }, + sourcePortRange: { + serializedName: "sourcePortRange", + type: { + name: "String" + } + } + } + } +}; + +export const NetworkSecurityGroupResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Network/networkSecurityGroups", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "NetworkSecurityGroupResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + securityRules: { + serializedName: "securityRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "NsgSecurityRule" + } + } + } + } + } + } +}; + +export const LBFrontendIPConfigurationResourceSettings: msRest.CompositeMapper = { + serializedName: "LBFrontendIPConfigurationResourceSettings", + type: { + name: "Composite", + className: "LBFrontendIPConfigurationResourceSettings", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + privateIpAddress: { + serializedName: "privateIpAddress", + type: { + name: "String" + } + }, + privateIpAllocationMethod: { + serializedName: "privateIpAllocationMethod", + type: { + name: "String" + } + }, + subnet: { + serializedName: "subnet", + type: { + name: "Composite", + className: "SubnetReference" + } + }, + zones: { + serializedName: "zones", + type: { + name: "String" + } + } + } + } +}; + +export const LBBackendAddressPoolResourceSettings: msRest.CompositeMapper = { + serializedName: "LBBackendAddressPoolResourceSettings", + type: { + name: "Composite", + className: "LBBackendAddressPoolResourceSettings", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + } + } + } +}; + +export const LoadBalancerResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Network/loadBalancers", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "LoadBalancerResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + sku: { + serializedName: "sku", + type: { + name: "String" + } + }, + frontendIPConfigurations: { + serializedName: "frontendIPConfigurations", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LBFrontendIPConfigurationResourceSettings" + } + } + } + }, + backendAddressPools: { + serializedName: "backendAddressPools", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LBBackendAddressPoolResourceSettings" + } + } + } + }, + zones: { + serializedName: "zones", + type: { + name: "String" + } + } + } + } +}; + +export const SqlServerResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Sql/servers", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "SqlServerResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties + } + } +}; + +export const SqlElasticPoolResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Sql/servers/elasticPools", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "SqlElasticPoolResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + zoneRedundant: { + serializedName: "zoneRedundant", + type: { + name: "String" + } + } + } + } +}; + +export const SqlDatabaseResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Sql/servers/databases", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "SqlDatabaseResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + zoneRedundant: { + serializedName: "zoneRedundant", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceGroupResourceSettings: msRest.CompositeMapper = { + serializedName: "resourceGroups", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "ResourceGroupResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties + } + } +}; + +export const PublicIPAddressResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Network/publicIPAddresses", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "PublicIPAddressResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties, + domainNameLabel: { + serializedName: "domainNameLabel", + type: { + name: "String" + } + }, + fqdn: { + serializedName: "fqdn", + type: { + name: "String" + } + }, + publicIpAllocationMethod: { + serializedName: "publicIpAllocationMethod", + type: { + name: "String" + } + }, + sku: { + serializedName: "sku", + type: { + name: "String" + } + }, + zones: { + serializedName: "zones", + type: { + name: "String" + } + } + } + } +}; + +export const KeyVaultResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.KeyVault/vaults", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "KeyVaultResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties + } + } +}; + +export const DiskEncryptionSetResourceSettings: msRest.CompositeMapper = { + serializedName: "Microsoft.Compute/diskEncryptionSets", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceSettings.type.polymorphicDiscriminator, + uberParent: "ResourceSettings", + className: "DiskEncryptionSetResourceSettings", + modelProperties: { + ...ResourceSettings.type.modelProperties + } + } +}; + +export const AffectedMoveResource: msRest.CompositeMapper = { + serializedName: "AffectedMoveResource", + type: { + name: "Composite", + className: "AffectedMoveResource", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + sourceId: { + readOnly: true, + serializedName: "sourceId", + type: { + name: "String" + } + }, + moveResources: { + readOnly: true, + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AffectedMoveResource" + } + } + } + } + } + } +}; + +export const MoveErrorInfo: msRest.CompositeMapper = { + serializedName: "MoveErrorInfo", + type: { + name: "Composite", + className: "MoveErrorInfo", + modelProperties: { + moveResources: { + readOnly: true, + serializedName: "moveResources", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AffectedMoveResource" + } + } + } + } + } + } +}; + +export const OperationErrorAdditionalInfo: msRest.CompositeMapper = { + serializedName: "OperationErrorAdditionalInfo", + type: { + name: "Composite", + className: "OperationErrorAdditionalInfo", + modelProperties: { + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + info: { + readOnly: true, + serializedName: "info", + type: { + name: "Composite", + className: "MoveErrorInfo" + } + } + } + } +}; + +export const OperationStatusError: msRest.CompositeMapper = { + serializedName: "OperationStatusError", + type: { + name: "Composite", + className: "OperationStatusError", + modelProperties: { + code: { + readOnly: true, + serializedName: "code", + type: { + name: "String" + } + }, + message: { + readOnly: true, + serializedName: "message", + type: { + name: "String" + } + }, + details: { + readOnly: true, + serializedName: "details", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "OperationStatusError" + } + } + } + }, + additionalInfo: { + readOnly: true, + serializedName: "additionalInfo", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "OperationErrorAdditionalInfo" + } + } + } + } + } + } +}; + +export const OperationStatus: msRest.CompositeMapper = { + serializedName: "OperationStatus", + type: { + name: "Composite", + className: "OperationStatus", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + status: { + readOnly: true, + serializedName: "status", + type: { + name: "String" + } + }, + startTime: { + readOnly: true, + serializedName: "startTime", + type: { + name: "String" + } + }, + endTime: { + readOnly: true, + serializedName: "endTime", + type: { + name: "String" + } + }, + error: { + readOnly: true, + serializedName: "error", + type: { + name: "Composite", + className: "OperationStatusError" + } + }, + properties: { + readOnly: true, + serializedName: "properties", + type: { + name: "Object" + } + } + } + } +}; + +export const MoveCollectionResultList: msRest.CompositeMapper = { + serializedName: "MoveCollectionResultList", + type: { + name: "Composite", + className: "MoveCollectionResultList", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MoveCollection" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const MoveResourceCollection: msRest.CompositeMapper = { + serializedName: "MoveResourceCollection", + type: { + name: "Composite", + className: "MoveResourceCollection", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MoveResource" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + }, + summaryCollection: { + serializedName: "summaryCollection", + type: { + name: "Composite", + className: "SummaryCollection" + } + }, + totalCount: { + readOnly: true, + serializedName: "totalCount", + type: { + name: "Number" + } + } + } + } +}; + +export const UnresolvedDependencyCollection: msRest.CompositeMapper = { + serializedName: "UnresolvedDependencyCollection", + type: { + name: "Composite", + className: "UnresolvedDependencyCollection", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UnresolvedDependency" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + }, + summaryCollection: { + readOnly: true, + serializedName: "summaryCollection", + type: { + name: "Composite", + className: "SummaryCollection" + } + }, + totalCount: { + readOnly: true, + serializedName: "totalCount", + type: { + name: "Number" + } + } + } + } +}; + +export const discriminators = { + 'ResourceSettings' : ResourceSettings, + 'ResourceSettings.Microsoft.Compute/virtualMachines' : VirtualMachineResourceSettings, + 'ResourceSettings.Microsoft.Compute/availabilitySets' : AvailabilitySetResourceSettings, + 'ResourceSettings.Microsoft.Network/virtualNetworks' : VirtualNetworkResourceSettings, + 'ResourceSettings.Microsoft.Network/networkInterfaces' : NetworkInterfaceResourceSettings, + 'ResourceSettings.Microsoft.Network/networkSecurityGroups' : NetworkSecurityGroupResourceSettings, + 'ResourceSettings.Microsoft.Network/loadBalancers' : LoadBalancerResourceSettings, + 'ResourceSettings.Microsoft.Sql/servers' : SqlServerResourceSettings, + 'ResourceSettings.Microsoft.Sql/servers/elasticPools' : SqlElasticPoolResourceSettings, + 'ResourceSettings.Microsoft.Sql/servers/databases' : SqlDatabaseResourceSettings, + 'ResourceSettings.resourceGroups' : ResourceGroupResourceSettings, + 'ResourceSettings.Microsoft.Network/publicIPAddresses' : PublicIPAddressResourceSettings, + 'ResourceSettings.Microsoft.KeyVault/vaults' : KeyVaultResourceSettings, + 'ResourceSettings.Microsoft.Compute/diskEncryptionSets' : DiskEncryptionSetResourceSettings + +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/moveCollectionsMappers.ts b/sdk/resourcemover/arm-resourcemover/src/models/moveCollectionsMappers.ts new file mode 100644 index 000000000000..0c4a5c329ffc --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/moveCollectionsMappers.ts @@ -0,0 +1,68 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + AffectedMoveResource, + AutomaticResolutionProperties, + AvailabilitySetResourceSettings, + AzureResourceReference, + BaseResource, + BulkRemoveRequest, + CloudError, + CommitRequest, + DiscardRequest, + DiskEncryptionSetResourceSettings, + Identity, + JobStatus, + KeyVaultResourceSettings, + LBBackendAddressPoolResourceSettings, + LBFrontendIPConfigurationResourceSettings, + LoadBalancerBackendAddressPoolReference, + LoadBalancerNatRuleReference, + LoadBalancerResourceSettings, + ManualResolutionProperties, + MoveCollection, + MoveCollectionProperties, + MoveCollectionPropertiesErrors, + MoveCollectionResultList, + MoveErrorInfo, + MoveResource, + MoveResourceDependency, + MoveResourceDependencyOverride, + MoveResourceError, + MoveResourceErrorBody, + MoveResourceProperties, + MoveResourcePropertiesErrors, + MoveResourcePropertiesMoveStatus, + MoveResourceStatus, + NetworkInterfaceResourceSettings, + NetworkSecurityGroupResourceSettings, + NicIpConfigurationResourceSettings, + NsgReference, + NsgSecurityRule, + OperationErrorAdditionalInfo, + OperationStatus, + OperationStatusError, + PrepareRequest, + ProxyResourceReference, + PublicIPAddressResourceSettings, + PublicIpReference, + RequiredForResourcesCollection, + ResourceGroupResourceSettings, + ResourceMoveRequest, + ResourceSettings, + SqlDatabaseResourceSettings, + SqlElasticPoolResourceSettings, + SqlServerResourceSettings, + SubnetReference, + SubnetResourceSettings, + UpdateMoveCollectionRequest, + VirtualMachineResourceSettings, + VirtualNetworkResourceSettings +} from "../models/mappers"; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/moveResourcesMappers.ts b/sdk/resourcemover/arm-resourcemover/src/models/moveResourcesMappers.ts new file mode 100644 index 000000000000..ab9252fc77cf --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/moveResourcesMappers.ts @@ -0,0 +1,63 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + AffectedMoveResource, + AutomaticResolutionProperties, + AvailabilitySetResourceSettings, + AzureResourceReference, + BaseResource, + CloudError, + DiskEncryptionSetResourceSettings, + Identity, + JobStatus, + KeyVaultResourceSettings, + LBBackendAddressPoolResourceSettings, + LBFrontendIPConfigurationResourceSettings, + LoadBalancerBackendAddressPoolReference, + LoadBalancerNatRuleReference, + LoadBalancerResourceSettings, + ManualResolutionProperties, + MoveCollection, + MoveCollectionProperties, + MoveCollectionPropertiesErrors, + MoveErrorInfo, + MoveResource, + MoveResourceCollection, + MoveResourceDependency, + MoveResourceDependencyOverride, + MoveResourceError, + MoveResourceErrorBody, + MoveResourceProperties, + MoveResourcePropertiesErrors, + MoveResourcePropertiesMoveStatus, + MoveResourceStatus, + NetworkInterfaceResourceSettings, + NetworkSecurityGroupResourceSettings, + NicIpConfigurationResourceSettings, + NsgReference, + NsgSecurityRule, + OperationErrorAdditionalInfo, + OperationStatus, + OperationStatusError, + ProxyResourceReference, + PublicIPAddressResourceSettings, + PublicIpReference, + ResourceGroupResourceSettings, + ResourceSettings, + SqlDatabaseResourceSettings, + SqlElasticPoolResourceSettings, + SqlServerResourceSettings, + SubnetReference, + SubnetResourceSettings, + Summary, + SummaryCollection, + VirtualMachineResourceSettings, + VirtualNetworkResourceSettings +} from "../models/mappers"; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/operationsDiscoveryOperationsMappers.ts b/sdk/resourcemover/arm-resourcemover/src/models/operationsDiscoveryOperationsMappers.ts new file mode 100644 index 000000000000..c87b0d47feba --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/operationsDiscoveryOperationsMappers.ts @@ -0,0 +1,15 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + CloudError, + Display, + OperationsDiscovery, + OperationsDiscoveryCollection +} from "../models/mappers"; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/parameters.ts b/sdk/resourcemover/arm-resourcemover/src/models/parameters.ts new file mode 100644 index 000000000000..0c7361ca1efb --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/parameters.ts @@ -0,0 +1,128 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * 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"; + +export const acceptLanguage: msRest.OperationParameter = { + parameterPath: "acceptLanguage", + mapper: { + serializedName: "accept-language", + defaultValue: 'en-US', + type: { + name: "String" + } + } +}; +export const apiVersion: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + serializedName: "api-version", + type: { + name: "String" + } + } +}; +export const dependencyLevel: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "dependencyLevel" + ], + mapper: { + serializedName: "dependencyLevel", + type: { + name: "String" + } + } +}; +export const filter: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "filter" + ], + mapper: { + serializedName: "$filter", + type: { + name: "String" + } + } +}; +export const moveCollectionName: msRest.OperationURLParameter = { + parameterPath: "moveCollectionName", + mapper: { + required: true, + serializedName: "moveCollectionName", + type: { + name: "String" + } + } +}; +export const moveResourceName: msRest.OperationURLParameter = { + parameterPath: "moveResourceName", + mapper: { + required: true, + serializedName: "moveResourceName", + type: { + name: "String" + } + } +}; +export const nextPageLink: msRest.OperationURLParameter = { + parameterPath: "nextPageLink", + mapper: { + required: true, + serializedName: "nextLink", + type: { + name: "String" + } + }, + skipEncoding: true +}; +export const orderby: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "orderby" + ], + mapper: { + serializedName: "$orderby", + type: { + name: "String" + } + } +}; +export const resourceGroupName: msRest.OperationURLParameter = { + parameterPath: "resourceGroupName", + mapper: { + required: true, + serializedName: "resourceGroupName", + type: { + name: "String" + } + } +}; +export const sourceId: msRest.OperationQueryParameter = { + parameterPath: "sourceId", + mapper: { + required: true, + serializedName: "sourceId", + type: { + name: "String" + } + } +}; +export const subscriptionId: msRest.OperationURLParameter = { + parameterPath: "subscriptionId", + mapper: { + required: true, + serializedName: "subscriptionId", + type: { + name: "String" + } + } +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/models/unresolvedDependenciesMappers.ts b/sdk/resourcemover/arm-resourcemover/src/models/unresolvedDependenciesMappers.ts new file mode 100644 index 000000000000..b97d918b0260 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/models/unresolvedDependenciesMappers.ts @@ -0,0 +1,16 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + CloudError, + Summary, + SummaryCollection, + UnresolvedDependency, + UnresolvedDependencyCollection +} from "../models/mappers"; diff --git a/sdk/resourcemover/arm-resourcemover/src/operations/index.ts b/sdk/resourcemover/arm-resourcemover/src/operations/index.ts new file mode 100644 index 000000000000..4577ae3ec10c --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/operations/index.ts @@ -0,0 +1,13 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export * from "./moveCollections"; +export * from "./moveResources"; +export * from "./unresolvedDependencies"; +export * from "./operationsDiscoveryOperations"; diff --git a/sdk/resourcemover/arm-resourcemover/src/operations/moveCollections.ts b/sdk/resourcemover/arm-resourcemover/src/operations/moveCollections.ts new file mode 100644 index 000000000000..936708ced176 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/operations/moveCollections.ts @@ -0,0 +1,945 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * 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/moveCollectionsMappers"; +import * as Parameters from "../models/parameters"; +import { ResourceMoverServiceAPIContext } from "../resourceMoverServiceAPIContext"; + +/** Class representing a MoveCollections. */ +export class MoveCollections { + private readonly client: ResourceMoverServiceAPIContext; + + /** + * Create a MoveCollections. + * @param {ResourceMoverServiceAPIContext} client Reference to the service client. + */ + constructor(client: ResourceMoverServiceAPIContext) { + this.client = client; + } + + /** + * Creates or updates a move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + create(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsCreateOptionalParams): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param callback The callback + */ + create(resourceGroupName: string, moveCollectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param options The optional parameters + * @param callback The callback + */ + create(resourceGroupName: string, moveCollectionName: string, options: Models.MoveCollectionsCreateOptionalParams, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsCreateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + options + }, + createOperationSpec, + callback) as Promise; + } + + /** + * Updates a move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsUpdateOptionalParams): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param callback The callback + */ + update(resourceGroupName: string, moveCollectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, moveCollectionName: string, options: Models.MoveCollectionsUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Deletes a move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, moveCollectionName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDeleteMethod(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Gets the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, moveCollectionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param callback The callback + */ + get(resourceGroupName: string, moveCollectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, moveCollectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, moveCollectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Initiates prepare for the set of resources included in the request body. The prepare operation + * is on the moveResources that are in the moveState 'PreparePending' or 'PrepareFailed', on a + * successful completion the moveResource moveState do a transition to MovePending. To aid the user + * to prerequisite the operation the client can call operation with validateOnly property set to + * true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + prepare(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsPrepareOptionalParams): Promise { + return this.beginPrepare(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Moves the set of resources included in the request body. The move operation is triggered after + * the moveResources are in the moveState 'MovePending' or 'MoveFailed', on a successful completion + * the moveResource moveState do a transition to CommitPending. To aid the user to prerequisite the + * operation the client can call operation with validateOnly property set to true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + initiateMove(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsInitiateMoveOptionalParams): Promise { + return this.beginInitiateMove(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Commits the set of resources included in the request body. The commit operation is triggered on + * the moveResources in the moveState 'CommitPending' or 'CommitFailed', on a successful completion + * the moveResource moveState do a transition to Committed. To aid the user to prerequisite the + * operation the client can call operation with validateOnly property set to true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + commit(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsCommitOptionalParams): Promise { + return this.beginCommit(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Discards the set of resources included in the request body. The discard operation is triggered + * on the moveResources in the moveState 'CommitPending' or 'DiscardFailed', on a successful + * completion the moveResource moveState do a transition to MovePending. To aid the user to + * prerequisite the operation the client can call operation with validateOnly property set to true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + discard(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsDiscardOptionalParams): Promise { + return this.beginDiscard(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Computes, resolves and validate the dependencies of the moveResources in the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + resolveDependencies(resourceGroupName: string, moveCollectionName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginResolveDependencies(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Removes the set of move resources included in the request body from move collection. The + * orchestration is done by service. To aid the user to prerequisite the operation the client can + * call operation with validateOnly property set to true. + * @param resourceGroupName + * @param moveCollectionName + * @param [options] The optional parameters + * @returns Promise + */ + bulkRemove(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsBulkRemoveOptionalParams): Promise { + return this.beginBulkRemove(resourceGroupName,moveCollectionName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Get all the Move Collections in the subscription. + * @summary Get all Move Collections. + * @param [options] The optional parameters + * @returns Promise + */ + listMoveCollectionsBySubscription(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + listMoveCollectionsBySubscription(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + listMoveCollectionsBySubscription(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listMoveCollectionsBySubscription(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listMoveCollectionsBySubscriptionOperationSpec, + callback) as Promise; + } + + /** + * Get all the Move Collections in the resource group. + * @summary Get all Move Collections. + * @param resourceGroupName The Resource Group Name. + * @param [options] The optional parameters + * @returns Promise + */ + listMoveCollectionsByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param callback The callback + */ + listMoveCollectionsByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param options The optional parameters + * @param callback The callback + */ + listMoveCollectionsByResourceGroup(resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listMoveCollectionsByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + options + }, + listMoveCollectionsByResourceGroupOperationSpec, + callback) as Promise; + } + + /** + * List of the move resources for which an arm resource is required for. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param sourceId The sourceId for which the api is invoked. + * @param [options] The optional parameters + * @returns Promise + */ + listRequiredFor(resourceGroupName: string, moveCollectionName: string, sourceId: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param sourceId The sourceId for which the api is invoked. + * @param callback The callback + */ + listRequiredFor(resourceGroupName: string, moveCollectionName: string, sourceId: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param sourceId The sourceId for which the api is invoked. + * @param options The optional parameters + * @param callback The callback + */ + listRequiredFor(resourceGroupName: string, moveCollectionName: string, sourceId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listRequiredFor(resourceGroupName: string, moveCollectionName: string, sourceId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + sourceId, + options + }, + listRequiredForOperationSpec, + callback) as Promise; + } + + /** + * Deletes a move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginDeleteMethod(resourceGroupName: string, moveCollectionName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginDeleteMethodOperationSpec, + options); + } + + /** + * Initiates prepare for the set of resources included in the request body. The prepare operation + * is on the moveResources that are in the moveState 'PreparePending' or 'PrepareFailed', on a + * successful completion the moveResource moveState do a transition to MovePending. To aid the user + * to prerequisite the operation the client can call operation with validateOnly property set to + * true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginPrepare(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsBeginPrepareOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginPrepareOperationSpec, + options); + } + + /** + * Moves the set of resources included in the request body. The move operation is triggered after + * the moveResources are in the moveState 'MovePending' or 'MoveFailed', on a successful completion + * the moveResource moveState do a transition to CommitPending. To aid the user to prerequisite the + * operation the client can call operation with validateOnly property set to true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginInitiateMove(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsBeginInitiateMoveOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginInitiateMoveOperationSpec, + options); + } + + /** + * Commits the set of resources included in the request body. The commit operation is triggered on + * the moveResources in the moveState 'CommitPending' or 'CommitFailed', on a successful completion + * the moveResource moveState do a transition to Committed. To aid the user to prerequisite the + * operation the client can call operation with validateOnly property set to true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginCommit(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsBeginCommitOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginCommitOperationSpec, + options); + } + + /** + * Discards the set of resources included in the request body. The discard operation is triggered + * on the moveResources in the moveState 'CommitPending' or 'DiscardFailed', on a successful + * completion the moveResource moveState do a transition to MovePending. To aid the user to + * prerequisite the operation the client can call operation with validateOnly property set to true. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginDiscard(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsBeginDiscardOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginDiscardOperationSpec, + options); + } + + /** + * Computes, resolves and validate the dependencies of the moveResources in the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginResolveDependencies(resourceGroupName: string, moveCollectionName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginResolveDependenciesOperationSpec, + options); + } + + /** + * Removes the set of move resources included in the request body from move collection. The + * orchestration is done by service. To aid the user to prerequisite the operation the client can + * call operation with validateOnly property set to true. + * @param resourceGroupName + * @param moveCollectionName + * @param [options] The optional parameters + * @returns Promise + */ + beginBulkRemove(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveCollectionsBeginBulkRemoveOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + options + }, + beginBulkRemoveOperationSpec, + options); + } + + /** + * Get all the Move Collections in the subscription. + * @summary Get all Move Collections. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listMoveCollectionsBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listMoveCollectionsBySubscriptionNext(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 + */ + listMoveCollectionsBySubscriptionNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listMoveCollectionsBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listMoveCollectionsBySubscriptionNextOperationSpec, + callback) as Promise; + } + + /** + * Get all the Move Collections in the resource group. + * @summary Get all Move Collections. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listMoveCollectionsByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listMoveCollectionsByResourceGroupNext(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 + */ + listMoveCollectionsByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listMoveCollectionsByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listMoveCollectionsByResourceGroupNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const createOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.MoveCollection + }, + responses: { + 200: { + bodyMapper: Mappers.MoveCollection + }, + 201: { + bodyMapper: Mappers.MoveCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.UpdateMoveCollectionRequest + }, + responses: { + 200: { + bodyMapper: Mappers.MoveCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listMoveCollectionsBySubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Migrate/moveCollections", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveCollectionResultList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listMoveCollectionsByResourceGroupOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveCollectionResultList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listRequiredForOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/requiredFor", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.sourceId, + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RequiredForResourcesCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginDeleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginPrepareOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/prepare", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.PrepareRequest + }, + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginInitiateMoveOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/initiateMove", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.ResourceMoveRequest + }, + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginCommitOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/commit", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.CommitRequest + }, + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginDiscardOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/discard", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.DiscardRequest + }, + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginResolveDependenciesOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/resolveDependencies", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginBulkRemoveOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/bulkRemove", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: [ + "options", + "body" + ], + mapper: Mappers.BulkRemoveRequest + }, + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listMoveCollectionsBySubscriptionNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveCollectionResultList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listMoveCollectionsByResourceGroupNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveCollectionResultList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/operations/moveResources.ts b/sdk/resourcemover/arm-resourcemover/src/operations/moveResources.ts new file mode 100644 index 000000000000..27eb9af03151 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/operations/moveResources.ts @@ -0,0 +1,333 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * 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/moveResourcesMappers"; +import * as Parameters from "../models/parameters"; +import { ResourceMoverServiceAPIContext } from "../resourceMoverServiceAPIContext"; + +/** Class representing a MoveResources. */ +export class MoveResources { + private readonly client: ResourceMoverServiceAPIContext; + + /** + * Create a MoveResources. + * @param {ResourceMoverServiceAPIContext} client Reference to the service client. + */ + constructor(client: ResourceMoverServiceAPIContext) { + this.client = client; + } + + /** + * Lists the Move Resources in the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveResourcesListOptionalParams): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param callback The callback + */ + list(resourceGroupName: string, moveCollectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, moveCollectionName: string, options: Models.MoveResourcesListOptionalParams, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, moveCollectionName: string, options?: Models.MoveResourcesListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Creates or updates a Move Resource in the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param [options] The optional parameters + * @returns Promise + */ + create(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options?: Models.MoveResourcesCreateOptionalParams): Promise { + return this.beginCreate(resourceGroupName,moveCollectionName,moveResourceName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Deletes a Move Resource from the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDeleteMethod(resourceGroupName,moveCollectionName,moveResourceName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Gets the Move Resource. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param callback The callback + */ + get(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + moveResourceName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Creates or updates a Move Resource in the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginCreate(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options?: Models.MoveResourcesBeginCreateOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + moveResourceName, + options + }, + beginCreateOperationSpec, + options); + } + + /** + * Deletes a Move Resource from the move collection. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param moveResourceName The Move Resource Name. + * @param [options] The optional parameters + * @returns Promise + */ + beginDeleteMethod(resourceGroupName: string, moveCollectionName: string, moveResourceName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + moveCollectionName, + moveResourceName, + options + }, + beginDeleteMethodOperationSpec, + options); + } + + /** + * Lists the Move Resources in the move collection. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: Models.MoveResourcesListNextOptionalParams): 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: Models.MoveResourcesListNextOptionalParams, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: Models.MoveResourcesListNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/moveResources", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveResourceCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/moveResources/{moveResourceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName, + Parameters.moveResourceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginCreateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/moveResources/{moveResourceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName, + Parameters.moveResourceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + properties: [ + "options", + "properties" + ] + }, + mapper: Mappers.MoveResource + }, + responses: { + 200: { + bodyMapper: Mappers.MoveResource + }, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginDeleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/moveResources/{moveResourceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName, + Parameters.moveResourceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.OperationStatus + }, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MoveResourceCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/operations/operationsDiscoveryOperations.ts b/sdk/resourcemover/arm-resourcemover/src/operations/operationsDiscoveryOperations.ts new file mode 100644 index 000000000000..716c13a90b39 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/operations/operationsDiscoveryOperations.ts @@ -0,0 +1,72 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * 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 Models from "../models"; +import * as Mappers from "../models/operationsDiscoveryOperationsMappers"; +import * as Parameters from "../models/parameters"; +import { ResourceMoverServiceAPIContext } from "../resourceMoverServiceAPIContext"; + +/** Class representing a OperationsDiscoveryOperations. */ +export class OperationsDiscoveryOperations { + private readonly client: ResourceMoverServiceAPIContext; + + /** + * Create a OperationsDiscoveryOperations. + * @param {ResourceMoverServiceAPIContext} client Reference to the service client. + */ + constructor(client: ResourceMoverServiceAPIContext) { + this.client = client; + } + + /** + * @param [options] The optional parameters + * @returns Promise + */ + get(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + get(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + get(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + getOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Migrate/operations", + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.OperationsDiscoveryCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/operations/unresolvedDependencies.ts b/sdk/resourcemover/arm-resourcemover/src/operations/unresolvedDependencies.ts new file mode 100644 index 000000000000..6742ef5e16b7 --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/operations/unresolvedDependencies.ts @@ -0,0 +1,144 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * 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 Models from "../models"; +import * as Mappers from "../models/unresolvedDependenciesMappers"; +import * as Parameters from "../models/parameters"; +import { ResourceMoverServiceAPIContext } from "../resourceMoverServiceAPIContext"; + +/** Class representing a UnresolvedDependencies. */ +export class UnresolvedDependencies { + private readonly client: ResourceMoverServiceAPIContext; + + /** + * Create a UnresolvedDependencies. + * @param {ResourceMoverServiceAPIContext} client Reference to the service client. + */ + constructor(client: ResourceMoverServiceAPIContext) { + this.client = client; + } + + /** + * Gets a list of unresolved dependencies. + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, moveCollectionName: string, options?: Models.UnresolvedDependenciesGetOptionalParams): Promise; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param callback The callback + */ + get(resourceGroupName: string, moveCollectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The Resource Group Name. + * @param moveCollectionName The Move Collection Name. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, moveCollectionName: string, options: Models.UnresolvedDependenciesGetOptionalParams, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, moveCollectionName: string, options?: Models.UnresolvedDependenciesGetOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + moveCollectionName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Gets a list of unresolved dependencies. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + getNext(nextPageLink: string, options?: Models.UnresolvedDependenciesGetNextOptionalParams): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + getNext(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 + */ + getNext(nextPageLink: string, options: Models.UnresolvedDependenciesGetNextOptionalParams, callback: msRest.ServiceCallback): void; + getNext(nextPageLink: string, options?: Models.UnresolvedDependenciesGetNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + getNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/moveCollections/{moveCollectionName}/unresolvedDependencies", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.moveCollectionName + ], + queryParameters: [ + Parameters.dependencyLevel, + Parameters.orderby, + Parameters.apiVersion, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.UnresolvedDependencyCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + queryParameters: [ + Parameters.dependencyLevel, + Parameters.orderby, + Parameters.apiVersion, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.UnresolvedDependencyCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPI.ts b/sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPI.ts new file mode 100644 index 000000000000..4733943ad50f --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPI.ts @@ -0,0 +1,47 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * 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 Models from "./models"; +import * as Mappers from "./models/mappers"; +import * as operations from "./operations"; +import { ResourceMoverServiceAPIContext } from "./resourceMoverServiceAPIContext"; + + +class ResourceMoverServiceAPI extends ResourceMoverServiceAPIContext { + // Operation groups + moveCollections: operations.MoveCollections; + moveResources: operations.MoveResources; + unresolvedDependencies: operations.UnresolvedDependencies; + operationsDiscovery: operations.OperationsDiscoveryOperations; + + /** + * Initializes a new instance of the ResourceMoverServiceAPI class. + * @param credentials Credentials needed for the client to connect to Azure. + * @param subscriptionId The Subscription ID. + * @param [options] The parameter options + */ + constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ResourceMoverServiceAPIOptions) { + super(credentials, subscriptionId, options); + this.moveCollections = new operations.MoveCollections(this); + this.moveResources = new operations.MoveResources(this); + this.unresolvedDependencies = new operations.UnresolvedDependencies(this); + this.operationsDiscovery = new operations.OperationsDiscoveryOperations(this); + } +} + +// Operation Specifications + +export { + ResourceMoverServiceAPI, + ResourceMoverServiceAPIContext, + Models as ResourceMoverServiceAPIModels, + Mappers as ResourceMoverServiceAPIMappers +}; +export * from "./operations"; diff --git a/sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPIContext.ts b/sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPIContext.ts new file mode 100644 index 000000000000..0f3fa335a81e --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/src/resourceMoverServiceAPIContext.ts @@ -0,0 +1,61 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as Models from "./models"; +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; + +const packageName = "resourcemover"; +const packageVersion = "1.0.0"; + +export class ResourceMoverServiceAPIContext extends msRestAzure.AzureServiceClient { + credentials: msRest.ServiceClientCredentials; + subscriptionId: string; + apiVersion?: string; + + /** + * Initializes a new instance of the ResourceMoverServiceAPI class. + * @param credentials Credentials needed for the client to connect to Azure. + * @param subscriptionId The Subscription ID. + * @param [options] The parameter options + */ + constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ResourceMoverServiceAPIOptions) { + if (credentials == undefined) { + throw new Error('\'credentials\' cannot be null.'); + } + if (subscriptionId == undefined) { + throw new Error('\'subscriptionId\' cannot be null.'); + } + + if (!options) { + options = {}; + } + if(!options.userAgent) { + const defaultUserAgent = msRestAzure.getDefaultUserAgentValue(); + options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`; + } + + super(credentials, options); + + this.apiVersion = '2021-01-01'; + this.acceptLanguage = 'en-US'; + this.longRunningOperationRetryTimeout = 30; + this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com"; + this.requestContentType = "application/json; charset=utf-8"; + this.credentials = credentials; + this.subscriptionId = subscriptionId; + + if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) { + this.acceptLanguage = options.acceptLanguage; + } + if(options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) { + this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout; + } + } +} diff --git a/sdk/resourcemover/arm-resourcemover/tsconfig.json b/sdk/resourcemover/arm-resourcemover/tsconfig.json new file mode 100644 index 000000000000..422b584abd5e --- /dev/null +++ b/sdk/resourcemover/arm-resourcemover/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "module": "es6", + "moduleResolution": "node", + "strict": true, + "target": "es5", + "sourceMap": true, + "declarationMap": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "lib": ["es6", "dom"], + "declaration": true, + "outDir": "./esm", + "importHelpers": true + }, + "include": ["./src/**/*.ts"], + "exclude": ["node_modules"] +}