Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ReleasePR @azure/arm-features] Zone mappings fix #16320

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion sdk/features/arm-features/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2019 Microsoft
Copyright (c) 2021 Microsoft

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
19 changes: 9 additions & 10 deletions sdk/features/arm-features/README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
## Azure FeatureClient SDK for JavaScript

This package contains an isomorphic SDK (runs both in Node.js and in browsers) for FeatureClient.
This package contains an isomorphic SDK (runs both in node.js and in browsers) for FeatureClient.

### Currently supported environments

- [LTS versions of Node.js](https://nodejs.org/about/releases/)
- Latest versions of Safari, Chrome, Edge, and Firefox.
- Latest versions of Safari, Chrome, Edge and Firefox.

### Prerequisites

Expand All @@ -21,7 +21,6 @@ Install both packages using the below command:
```bash
npm install --save @azure/arm-features @azure/identity
```

> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.

Expand All @@ -37,8 +36,7 @@ If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/

In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started.

#### nodejs - Authentication, client creation, and listOperations as an example written in JavaScript.
#### nodejs - Authentication, client creation, and listOperations as an example written in JavaScript.

##### Sample code

Expand All @@ -51,8 +49,8 @@ const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead.
const creds = new DefaultAzureCredential();
const client = new FeatureClient(creds, subscriptionId);

client.listOperations().then((result) => {
const apiVersion = "testapiVersion";
client.listOperations(apiVersion).then((result) => {
console.log("The result is:");
console.log(result);
}).catch((err) => {
Expand All @@ -61,7 +59,7 @@ client.listOperations().then((result) => {
});
```

#### browser - Authentication, client creation, and listOperations as an example written in JavaScript.
#### browser - Authentication, client creation, and listOperations as an example written in JavaScript.

In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser.
- See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser.
Expand All @@ -86,10 +84,11 @@ In browser applications, we recommend using the `InteractiveBrowserCredential` t
const credential = new InteractiveBrowserCredential(
{
clientId: "<client id for your Azure AD app>",
tenantId: "<optional tenant for your organization>"
tenant: "<optional tenant for your organization>"
});
const client = new Azure.ArmFeatures.FeatureClient(creds, subscriptionId);
client.listOperations().then((result) => {
const apiVersion = "testapiVersion";
client.listOperations(apiVersion).then((result) => {
console.log("The result is:");
console.log(result);
}).catch((err) => {
Expand Down
14 changes: 7 additions & 7 deletions sdk/features/arm-features/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
"description": "FeatureClient Library with typescript type definitions for node.js and browser.",
"version": "1.1.0",
"dependencies": {
"@azure/ms-rest-azure-js": "^1.4.0",
"@azure/ms-rest-js": "^1.11.0",
"@azure/ms-rest-azure-js": "^2.1.0",
"@azure/ms-rest-js": "^2.2.0",
"@azure/core-auth": "^1.1.4",
"tslib": "^1.9.3"
"tslib": "^1.10.0"
},
"keywords": [
"node",
Expand All @@ -22,12 +22,12 @@
"types": "./esm/featureClient.d.ts",
"devDependencies": {
"typescript": "^3.6.0",
"rollup": "^0.66.2",
"rollup-plugin-node-resolve": "^3.4.0",
"rollup": "^1.18.0",
"rollup-plugin-node-resolve": "^5.2.0",
"rollup-plugin-sourcemaps": "^0.4.2",
"uglify-js": "^3.4.9"
"uglify-js": "^3.6.0"
},
"homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/features/arm-features",
"homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/features/arm-features",
"repository": {
"type": "git",
"url": "https://github.com/Azure/azure-sdk-for-js.git"
Expand Down
6 changes: 3 additions & 3 deletions sdk/features/arm-features/rollup.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,15 @@ const config = {
"@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.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/`
},
plugins: [
nodeResolve({ module: true }),
nodeResolve({ mainFields: ['module', 'main'] }),
sourcemaps()
]
};
Expand Down
45 changes: 29 additions & 16 deletions sdk/features/arm-features/src/featureClient.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
Expand All @@ -20,6 +19,7 @@ import { FeatureClientContext } from "./featureClientContext";
class FeatureClient extends FeatureClientContext {
// Operation groups
features: operations.Features;
subscriptionFeatureRegistrations: operations.SubscriptionFeatureRegistrations;

/**
* Initializes a new instance of the FeatureClient class.
Expand All @@ -29,32 +29,38 @@ class FeatureClient extends FeatureClientContext {
* {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
* ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
* @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The ID of the target subscription.
* @param subscriptionId The Azure subscription ID.
* @param providerNamespace The provider namespace.
* @param [options] The parameter options
*/
constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.FeatureClientOptions) {
super(credentials, subscriptionId, options);
constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, providerNamespace: string, options?: Models.FeatureClientOptions) {
super(credentials, subscriptionId, providerNamespace, options);
this.features = new operations.Features(this);
this.subscriptionFeatureRegistrations = new operations.SubscriptionFeatureRegistrations(this);
}

/**
* Lists all of the available Microsoft.Features REST API operations.
* @param apiVersion The API version to use for this operation.
* @param [options] The optional parameters
* @returns Promise<Models.ListOperationsResponse>
*/
listOperations(options?: msRest.RequestOptionsBase): Promise<Models.ListOperationsResponse>;
listOperations(apiVersion: string, options?: msRest.RequestOptionsBase): Promise<Models.ListOperationsResponse>;
/**
* @param apiVersion The API version to use for this operation.
* @param callback The callback
*/
listOperations(callback: msRest.ServiceCallback<Models.OperationListResult>): void;
listOperations(apiVersion: string, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
/**
* @param apiVersion The API version to use for this operation.
* @param options The optional parameters
* @param callback The callback
*/
listOperations(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
listOperations(options?: msRest.RequestOptionsBase | msRest.ServiceCallback<Models.OperationListResult>, callback?: msRest.ServiceCallback<Models.OperationListResult>): Promise<Models.ListOperationsResponse> {
listOperations(apiVersion: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
listOperations(apiVersion: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback<Models.OperationListResult>, callback?: msRest.ServiceCallback<Models.OperationListResult>): Promise<Models.ListOperationsResponse> {
return this.sendOperationRequest(
{
apiVersion,
options
},
listOperationsOperationSpec,
Expand All @@ -64,25 +70,29 @@ class FeatureClient extends FeatureClientContext {
/**
* Lists all of the available Microsoft.Features REST API operations.
* @param nextPageLink The NextLink from the previous successful call to List operation.
* @param apiVersion The API version to use for this operation.
* @param [options] The optional parameters
* @returns Promise<Models.ListOperationsNextResponse>
*/
listOperationsNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise<Models.ListOperationsNextResponse>;
listOperationsNext(nextPageLink: string, apiVersion: string, options?: msRest.RequestOptionsBase): Promise<Models.ListOperationsNextResponse>;
/**
* @param nextPageLink The NextLink from the previous successful call to List operation.
* @param apiVersion The API version to use for this operation.
* @param callback The callback
*/
listOperationsNext(nextPageLink: string, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
listOperationsNext(nextPageLink: string, apiVersion: string, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
/**
* @param nextPageLink The NextLink from the previous successful call to List operation.
* @param apiVersion The API version to use for this operation.
* @param options The optional parameters
* @param callback The callback
*/
listOperationsNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
listOperationsNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback<Models.OperationListResult>, callback?: msRest.ServiceCallback<Models.OperationListResult>): Promise<Models.ListOperationsNextResponse> {
listOperationsNext(nextPageLink: string, apiVersion: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.OperationListResult>): void;
listOperationsNext(nextPageLink: string, apiVersion: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback<Models.OperationListResult>, callback?: msRest.ServiceCallback<Models.OperationListResult>): Promise<Models.ListOperationsNextResponse> {
return this.sendOperationRequest(
{
nextPageLink,
apiVersion,
options
},
listOperationsNextOperationSpec,
Expand All @@ -106,7 +116,7 @@ const listOperationsOperationSpec: msRest.OperationSpec = {
bodyMapper: Mappers.OperationListResult
},
default: {
bodyMapper: Mappers.CloudError
bodyMapper: Mappers.ErrorResponse
}
},
serializer
Expand All @@ -119,6 +129,9 @@ const listOperationsNextOperationSpec: msRest.OperationSpec = {
urlParameters: [
Parameters.nextPageLink
],
queryParameters: [
Parameters.apiVersion
],
headerParameters: [
Parameters.acceptLanguage
],
Expand All @@ -127,7 +140,7 @@ const listOperationsNextOperationSpec: msRest.OperationSpec = {
bodyMapper: Mappers.OperationListResult
},
default: {
bodyMapper: Mappers.CloudError
bodyMapper: Mappers.ErrorResponse
}
},
serializer
Expand Down
25 changes: 14 additions & 11 deletions sdk/features/arm-features/src/featureClientContext.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
Expand All @@ -10,16 +9,16 @@

import * as Models from "./models";
import * as msRest from "@azure/ms-rest-js";
import { TokenCredential } from "@azure/core-auth";
import * as msRestAzure from "@azure/ms-rest-azure-js";
import { TokenCredential } from "@azure/core-auth";

const packageName = "@azure/arm-features";
const packageVersion = "1.1.0";

export class FeatureClientContext extends msRestAzure.AzureServiceClient {
credentials: msRest.ServiceClientCredentials | TokenCredential;
subscriptionId: string;
apiVersion?: string;
providerNamespace: string;

/**
* Initializes a new instance of the FeatureClient class.
Expand All @@ -29,39 +28,43 @@ export class FeatureClientContext extends msRestAzure.AzureServiceClient {
* {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
* ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
* @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The ID of the target subscription.
* @param subscriptionId The Azure subscription ID.
* @param providerNamespace The provider namespace.
* @param [options] The parameter options
*/
constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.FeatureClientOptions) {
constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, providerNamespace: string, options?: Models.FeatureClientOptions) {
if (credentials == undefined) {
throw new Error('\'credentials\' cannot be null.');
}
if (subscriptionId == undefined) {
throw new Error('\'subscriptionId\' cannot be null.');
}
if (providerNamespace == undefined) {
throw new Error('\'providerNamespace\' cannot be null.');
}

if (!options) {
options = {};
}
if(!options.userAgent) {
if (!options.userAgent) {
const defaultUserAgent = msRestAzure.getDefaultUserAgentValue();
options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;
}

super(credentials, options);

this.apiVersion = '2015-12-01';
this.acceptLanguage = 'en-US';
this.longRunningOperationRetryTimeout = 30;
this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com";
this.requestContentType = "application/json; charset=utf-8";
this.credentials = credentials;
this.subscriptionId = subscriptionId;
this.providerNamespace = providerNamespace;

if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) {
if (options.acceptLanguage !== null && options.acceptLanguage !== undefined) {
this.acceptLanguage = options.acceptLanguage;
}
if(options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) {
if (options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) {
this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout;
}
}
Expand Down
7 changes: 4 additions & 3 deletions sdk/features/arm-features/src/models/featuresMappers.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/

export {
CloudError,
ErrorDefinition,
ErrorResponse,
FeatureOperationsListResult,
FeatureProperties,
FeatureResult
Expand Down
Loading