From 681532258ed096bab22df636e440a217b063908b Mon Sep 17 00:00:00 2001 From: Azure SDK for Python bot Date: Fri, 1 Mar 2019 10:05:03 -0800 Subject: [PATCH] Generated from 92287b8ca22c0eb5dcd989b628666c298dc98e4e (#1392) add netapp to Go SDK --- packages/@azure/arm-netapp/LICENSE.txt | 21 + packages/@azure/arm-netapp/README.md | 96 ++ .../lib/azureNetAppFilesManagementClient.ts | 53 + ...azureNetAppFilesManagementClientContext.ts | 63 + .../arm-netapp/lib/models/accountsMappers.ts | 24 + .../@azure/arm-netapp/lib/models/index.ts | 1137 +++++++++++++++++ .../@azure/arm-netapp/lib/models/mappers.ts | 878 +++++++++++++ .../lib/models/mountTargetsMappers.ts | 16 + .../lib/models/operationsMappers.ts | 20 + .../arm-netapp/lib/models/parameters.ts | 93 ++ .../arm-netapp/lib/models/poolsMappers.ts | 24 + .../arm-netapp/lib/models/snapshotsMappers.ts | 24 + .../arm-netapp/lib/models/volumesMappers.ts | 24 + .../arm-netapp/lib/operations/accounts.ts | 335 +++++ .../@azure/arm-netapp/lib/operations/index.ts | 16 + .../arm-netapp/lib/operations/mountTargets.ts | 97 ++ .../arm-netapp/lib/operations/operations.ts | 74 ++ .../@azure/arm-netapp/lib/operations/pools.ts | 355 +++++ .../arm-netapp/lib/operations/snapshots.ts | 398 ++++++ .../arm-netapp/lib/operations/volumes.ts | 377 ++++++ packages/@azure/arm-netapp/package.json | 56 + packages/@azure/arm-netapp/rollup.config.js | 37 + packages/@azure/arm-netapp/tsconfig.json | 19 + 23 files changed, 4237 insertions(+) create mode 100644 packages/@azure/arm-netapp/LICENSE.txt create mode 100644 packages/@azure/arm-netapp/README.md create mode 100644 packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts create mode 100644 packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts create mode 100644 packages/@azure/arm-netapp/lib/models/accountsMappers.ts create mode 100644 packages/@azure/arm-netapp/lib/models/index.ts create mode 100644 packages/@azure/arm-netapp/lib/models/mappers.ts create mode 100644 packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts create mode 100644 packages/@azure/arm-netapp/lib/models/operationsMappers.ts create mode 100644 packages/@azure/arm-netapp/lib/models/parameters.ts create mode 100644 packages/@azure/arm-netapp/lib/models/poolsMappers.ts create mode 100644 packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts create mode 100644 packages/@azure/arm-netapp/lib/models/volumesMappers.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/accounts.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/index.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/mountTargets.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/operations.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/pools.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/snapshots.ts create mode 100644 packages/@azure/arm-netapp/lib/operations/volumes.ts create mode 100644 packages/@azure/arm-netapp/package.json create mode 100644 packages/@azure/arm-netapp/rollup.config.js create mode 100644 packages/@azure/arm-netapp/tsconfig.json diff --git a/packages/@azure/arm-netapp/LICENSE.txt b/packages/@azure/arm-netapp/LICENSE.txt new file mode 100644 index 000000000000..8f3d856145c5 --- /dev/null +++ b/packages/@azure/arm-netapp/LICENSE.txt @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2019 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/packages/@azure/arm-netapp/README.md b/packages/@azure/arm-netapp/README.md new file mode 100644 index 000000000000..32f868df0585 --- /dev/null +++ b/packages/@azure/arm-netapp/README.md @@ -0,0 +1,96 @@ +## Azure AzureNetAppFilesManagementClient SDK for JavaScript + +This package contains an isomorphic SDK for AzureNetAppFilesManagementClient. + +### Currently supported environments + +- Node.js version 6.x.x or higher +- Browser JavaScript + +### How to Install + +```bash +npm install @azure/arm-netapp +``` + +### How to use + +#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. + +##### Install @azure/ms-rest-nodeauth + +```bash +npm install @azure/ms-rest-nodeauth +``` + +##### Sample code + +```typescript +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; +import { AzureNetAppFilesManagementClient, AzureNetAppFilesManagementModels, AzureNetAppFilesManagementMappers } from "@azure/arm-netapp"; +const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; + +msRestNodeAuth.interactiveLogin().then((creds) => { + const client = new AzureNetAppFilesManagementClient(creds, subscriptionId); + client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); + }); +}).catch((err) => { + console.error(err); +}); +``` + +#### browser - Authentication, client creation and list operations 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 + + + + @azure/arm-netapp sample + + + + + + + + +``` + +## Related projects + +- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) diff --git a/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts new file mode 100644 index 000000000000..bbaa7656e4f0 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts @@ -0,0 +1,53 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "./models"; +import * as Mappers from "./models/mappers"; +import * as operations from "./operations"; +import { AzureNetAppFilesManagementClientContext } from "./azureNetAppFilesManagementClientContext"; + + +class AzureNetAppFilesManagementClient extends AzureNetAppFilesManagementClientContext { + // Operation groups + operations: operations.Operations; + accounts: operations.Accounts; + pools: operations.Pools; + volumes: operations.Volumes; + mountTargets: operations.MountTargets; + snapshots: operations.Snapshots; + + /** + * Initializes a new instance of the AzureNetAppFilesManagementClient class. + * @param credentials Credentials needed for the client to connect to Azure. + * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure + * subscription. The subscription ID forms part of the URI for every service call. + * @param [options] The parameter options + */ + constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureNetAppFilesManagementClientOptions) { + super(credentials, subscriptionId, options); + this.operations = new operations.Operations(this); + this.accounts = new operations.Accounts(this); + this.pools = new operations.Pools(this); + this.volumes = new operations.Volumes(this); + this.mountTargets = new operations.MountTargets(this); + this.snapshots = new operations.Snapshots(this); + } +} + +// Operation Specifications + +export { + AzureNetAppFilesManagementClient, + AzureNetAppFilesManagementClientContext, + Models as AzureNetAppFilesManagementModels, + Mappers as AzureNetAppFilesManagementMappers +}; +export * from "./operations"; diff --git a/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts new file mode 100644 index 000000000000..a79bbacc719d --- /dev/null +++ b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts @@ -0,0 +1,63 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as Models from "./models"; +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; + +const packageName = "@azure/arm-netapp"; +const packageVersion = "1.0.0"; + +export class AzureNetAppFilesManagementClientContext extends msRestAzure.AzureServiceClient { + credentials: msRest.ServiceClientCredentials; + subscriptionId: string; + apiVersion?: string; + + /** + * Initializes a new instance of the AzureNetAppFilesManagementClient class. + * @param credentials Credentials needed for the client to connect to Azure. + * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure + * subscription. The subscription ID forms part of the URI for every service call. + * @param [options] The parameter options + */ + constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureNetAppFilesManagementClientOptions) { + 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 = '2017-08-15'; + 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/packages/@azure/arm-netapp/lib/models/accountsMappers.ts b/packages/@azure/arm-netapp/lib/models/accountsMappers.ts new file mode 100644 index 000000000000..eb5dd35ad066 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/accountsMappers.ts @@ -0,0 +1,24 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + NetAppAccountList, + NetAppAccount, + BaseResource, + ErrorModel, + NetAppAccountPatch, + CapacityPool, + CapacityPoolPatch, + Volume, + VolumePatch, + Snapshot, + SnapshotPatch +} from "../models/mappers"; + diff --git a/packages/@azure/arm-netapp/lib/models/index.ts b/packages/@azure/arm-netapp/lib/models/index.ts new file mode 100644 index 000000000000..8082c8c39767 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/index.ts @@ -0,0 +1,1137 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; +import * as msRest from "@azure/ms-rest-js"; + +export { BaseResource, CloudError }; + + +/** + * @interface + * An interface representing OperationDisplay. + * Display metadata associated with the operation. + * + */ +export interface OperationDisplay { + /** + * @member {string} [provider] Service provider: Microsoft NetApp. + */ + provider?: string; + /** + * @member {string} [resource] Resource on which the operation is performed + * etc. + */ + resource?: string; + /** + * @member {string} [operation] Type of operation: get, read, delete, etc. + */ + operation?: string; + /** + * @member {string} [description] Operation description. + */ + description?: string; +} + +/** + * @interface + * An interface representing Dimension. + * Dimension of blobs, possibly be blob type or access tier. + * + */ +export interface Dimension { + /** + * @member {string} [name] Display name of dimension. + */ + name?: string; + /** + * @member {string} [displayName] Display name of dimension. + */ + displayName?: string; +} + +/** + * @interface + * An interface representing MetricSpecification. + * Metric specification of operation. + * + */ +export interface MetricSpecification { + /** + * @member {string} [name] Name of metric specification. + */ + name?: string; + /** + * @member {string} [displayName] Display name of metric specification. + */ + displayName?: string; + /** + * @member {string} [displayDescription] Display description of metric + * specification. + */ + displayDescription?: string; + /** + * @member {string} [unit] Unit could be Bytes or Count. + */ + unit?: string; + /** + * @member {Dimension[]} [dimensions] Dimensions of blobs, including blob + * type and access tier. + */ + dimensions?: Dimension[]; + /** + * @member {string} [aggregationType] Aggregation type could be Average. + */ + aggregationType?: string; + /** + * @member {boolean} [fillGapWithZero] The property to decide fill gap with + * zero or not. + */ + fillGapWithZero?: boolean; + /** + * @member {string} [category] The category this metric specification belong + * to, could be Capacity. + */ + category?: string; + /** + * @member {string} [resourceIdDimensionNameOverride] Account Resource Id. + */ + resourceIdDimensionNameOverride?: string; +} + +/** + * @interface + * An interface representing ServiceSpecification. + * One property of operation, include metric specifications. + * + */ +export interface ServiceSpecification { + /** + * @member {MetricSpecification[]} [metricSpecifications] Metric + * specifications of operation. + */ + metricSpecifications?: MetricSpecification[]; +} + +/** + * @interface + * An interface representing Operation. + * Microsoft.NetApp REST API operation definition. + * + */ +export interface Operation { + /** + * @member {string} [name] Operation name: {provider}/{resource}/{operation} + */ + name?: string; + /** + * @member {OperationDisplay} [display] Display metadata associated with the + * operation. + */ + display?: OperationDisplay; + /** + * @member {string} [origin] The origin of operations. + */ + origin?: string; + /** + * @member {ServiceSpecification} [serviceSpecification] One property of + * operation, include metric specifications. + */ + serviceSpecification?: ServiceSpecification; +} + +/** + * @interface + * An interface representing NetAppAccount. + * NetApp account resource + * + * @extends BaseResource + */ +export interface NetAppAccount extends BaseResource { + /** + * @member {string} location Resource location + */ + location: string; + /** + * @member {string} [id] Resource Id + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly id?: string; + /** + * @member {string} [name] Resource name + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly name?: string; + /** + * @member {string} [type] Resource type + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly type?: string; + /** + * @member {any} [tags] Resource tags + */ + tags?: any; + /** + * @member {string} [provisioningState] Azure lifecycle management + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly provisioningState?: string; +} + +/** + * @interface + * An interface representing NetAppAccountPatch. + * NetApp account patch resource + * + * @extends BaseResource + */ +export interface NetAppAccountPatch extends BaseResource { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing CapacityPool. + * Capacity pool resource + * + * @extends BaseResource + */ +export interface CapacityPool extends BaseResource { + /** + * @member {string} location Resource location + */ + location: string; + /** + * @member {string} [id] Resource Id + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly id?: string; + /** + * @member {string} [name] Resource name + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly name?: string; + /** + * @member {string} [type] Resource type + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly type?: string; + /** + * @member {any} [tags] Resource tags + */ + tags?: any; + /** + * @member {string} [poolId] poolId. UUID v4 used to identify the Pool + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly poolId?: string; + /** + * @member {number} [size] size. Provisioned size of the pool (in bytes). + * Allowed values are in 4TiB chunks (value must be multiply of + * 4398046511104). Default value: 4398046511104 . + */ + size?: number; + /** + * @member {ServiceLevel} [serviceLevel] serviceLevel. The service level of + * the file system. Possible values include: 'Standard', 'Premium', + * 'Extreme'. Default value: 'Premium' . + */ + serviceLevel?: ServiceLevel; + /** + * @member {string} [provisioningState] Azure lifecycle management + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly provisioningState?: string; +} + +/** + * @interface + * An interface representing CapacityPoolPatch. + * Capacity pool patch resource + * + * @extends BaseResource + */ +export interface CapacityPoolPatch extends BaseResource { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing Volume. + * Volume resource + * + * @extends BaseResource + */ +export interface Volume extends BaseResource { + /** + * @member {string} location Resource location + */ + location: string; + /** + * @member {string} [id] Resource Id + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly id?: string; + /** + * @member {string} [name] Resource name + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly name?: string; + /** + * @member {string} [type] Resource type + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly type?: string; + /** + * @member {any} [tags] Resource tags + */ + tags?: any; + /** + * @member {string} [fileSystemId] FileSystem ID. Unique FileSystem + * Identifier. + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly fileSystemId?: string; + /** + * @member {string} creationToken Creation Token or File Path. A unique file + * path for the volume. Used when creating mount targets + */ + creationToken: string; + /** + * @member {ServiceLevel} serviceLevel serviceLevel. The service level of the + * file system. Possible values include: 'Standard', 'Premium', 'Extreme'. + * Default value: 'Premium' . + */ + serviceLevel: ServiceLevel; + /** + * @member {number} [usageThreshold] usageThreshold. Maximum storage quota + * allowed for a file system in bytes. This is a soft quota used for alerting + * only. Minimum size is 100 GiB. Upper limit is 100TiB. Default value: + * 107374182400 . + */ + usageThreshold?: number; + /** + * @member {string} [provisioningState] Azure lifecycle management + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly provisioningState?: string; + /** + * @member {string} [subnetId] The Azure Resource URI for a delegated subnet. + * Must have the delegation Microsoft.NetApp/volumes + */ + subnetId?: string; +} + +/** + * @interface + * An interface representing VolumePatch. + * Volume patch resource + * + * @extends BaseResource + */ +export interface VolumePatch extends BaseResource { + /** + * @member {string} [location] Resource location + */ + location?: string; + /** + * @member {string} [id] Resource Id + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly id?: string; + /** + * @member {string} [name] Resource name + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly name?: string; + /** + * @member {string} [type] Resource type + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly type?: string; + /** + * @member {any} [tags] Resource tags + */ + tags?: any; + /** + * @member {ServiceLevel} [serviceLevel] serviceLevel. The service level of + * the file system. Possible values include: 'Standard', 'Premium', + * 'Extreme'. Default value: 'Premium' . + */ + serviceLevel?: ServiceLevel; + /** + * @member {number} [usageThreshold] usageThreshold. Maximum storage quota + * allowed for a file system in bytes. This is a soft quota used for alerting + * only. Minimum size is 100 GiB. Upper limit is 100TiB. Default value: + * 107374182400 . + */ + usageThreshold?: number; +} + +/** + * @interface + * An interface representing MountTarget. + * Mount Target + * + */ +export interface MountTarget { + /** + * @member {string} location Resource location + */ + location: string; + /** + * @member {string} [id] Resource Id + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly id?: string; + /** + * @member {string} [name] Resource name + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly name?: string; + /** + * @member {any} [tags] Resource tags + */ + tags?: any; + /** + * @member {string} [mountTargetId] mountTargetId. UUID v4 used to identify + * the MountTarget + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly mountTargetId?: string; + /** + * @member {string} fileSystemId fileSystemId. UUID v4 used to identify the + * MountTarget + */ + fileSystemId: string; + /** + * @member {string} [ipAddress] ipAddress. The mount target's IPv4 address + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly ipAddress?: string; + /** + * @member {number} [vlanId] vlanid. Vlan Id + */ + vlanId?: number; + /** + * @member {string} [startIp] startIp. The start of IPv4 address range to use + * when creating a new mount target + */ + startIp?: string; + /** + * @member {string} [endIp] startIp. The end of IPv4 address range to use + * when creating a new mount target + */ + endIp?: string; + /** + * @member {string} [gateway] gateway. The gateway of the IPv4 address range + * to use when creating a new mount target + */ + gateway?: string; + /** + * @member {string} [netmask] netmask. The netmask of the IPv4 address range + * to use when creating a new mount target + */ + netmask?: string; + /** + * @member {string} [provisioningState] Azure lifecycle management + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly provisioningState?: string; +} + +/** + * @interface + * An interface representing Snapshot. + * Snapshot of a Volume + * + * @extends BaseResource + */ +export interface Snapshot extends BaseResource { + /** + * @member {string} location Resource location + */ + location: string; + /** + * @member {string} [id] Resource Id + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly id?: string; + /** + * @member {string} [name] Resource name + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly name?: string; + /** + * @member {string} [type] Resource type + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly type?: string; + /** + * @member {any} [tags] Resource tags + */ + tags?: any; + /** + * @member {string} [snapshotId] snapshotId. UUID v4 used to identify the + * Snapshot + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly snapshotId?: string; + /** + * @member {string} fileSystemId fileSystemId. UUID v4 used to identify the + * FileSystem + */ + fileSystemId: string; + /** + * @member {Date} [creationDate] name. The creation date of the snapshot + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly creationDate?: Date; + /** + * @member {string} [provisioningState] Azure lifecycle management + * **NOTE: This property will not be serialized. It can only be populated by + * the server.** + */ + readonly provisioningState?: string; +} + +/** + * @interface + * An interface representing SnapshotPatch. + * Snapshot patch + * + * @extends BaseResource + */ +export interface SnapshotPatch extends BaseResource { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing ErrorModel. + * Error response describing why the operation failed. + * + */ +export interface ErrorModel { + /** + * @member {string} code Error code + */ + code: string; + /** + * @member {string} message Detailed error message + */ + message: string; +} + +/** + * @interface + * An interface representing AccountsCreateOrUpdateOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase + */ +export interface AccountsCreateOrUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing AccountsUpdateOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase + */ +export interface AccountsUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing AccountsBeginCreateOrUpdateOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase + */ +export interface AccountsBeginCreateOrUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing PoolsUpdateOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase + */ +export interface PoolsUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing SnapshotsUpdateOptionalParams. + * Optional Parameters. + * + * @extends RequestOptionsBase + */ +export interface SnapshotsUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * @member {any} [tags] Resource tags + */ + tags?: any; +} + +/** + * @interface + * An interface representing AzureNetAppFilesManagementClientOptions. + * @extends AzureServiceClientOptions + */ +export interface AzureNetAppFilesManagementClientOptions extends AzureServiceClientOptions { + /** + * @member {string} [baseUri] + */ + baseUri?: string; +} + + +/** + * @interface + * An interface representing the OperationListResult. + * Result of the request to list Cloud Volume operations. It contains a list of + * operations and a URL link to get the next set of results. + * + * @extends Array + */ +export interface OperationListResult extends Array { +} + +/** + * @interface + * An interface representing the NetAppAccountList. + * List of NetApp account resources + * + * @extends Array + */ +export interface NetAppAccountList extends Array { +} + +/** + * @interface + * An interface representing the CapacityPoolList. + * List of capacity pool resources + * + * @extends Array + */ +export interface CapacityPoolList extends Array { +} + +/** + * @interface + * An interface representing the VolumeList. + * List of volume resources + * + * @extends Array + */ +export interface VolumeList extends Array { +} + +/** + * @interface + * An interface representing the MountTargetList. + * List of Mount Targets + * + * @extends Array + */ +export interface MountTargetList extends Array { +} + +/** + * @interface + * An interface representing the SnapshotsList. + * List of Snapshots + * + * @extends Array + */ +export interface SnapshotsList extends Array { +} + +/** + * Defines values for ServiceLevel. + * Possible values include: 'Standard', 'Premium', 'Extreme' + * @readonly + * @enum {string} + */ +export type ServiceLevel = 'Standard' | 'Premium' | 'Extreme'; + +/** + * Contains response data for the list operation. + */ +export type OperationsListResponse = OperationListResult & { + /** + * 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: OperationListResult; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type AccountsListResponse = NetAppAccountList & { + /** + * 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: NetAppAccountList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type AccountsGetResponse = NetAppAccount & { + /** + * 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: NetAppAccount; + }; +}; + +/** + * Contains response data for the createOrUpdate operation. + */ +export type AccountsCreateOrUpdateResponse = NetAppAccount & { + /** + * 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: NetAppAccount; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type AccountsUpdateResponse = NetAppAccount & { + /** + * 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: NetAppAccount; + }; +}; + +/** + * Contains response data for the beginCreateOrUpdate operation. + */ +export type AccountsBeginCreateOrUpdateResponse = NetAppAccount & { + /** + * 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: NetAppAccount; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type PoolsListResponse = CapacityPoolList & { + /** + * 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: CapacityPoolList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type PoolsGetResponse = CapacityPool & { + /** + * 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: CapacityPool; + }; +}; + +/** + * Contains response data for the createOrUpdate operation. + */ +export type PoolsCreateOrUpdateResponse = CapacityPool & { + /** + * 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: CapacityPool; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type PoolsUpdateResponse = CapacityPool & { + /** + * 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: CapacityPool; + }; +}; + +/** + * Contains response data for the beginCreateOrUpdate operation. + */ +export type PoolsBeginCreateOrUpdateResponse = CapacityPool & { + /** + * 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: CapacityPool; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type VolumesListResponse = VolumeList & { + /** + * 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: VolumeList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type VolumesGetResponse = Volume & { + /** + * 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: Volume; + }; +}; + +/** + * Contains response data for the createOrUpdate operation. + */ +export type VolumesCreateOrUpdateResponse = Volume & { + /** + * 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: Volume; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type VolumesUpdateResponse = Volume & { + /** + * 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: Volume; + }; +}; + +/** + * Contains response data for the beginCreateOrUpdate operation. + */ +export type VolumesBeginCreateOrUpdateResponse = Volume & { + /** + * 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: Volume; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type MountTargetsListResponse = MountTargetList & { + /** + * 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: MountTargetList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type SnapshotsListResponse = SnapshotsList & { + /** + * 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: SnapshotsList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type SnapshotsGetResponse = Snapshot & { + /** + * 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: Snapshot; + }; +}; + +/** + * Contains response data for the create operation. + */ +export type SnapshotsCreateResponse = Snapshot & { + /** + * 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: Snapshot; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type SnapshotsUpdateResponse = Snapshot & { + /** + * 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: Snapshot; + }; +}; + +/** + * Contains response data for the beginCreate operation. + */ +export type SnapshotsBeginCreateResponse = Snapshot & { + /** + * 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: Snapshot; + }; +}; diff --git a/packages/@azure/arm-netapp/lib/models/mappers.ts b/packages/@azure/arm-netapp/lib/models/mappers.ts new file mode 100644 index 000000000000..0597cd7c690b --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/mappers.ts @@ -0,0 +1,878 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import { 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 OperationDisplay: msRest.CompositeMapper = { + serializedName: "Operation_display", + type: { + name: "Composite", + className: "OperationDisplay", + 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 Dimension: msRest.CompositeMapper = { + serializedName: "Dimension", + type: { + name: "Composite", + className: "Dimension", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + displayName: { + serializedName: "displayName", + type: { + name: "String" + } + } + } + } +}; + +export const MetricSpecification: msRest.CompositeMapper = { + serializedName: "MetricSpecification", + type: { + name: "Composite", + className: "MetricSpecification", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + displayName: { + serializedName: "displayName", + type: { + name: "String" + } + }, + displayDescription: { + serializedName: "displayDescription", + type: { + name: "String" + } + }, + unit: { + serializedName: "unit", + type: { + name: "String" + } + }, + dimensions: { + serializedName: "dimensions", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Dimension" + } + } + } + }, + aggregationType: { + serializedName: "aggregationType", + type: { + name: "String" + } + }, + fillGapWithZero: { + serializedName: "fillGapWithZero", + type: { + name: "Boolean" + } + }, + category: { + serializedName: "category", + type: { + name: "String" + } + }, + resourceIdDimensionNameOverride: { + serializedName: "resourceIdDimensionNameOverride", + type: { + name: "String" + } + } + } + } +}; + +export const ServiceSpecification: msRest.CompositeMapper = { + serializedName: "ServiceSpecification", + type: { + name: "Composite", + className: "ServiceSpecification", + modelProperties: { + metricSpecifications: { + serializedName: "metricSpecifications", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MetricSpecification" + } + } + } + } + } + } +}; + +export const Operation: msRest.CompositeMapper = { + serializedName: "Operation", + type: { + name: "Composite", + className: "Operation", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + display: { + serializedName: "display", + type: { + name: "Composite", + className: "OperationDisplay" + } + }, + origin: { + serializedName: "origin", + type: { + name: "String" + } + }, + serviceSpecification: { + serializedName: "properties.serviceSpecification", + type: { + name: "Composite", + className: "ServiceSpecification" + } + } + } + } +}; + +export const NetAppAccount: msRest.CompositeMapper = { + serializedName: "netAppAccount", + type: { + name: "Composite", + className: "NetAppAccount", + modelProperties: { + location: { + required: true, + serializedName: "location", + type: { + name: "String" + } + }, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Object" + } + }, + provisioningState: { + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const NetAppAccountPatch: msRest.CompositeMapper = { + serializedName: "netAppAccountPatch", + type: { + name: "Composite", + className: "NetAppAccountPatch", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Object" + } + } + } + } +}; + +export const CapacityPool: msRest.CompositeMapper = { + serializedName: "capacityPool", + type: { + name: "Composite", + className: "CapacityPool", + modelProperties: { + location: { + required: true, + serializedName: "location", + type: { + name: "String" + } + }, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Object" + } + }, + poolId: { + readOnly: true, + serializedName: "properties.poolId", + constraints: { + MaxLength: 36, + MinLength: 36, + Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/ + }, + type: { + name: "String" + } + }, + size: { + serializedName: "properties.size", + defaultValue: 4398046511104, + constraints: { + InclusiveMaximum: 549755813888000, + InclusiveMinimum: 4398046511104 + }, + type: { + name: "Number" + } + }, + serviceLevel: { + serializedName: "properties.serviceLevel", + defaultValue: 'Premium', + type: { + name: "String" + } + }, + provisioningState: { + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const CapacityPoolPatch: msRest.CompositeMapper = { + serializedName: "capacityPoolPatch", + type: { + name: "Composite", + className: "CapacityPoolPatch", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Object" + } + } + } + } +}; + +export const Volume: msRest.CompositeMapper = { + serializedName: "volume", + type: { + name: "Composite", + className: "Volume", + modelProperties: { + location: { + required: true, + serializedName: "location", + type: { + name: "String" + } + }, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Object" + } + }, + fileSystemId: { + readOnly: true, + serializedName: "properties.fileSystemId", + constraints: { + MaxLength: 36, + MinLength: 36, + Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/ + }, + type: { + name: "String" + } + }, + creationToken: { + required: true, + serializedName: "properties.creationToken", + type: { + name: "String" + } + }, + serviceLevel: { + required: true, + serializedName: "properties.serviceLevel", + defaultValue: 'Premium', + type: { + name: "String" + } + }, + usageThreshold: { + serializedName: "properties.usageThreshold", + defaultValue: 107374182400, + constraints: { + InclusiveMaximum: 109951162777600, + InclusiveMinimum: 107374182400 + }, + type: { + name: "Number" + } + }, + provisioningState: { + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "String" + } + }, + subnetId: { + serializedName: "properties.subnetId", + type: { + name: "String" + } + } + } + } +}; + +export const VolumePatch: msRest.CompositeMapper = { + serializedName: "volumePatch", + type: { + name: "Composite", + className: "VolumePatch", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + }, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Object" + } + }, + serviceLevel: { + serializedName: "properties.serviceLevel", + defaultValue: 'Premium', + type: { + name: "String" + } + }, + usageThreshold: { + serializedName: "properties.usageThreshold", + defaultValue: 107374182400, + constraints: { + InclusiveMaximum: 109951162777600, + InclusiveMinimum: 107374182400 + }, + type: { + name: "Number" + } + } + } + } +}; + +export const MountTarget: msRest.CompositeMapper = { + serializedName: "mountTarget", + type: { + name: "Composite", + className: "MountTarget", + modelProperties: { + location: { + required: true, + serializedName: "location", + type: { + name: "String" + } + }, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Object" + } + }, + mountTargetId: { + readOnly: true, + serializedName: "properties.mountTargetId", + constraints: { + MaxLength: 36, + MinLength: 36, + Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/ + }, + type: { + name: "String" + } + }, + fileSystemId: { + required: true, + serializedName: "properties.fileSystemId", + constraints: { + MaxLength: 36, + MinLength: 36, + Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/ + }, + type: { + name: "String" + } + }, + ipAddress: { + readOnly: true, + serializedName: "properties.ipAddress", + type: { + name: "String" + } + }, + vlanId: { + serializedName: "properties.vlanId", + type: { + name: "Number" + } + }, + startIp: { + serializedName: "properties.startIp", + type: { + name: "String" + } + }, + endIp: { + serializedName: "properties.endIp", + type: { + name: "String" + } + }, + gateway: { + serializedName: "properties.gateway", + type: { + name: "String" + } + }, + netmask: { + serializedName: "properties.netmask", + type: { + name: "String" + } + }, + provisioningState: { + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const Snapshot: msRest.CompositeMapper = { + serializedName: "snapshot", + type: { + name: "Composite", + className: "Snapshot", + modelProperties: { + location: { + required: true, + serializedName: "location", + type: { + name: "String" + } + }, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Object" + } + }, + snapshotId: { + readOnly: true, + serializedName: "properties.snapshotId", + constraints: { + MaxLength: 36, + MinLength: 36, + Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/ + }, + type: { + name: "String" + } + }, + fileSystemId: { + required: true, + serializedName: "properties.fileSystemId", + constraints: { + MaxLength: 36, + MinLength: 36, + Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/ + }, + type: { + name: "String" + } + }, + creationDate: { + readOnly: true, + serializedName: "properties.creationDate", + type: { + name: "DateTime" + } + }, + provisioningState: { + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const SnapshotPatch: msRest.CompositeMapper = { + serializedName: "snapshotPatch", + type: { + name: "Composite", + className: "SnapshotPatch", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Object" + } + } + } + } +}; + +export const ErrorModel: msRest.CompositeMapper = { + serializedName: "error", + type: { + name: "Composite", + className: "ErrorModel", + modelProperties: { + code: { + required: true, + serializedName: "code", + type: { + name: "String" + } + }, + message: { + required: true, + serializedName: "message", + type: { + name: "String" + } + } + } + } +}; + +export const OperationListResult: msRest.CompositeMapper = { + serializedName: "OperationListResult", + type: { + name: "Composite", + className: "OperationListResult", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Operation" + } + } + } + } + } + } +}; + +export const NetAppAccountList: msRest.CompositeMapper = { + serializedName: "netAppAccountList", + type: { + name: "Composite", + className: "NetAppAccountList", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "NetAppAccount" + } + } + } + } + } + } +}; + +export const CapacityPoolList: msRest.CompositeMapper = { + serializedName: "capacityPoolList", + type: { + name: "Composite", + className: "CapacityPoolList", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CapacityPool" + } + } + } + } + } + } +}; + +export const VolumeList: msRest.CompositeMapper = { + serializedName: "volumeList", + type: { + name: "Composite", + className: "VolumeList", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Volume" + } + } + } + } + } + } +}; + +export const MountTargetList: msRest.CompositeMapper = { + serializedName: "mountTargetList", + type: { + name: "Composite", + className: "MountTargetList", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MountTarget" + } + } + } + } + } + } +}; + +export const SnapshotsList: msRest.CompositeMapper = { + serializedName: "snapshotsList", + type: { + name: "Composite", + className: "SnapshotsList", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Snapshot" + } + } + } + } + } + } +}; diff --git a/packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts b/packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts new file mode 100644 index 000000000000..8e1c6f7f9853 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts @@ -0,0 +1,16 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + MountTargetList, + MountTarget, + ErrorModel +} from "../models/mappers"; + diff --git a/packages/@azure/arm-netapp/lib/models/operationsMappers.ts b/packages/@azure/arm-netapp/lib/models/operationsMappers.ts new file mode 100644 index 000000000000..76efe7592d9d --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/operationsMappers.ts @@ -0,0 +1,20 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + OperationListResult, + Operation, + OperationDisplay, + ServiceSpecification, + MetricSpecification, + Dimension, + ErrorModel +} from "../models/mappers"; + diff --git a/packages/@azure/arm-netapp/lib/models/parameters.ts b/packages/@azure/arm-netapp/lib/models/parameters.ts new file mode 100644 index 000000000000..d352293435e4 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/parameters.ts @@ -0,0 +1,93 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; + +export const acceptLanguage: msRest.OperationParameter = { + parameterPath: "acceptLanguage", + mapper: { + serializedName: "accept-language", + defaultValue: 'en-US', + type: { + name: "String" + } + } +}; +export const accountName: msRest.OperationURLParameter = { + parameterPath: "accountName", + mapper: { + required: true, + serializedName: "accountName", + type: { + name: "String" + } + } +}; +export const apiVersion: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + serializedName: "api-version", + defaultValue: '2017-08-15', + type: { + name: "String" + } + } +}; +export const poolName: msRest.OperationURLParameter = { + parameterPath: "poolName", + mapper: { + required: true, + serializedName: "poolName", + type: { + name: "String" + } + } +}; +export const resourceGroup: msRest.OperationURLParameter = { + parameterPath: "resourceGroup", + mapper: { + required: true, + serializedName: "resourceGroup", + type: { + name: "String" + } + } +}; +export const snapshotName: msRest.OperationURLParameter = { + parameterPath: "snapshotName", + mapper: { + required: true, + serializedName: "snapshotName", + type: { + name: "String" + } + } +}; +export const subscriptionId: msRest.OperationURLParameter = { + parameterPath: "subscriptionId", + mapper: { + required: true, + serializedName: "subscriptionId", + type: { + name: "String" + } + } +}; +export const volumeName: msRest.OperationURLParameter = { + parameterPath: "volumeName", + mapper: { + required: true, + serializedName: "volumeName", + type: { + name: "String" + } + } +}; diff --git a/packages/@azure/arm-netapp/lib/models/poolsMappers.ts b/packages/@azure/arm-netapp/lib/models/poolsMappers.ts new file mode 100644 index 000000000000..d6893a14ab4b --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/poolsMappers.ts @@ -0,0 +1,24 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + CapacityPoolList, + CapacityPool, + BaseResource, + ErrorModel, + CapacityPoolPatch, + NetAppAccount, + NetAppAccountPatch, + Volume, + VolumePatch, + Snapshot, + SnapshotPatch +} from "../models/mappers"; + diff --git a/packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts b/packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts new file mode 100644 index 000000000000..858298c24d59 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts @@ -0,0 +1,24 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + SnapshotsList, + Snapshot, + BaseResource, + ErrorModel, + SnapshotPatch, + NetAppAccount, + NetAppAccountPatch, + CapacityPool, + CapacityPoolPatch, + Volume, + VolumePatch +} from "../models/mappers"; + diff --git a/packages/@azure/arm-netapp/lib/models/volumesMappers.ts b/packages/@azure/arm-netapp/lib/models/volumesMappers.ts new file mode 100644 index 000000000000..3e60b9672948 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/models/volumesMappers.ts @@ -0,0 +1,24 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export { + VolumeList, + Volume, + BaseResource, + ErrorModel, + VolumePatch, + NetAppAccount, + NetAppAccountPatch, + CapacityPool, + CapacityPoolPatch, + Snapshot, + SnapshotPatch +} from "../models/mappers"; + diff --git a/packages/@azure/arm-netapp/lib/operations/accounts.ts b/packages/@azure/arm-netapp/lib/operations/accounts.ts new file mode 100644 index 000000000000..ac51eb0718d8 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/accounts.ts @@ -0,0 +1,335 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/accountsMappers"; +import * as Parameters from "../models/parameters"; +import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext"; + +/** Class representing a Accounts. */ +export class Accounts { + private readonly client: AzureNetAppFilesManagementClientContext; + + /** + * Create a Accounts. + * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client. + */ + constructor(client: AzureNetAppFilesManagementClientContext) { + this.client = client; + } + + /** + * Lists all NetApp accounts in the resource group + * @param resourceGroup The name of the resource group. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroup: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param callback The callback + */ + list(resourceGroup: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroup: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroup: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get the NetApp account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create or update a NetApp account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param location Resource location + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceGroup: string, accountName: string, location: string, options?: Models.AccountsCreateOrUpdateOptionalParams): Promise { + return this.beginCreateOrUpdate(resourceGroup,accountName,location,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Delete a NetApp account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDeleteMethod(resourceGroup,accountName,options) + .then(lroPoller => lroPoller.pollUntilFinished()); + } + + /** + * Patch a NetApp account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroup: string, accountName: string, options?: Models.AccountsUpdateOptionalParams): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param callback The callback + */ + update(resourceGroup: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroup: string, accountName: string, options: Models.AccountsUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroup: string, accountName: string, options?: Models.AccountsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Create or update a NetApp account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param location Resource location + * @param [options] The optional parameters + * @returns Promise + */ + beginCreateOrUpdate(resourceGroup: string, accountName: string, location: string, options?: Models.AccountsBeginCreateOrUpdateOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroup, + accountName, + location, + options + }, + beginCreateOrUpdateOperationSpec, + options); + } + + /** + * Delete a NetApp account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param [options] The optional parameters + * @returns Promise + */ + beginDeleteMethod(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroup, + accountName, + options + }, + beginDeleteMethodOperationSpec, + options); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.NetAppAccountList + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.NetAppAccount + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + tags: [ + "options", + "tags" + ] + }, + mapper: { + ...Mappers.NetAppAccountPatch, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.NetAppAccount + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + location: "location", + tags: [ + "options", + "tags" + ] + }, + mapper: { + ...Mappers.NetAppAccount, + required: true + } + }, + responses: { + 201: { + bodyMapper: Mappers.NetAppAccount + }, + 202: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginDeleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/packages/@azure/arm-netapp/lib/operations/index.ts b/packages/@azure/arm-netapp/lib/operations/index.ts new file mode 100644 index 000000000000..6372d5483b42 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/index.ts @@ -0,0 +1,16 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export * from "./operations"; +export * from "./accounts"; +export * from "./pools"; +export * from "./volumes"; +export * from "./mountTargets"; +export * from "./snapshots"; diff --git a/packages/@azure/arm-netapp/lib/operations/mountTargets.ts b/packages/@azure/arm-netapp/lib/operations/mountTargets.ts new file mode 100644 index 000000000000..9c9ca115a7e5 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/mountTargets.ts @@ -0,0 +1,97 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/mountTargetsMappers"; +import * as Parameters from "../models/parameters"; +import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext"; + +/** Class representing a MountTargets. */ +export class MountTargets { + private readonly client: AzureNetAppFilesManagementClientContext; + + /** + * Create a MountTargets. + * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client. + */ + constructor(client: AzureNetAppFilesManagementClientContext) { + this.client = client; + } + + /** + * List mount targets + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/mountTargets", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.MountTargetList + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/packages/@azure/arm-netapp/lib/operations/operations.ts b/packages/@azure/arm-netapp/lib/operations/operations.ts new file mode 100644 index 000000000000..4618f5e7ecce --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/operations.ts @@ -0,0 +1,74 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/operationsMappers"; +import * as Parameters from "../models/parameters"; +import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext"; + +/** Class representing a Operations. */ +export class Operations { + private readonly client: AzureNetAppFilesManagementClientContext; + + /** + * Create a Operations. + * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client. + */ + constructor(client: AzureNetAppFilesManagementClientContext) { + this.client = client; + } + + /** + * Lists all of the available Microsoft.NetApp Rest API operations + * @param [options] The optional parameters + * @returns Promise + */ + list(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + list(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.NetApp/operations", + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.OperationListResult + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/packages/@azure/arm-netapp/lib/operations/pools.ts b/packages/@azure/arm-netapp/lib/operations/pools.ts new file mode 100644 index 000000000000..74551a910c93 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/pools.ts @@ -0,0 +1,355 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/poolsMappers"; +import * as Parameters from "../models/parameters"; +import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext"; + +/** Class representing a Pools. */ +export class Pools { + private readonly client: AzureNetAppFilesManagementClientContext; + + /** + * Create a Pools. + * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client. + */ + constructor(client: AzureNetAppFilesManagementClientContext) { + this.client = client; + } + + /** + * Lists all capacity pools in the NetApp Account + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get a capacity pool + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, poolName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, poolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create or Update a capacity pool + * @param body Capacity pool object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(body: Models.CapacityPool, resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginCreateOrUpdate(body,resourceGroup,accountName,poolName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Patch a capacity pool + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroup: string, accountName: string, poolName: string, options?: Models.PoolsUpdateOptionalParams): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param callback The callback + */ + update(resourceGroup: string, accountName: string, poolName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroup: string, accountName: string, poolName: string, options: Models.PoolsUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroup: string, accountName: string, poolName: string, options?: Models.PoolsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Delete a capacity pool + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDeleteMethod(resourceGroup,accountName,poolName,options) + .then(lroPoller => lroPoller.pollUntilFinished()); + } + + /** + * Create or Update a capacity pool + * @param body Capacity pool object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + beginCreateOrUpdate(body: Models.CapacityPool, resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + body, + resourceGroup, + accountName, + poolName, + options + }, + beginCreateOrUpdateOperationSpec, + options); + } + + /** + * Delete a capacity pool + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + beginDeleteMethod(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroup, + accountName, + poolName, + options + }, + beginDeleteMethodOperationSpec, + options); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.CapacityPoolList + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.CapacityPool + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + tags: [ + "options", + "tags" + ] + }, + mapper: { + ...Mappers.CapacityPoolPatch, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.CapacityPool + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.CapacityPool, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.CapacityPool + }, + 201: { + bodyMapper: Mappers.CapacityPool + }, + 202: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginDeleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/packages/@azure/arm-netapp/lib/operations/snapshots.ts b/packages/@azure/arm-netapp/lib/operations/snapshots.ts new file mode 100644 index 000000000000..a28d115edb6d --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/snapshots.ts @@ -0,0 +1,398 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/snapshotsMappers"; +import * as Parameters from "../models/parameters"; +import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext"; + +/** Class representing a Snapshots. */ +export class Snapshots { + private readonly client: AzureNetAppFilesManagementClientContext; + + /** + * Create a Snapshots. + * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client. + */ + constructor(client: AzureNetAppFilesManagementClientContext) { + this.client = client; + } + + /** + * List snapshots + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get a snapshot + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + snapshotName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create a snapshot + * @param body Snapshot object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param [options] The optional parameters + * @returns Promise + */ + create(body: Models.Snapshot, resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginCreate(body,resourceGroup,accountName,poolName,volumeName,snapshotName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Patch a snapshot + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: Models.SnapshotsUpdateOptionalParams): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param callback The callback + */ + update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options: Models.SnapshotsUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: Models.SnapshotsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + snapshotName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Delete snapshot + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDeleteMethod(resourceGroup,accountName,poolName,volumeName,snapshotName,options) + .then(lroPoller => lroPoller.pollUntilFinished()); + } + + /** + * Create a snapshot + * @param body Snapshot object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param [options] The optional parameters + * @returns Promise + */ + beginCreate(body: Models.Snapshot, resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + body, + resourceGroup, + accountName, + poolName, + volumeName, + snapshotName, + options + }, + beginCreateOperationSpec, + options); + } + + /** + * Delete snapshot + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param snapshotName The name of the mount target + * @param [options] The optional parameters + * @returns Promise + */ + beginDeleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + snapshotName, + options + }, + beginDeleteMethodOperationSpec, + options); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SnapshotsList + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName, + Parameters.snapshotName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Snapshot + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName, + Parameters.snapshotName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + tags: [ + "options", + "tags" + ] + }, + mapper: { + ...Mappers.SnapshotPatch, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.Snapshot + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginCreateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName, + Parameters.snapshotName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.Snapshot, + required: true + } + }, + responses: { + 201: { + bodyMapper: Mappers.Snapshot + }, + 202: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginDeleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName, + Parameters.snapshotName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/packages/@azure/arm-netapp/lib/operations/volumes.ts b/packages/@azure/arm-netapp/lib/operations/volumes.ts new file mode 100644 index 000000000000..09558d4252c1 --- /dev/null +++ b/packages/@azure/arm-netapp/lib/operations/volumes.ts @@ -0,0 +1,377 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/volumesMappers"; +import * as Parameters from "../models/parameters"; +import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext"; + +/** Class representing a Volumes. */ +export class Volumes { + private readonly client: AzureNetAppFilesManagementClientContext; + + /** + * Create a Volumes. + * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client. + */ + constructor(client: AzureNetAppFilesManagementClientContext) { + this.client = client; + } + + /** + * List volumes + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, poolName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroup: string, accountName: string, poolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get a volume + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create or update a volume + * @param body Volume object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(body: Models.Volume, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginCreateOrUpdate(body,resourceGroup,accountName,poolName,volumeName,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Patch a volume + * @param body Volume object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param body Volume object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param callback The callback + */ + update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void; + /** + * @param body Volume object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param options The optional parameters + * @param callback The callback + */ + update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + body, + resourceGroup, + accountName, + poolName, + volumeName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Delete a volume + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise { + return this.beginDeleteMethod(resourceGroup,accountName,poolName,volumeName,options) + .then(lroPoller => lroPoller.pollUntilFinished()); + } + + /** + * Create or update a volume + * @param body Volume object supplied in the body of the operation. + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + beginCreateOrUpdate(body: Models.Volume, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + body, + resourceGroup, + accountName, + poolName, + volumeName, + options + }, + beginCreateOrUpdateOperationSpec, + options); + } + + /** + * Delete a volume + * @param resourceGroup The name of the resource group. + * @param accountName The name of the NetApp account + * @param poolName The name of the capacity pool + * @param volumeName The name of the volume + * @param [options] The optional parameters + * @returns Promise + */ + beginDeleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroup, + accountName, + poolName, + volumeName, + options + }, + beginDeleteMethodOperationSpec, + options); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.VolumeList + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Volume + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.VolumePatch, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.Volume + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.Volume, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.Volume + }, + 201: { + bodyMapper: Mappers.Volume + }, + 202: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; + +const beginDeleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroup, + Parameters.accountName, + Parameters.poolName, + Parameters.volumeName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/packages/@azure/arm-netapp/package.json b/packages/@azure/arm-netapp/package.json new file mode 100644 index 000000000000..72bddd62c28e --- /dev/null +++ b/packages/@azure/arm-netapp/package.json @@ -0,0 +1,56 @@ +{ + "name": "@azure/arm-netapp", + "author": "Microsoft Corporation", + "description": "AzureNetAppFilesManagementClient Library with typescript type definitions for node.js and browser.", + "version": "1.0.0", + "dependencies": { + "@azure/ms-rest-azure-js": "^1.2.0", + "@azure/ms-rest-js": "^1.2.0", + "tslib": "^1.9.3" + }, + "keywords": [ + "node", + "azure", + "typescript", + "browser", + "isomorphic" + ], + "license": "MIT", + "main": "./dist/arm-netapp.js", + "module": "./esm/azureNetAppFilesManagementClient.js", + "types": "./esm/azureNetAppFilesManagementClient.d.ts", + "devDependencies": { + "typescript": "^3.1.1", + "rollup": "^0.66.2", + "rollup-plugin-node-resolve": "^3.4.0", + "rollup-plugin-sourcemaps": "^0.4.2", + "uglify-js": "^3.4.9" + }, + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/packages/@azure/arm-netapp", + "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", + "lib/**/*.ts", + "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/arm-netapp.js.map'\" -o ./dist/arm-netapp.min.js ./dist/arm-netapp.js", + "prepack": "npm install && npm run build" + }, + "sideEffects": false +} diff --git a/packages/@azure/arm-netapp/rollup.config.js b/packages/@azure/arm-netapp/rollup.config.js new file mode 100644 index 000000000000..272f762c3eff --- /dev/null +++ b/packages/@azure/arm-netapp/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/azureNetAppFilesManagementClient.js", + external: [ + "@azure/ms-rest-js", + "@azure/ms-rest-azure-js" + ], + output: { + file: "./dist/arm-netapp.js", + format: "umd", + name: "Azure.ArmNetapp", + sourcemap: true, + globals: { + "@azure/ms-rest-js": "msRest", + "@azure/ms-rest-azure-js": "msRestAzure" + }, + banner: `/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */` + }, + plugins: [ + nodeResolve({ module: true }), + sourcemaps() + ] +}; + +export default config; diff --git a/packages/@azure/arm-netapp/tsconfig.json b/packages/@azure/arm-netapp/tsconfig.json new file mode 100644 index 000000000000..51ea90961ce5 --- /dev/null +++ b/packages/@azure/arm-netapp/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"], + "declaration": true, + "outDir": "./esm", + "importHelpers": true + }, + "include": ["./lib/**/*.ts"], + "exclude": ["node_modules"] +}