Skip to content

Commit 778a3ee

Browse files
author
SDKAuto
committed
CodeGen from PR 24395 in Azure/azure-rest-api-specs
Merge 41f8f34937be245a855ff49552ecdeb0213ca525 into 64efc48302878a07d1d1231eaed0ca9cadfaf037
1 parent 38a02c4 commit 778a3ee

25 files changed

+317
-122
lines changed

common/config/rush/pnpm-lock.yaml

Lines changed: 16 additions & 21 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sdk/subscription/arm-subscriptions/CHANGELOG.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
# Release History
2+
3+
## 5.2.0 (2023-06-30)
4+
5+
**Features**
26

3-
## 5.1.1 (Unreleased)
4-
5-
### Features Added
6-
7-
### Breaking Changes
8-
9-
### Bugs Fixed
10-
11-
### Other Changes
12-
7+
- Added operation group SubscriptionOperation
8+
- Added Interface SubscriptionCreationResult
9+
- Added Interface SubscriptionOperationGetHeaders
10+
- Added Interface SubscriptionOperationGetOptionalParams
11+
- Added Type Alias SubscriptionOperationGetResponse
12+
13+
1314
## 5.1.0 (2022-11-11)
1415

1516
**Features**

sdk/subscription/arm-subscriptions/LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2022 Microsoft
3+
Copyright (c) 2023 Microsoft
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
2-
"commit": "52a770004c3019a067e9dcdbb2e95b4992d42728",
2+
"commit": "30238923fe20adc91282190d2877663cdaba7cc3",
33
"readme": "specification/subscription/resource-manager/readme.md",
4-
"autorest_command": "autorest --version=3.8.4 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\subscription\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-rc.3.20221108.1 --generate-sample=true",
4+
"autorest_command": "autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/subscription/resource-manager/readme.md --use=@autorest/typescript@^6.0.4",
55
"repository_url": "https://github.com/Azure/azure-rest-api-specs.git",
6-
"release_tool": "@azure-tools/js-sdk-release-tools@2.4.2",
7-
"use": "@autorest/typescript@6.0.0-rc.3.20221108.1"
6+
"release_tool": "@azure-tools/js-sdk-release-tools@2.7.1",
7+
"use": "@autorest/typescript@^6.0.4"
88
}

sdk/subscription/arm-subscriptions/package.json

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
"sdk-type": "mgmt",
44
"author": "Microsoft Corporation",
55
"description": "A generated SDK for SubscriptionClient.",
6-
"version": "5.1.1",
6+
"version": "5.2.0",
77
"engines": {
88
"node": ">=14.0.0"
99
},
1010
"dependencies": {
11-
"@azure/core-lro": "^2.2.0",
11+
"@azure/core-lro": "^2.5.3",
1212
"@azure/abort-controller": "^1.0.0",
1313
"@azure/core-paging": "^1.2.0",
14-
"@azure/core-client": "^1.6.1",
14+
"@azure/core-client": "^1.7.0",
1515
"@azure/core-auth": "^1.3.0",
1616
"@azure/core-rest-pipeline": "^1.8.0",
1717
"tslib": "^2.2.0"
@@ -33,12 +33,13 @@
3333
"@rollup/plugin-json": "^6.0.0",
3434
"@rollup/plugin-multi-entry": "^6.0.0",
3535
"@rollup/plugin-node-resolve": "^13.1.3",
36-
"mkdirp": "^1.0.4",
36+
"mkdirp": "^2.1.2",
3737
"rollup": "^2.66.1",
3838
"rollup-plugin-sourcemaps": "^0.6.3",
3939
"typescript": "~5.0.0",
4040
"uglify-js": "^3.4.9",
4141
"rimraf": "^3.0.0",
42+
"dotenv": "^16.0.0",
4243
"@azure/identity": "^2.0.1",
4344
"@azure-tools/test-recorder": "^3.0.0",
4445
"@azure-tools/test-credential": "^1.0.0",
@@ -49,7 +50,6 @@
4950
"@types/node": "^14.0.0",
5051
"@azure/dev-tool": "^1.0.0"
5152
},
52-
"homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/subscription/arm-subscriptions",
5353
"repository": {
5454
"type": "git",
5555
"url": "https://github.com/Azure/azure-sdk-for-js.git"
@@ -111,12 +111,5 @@
111111
]
112112
},
113113
"autoPublish": true,
114-
"//sampleConfiguration": {
115-
"productName": "",
116-
"productSlugs": [
117-
"azure"
118-
],
119-
"disableDocsMs": true,
120-
"apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-subscriptions?view=azure-node-preview"
121-
}
122-
}
114+
"homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/subscription/arm-subscriptions"
115+
}

sdk/subscription/arm-subscriptions/review/arm-subscriptions.api.md

Lines changed: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66

77
import * as coreAuth from '@azure/core-auth';
88
import * as coreClient from '@azure/core-client';
9+
import { OperationState } from '@azure/core-lro';
910
import { PagedAsyncIterableIterator } from '@azure/core-paging';
10-
import { PollerLike } from '@azure/core-lro';
11-
import { PollOperationState } from '@azure/core-lro';
11+
import { SimplePollerLike } from '@azure/core-lro';
1212

1313
// @public
1414
export type AcceptOwnership = string;
@@ -42,7 +42,7 @@ export interface AcceptOwnershipStatusResponse {
4242

4343
// @public
4444
export interface Alias {
45-
beginCreate(aliasName: string, body: PutAliasRequest, options?: AliasCreateOptionalParams): Promise<PollerLike<PollOperationState<AliasCreateResponse>, AliasCreateResponse>>;
45+
beginCreate(aliasName: string, body: PutAliasRequest, options?: AliasCreateOptionalParams): Promise<SimplePollerLike<OperationState<AliasCreateResponse>, AliasCreateResponse>>;
4646
beginCreateAndWait(aliasName: string, body: PutAliasRequest, options?: AliasCreateOptionalParams): Promise<AliasCreateResponse>;
4747
delete(aliasName: string, options?: AliasDeleteOptionalParams): Promise<void>;
4848
get(aliasName: string, options?: AliasGetOptionalParams): Promise<AliasGetResponse>;
@@ -378,6 +378,8 @@ export class SubscriptionClient extends coreClient.ServiceClient {
378378
// (undocumented)
379379
operations: Operations;
380380
// (undocumented)
381+
subscriptionOperation: SubscriptionOperation;
382+
// (undocumented)
381383
subscriptionOperations: SubscriptionOperations;
382384
// (undocumented)
383385
subscriptionPolicy: SubscriptionPolicy;
@@ -393,6 +395,11 @@ export interface SubscriptionClientOptionalParams extends coreClient.ServiceClie
393395
endpoint?: string;
394396
}
395397

398+
// @public
399+
export interface SubscriptionCreationResult {
400+
subscriptionLink?: string;
401+
}
402+
396403
// @public
397404
export interface SubscriptionEnableOptionalParams extends coreClient.OperationOptions {
398405
}
@@ -411,10 +418,28 @@ export interface SubscriptionName {
411418
subscriptionName?: string;
412419
}
413420

421+
// @public
422+
export interface SubscriptionOperation {
423+
get(operationId: string, options?: SubscriptionOperationGetOptionalParams): Promise<SubscriptionOperationGetResponse>;
424+
}
425+
426+
// @public
427+
export interface SubscriptionOperationGetHeaders {
428+
location?: string;
429+
retryAfter?: number;
430+
}
431+
432+
// @public
433+
export interface SubscriptionOperationGetOptionalParams extends coreClient.OperationOptions {
434+
}
435+
436+
// @public
437+
export type SubscriptionOperationGetResponse = SubscriptionCreationResult;
438+
414439
// @public
415440
export interface SubscriptionOperations {
416441
acceptOwnershipStatus(subscriptionId: string, options?: SubscriptionAcceptOwnershipStatusOptionalParams): Promise<SubscriptionAcceptOwnershipStatusResponse>;
417-
beginAcceptOwnership(subscriptionId: string, body: AcceptOwnershipRequest, options?: SubscriptionAcceptOwnershipOptionalParams): Promise<PollerLike<PollOperationState<SubscriptionAcceptOwnershipResponse>, SubscriptionAcceptOwnershipResponse>>;
442+
beginAcceptOwnership(subscriptionId: string, body: AcceptOwnershipRequest, options?: SubscriptionAcceptOwnershipOptionalParams): Promise<SimplePollerLike<OperationState<SubscriptionAcceptOwnershipResponse>, SubscriptionAcceptOwnershipResponse>>;
418443
beginAcceptOwnershipAndWait(subscriptionId: string, body: AcceptOwnershipRequest, options?: SubscriptionAcceptOwnershipOptionalParams): Promise<SubscriptionAcceptOwnershipResponse>;
419444
cancel(subscriptionId: string, options?: SubscriptionCancelOptionalParams): Promise<SubscriptionCancelResponse>;
420445
enable(subscriptionId: string, options?: SubscriptionEnableOptionalParams): Promise<SubscriptionEnableResponse>;

sdk/subscription/arm-subscriptions/src/lroImpl.ts

Lines changed: 31 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6,29 +6,37 @@
66
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
77
*/
88

9+
// Copyright (c) Microsoft Corporation.
10+
// Licensed under the MIT license.
11+
12+
import { AbortSignalLike } from "@azure/abort-controller";
913
import { LongRunningOperation, LroResponse } from "@azure/core-lro";
1014

11-
export class LroImpl<T> implements LongRunningOperation<T> {
12-
constructor(
13-
private sendOperationFn: (args: any, spec: any) => Promise<LroResponse<T>>,
14-
private args: Record<string, unknown>,
15-
private spec: {
16-
readonly requestBody?: unknown;
17-
readonly path?: string;
18-
readonly httpMethod: string;
19-
} & Record<string, any>,
20-
public requestPath: string = spec.path!,
21-
public requestMethod: string = spec.httpMethod
22-
) {}
23-
public async sendInitialRequest(): Promise<LroResponse<T>> {
24-
return this.sendOperationFn(this.args, this.spec);
25-
}
26-
public async sendPollRequest(path: string): Promise<LroResponse<T>> {
27-
const { requestBody, ...restSpec } = this.spec;
28-
return this.sendOperationFn(this.args, {
29-
...restSpec,
30-
path,
31-
httpMethod: "GET"
32-
});
33-
}
15+
export function createLroSpec<T>(inputs: {
16+
sendOperationFn: (args: any, spec: any) => Promise<LroResponse<T>>;
17+
args: Record<string, unknown>;
18+
spec: {
19+
readonly requestBody?: unknown;
20+
readonly path?: string;
21+
readonly httpMethod: string;
22+
} & Record<string, any>;
23+
}): LongRunningOperation<T> {
24+
const { args, spec, sendOperationFn } = inputs;
25+
return {
26+
requestMethod: spec.httpMethod,
27+
requestPath: spec.path!,
28+
sendInitialRequest: () => sendOperationFn(args, spec),
29+
sendPollRequest: (
30+
path: string,
31+
options?: { abortSignal?: AbortSignalLike }
32+
) => {
33+
const { requestBody, ...restSpec } = spec;
34+
return sendOperationFn(args, {
35+
...restSpec,
36+
httpMethod: "GET",
37+
path,
38+
abortSignal: options?.abortSignal
39+
});
40+
}
41+
};
3442
}

0 commit comments

Comments
 (0)