diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 894f50308d26..682f620f4175 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -13620,7 +13620,7 @@ packages: dev: false file:projects/arm-domainservices.tgz: - resolution: {integrity: sha512-bbn6uBLvkyFjIRKHWjEVq0SBvLDibsV8w2lBzoV751nOCIS+kOw5fZPij5gFYTfS9uHXznE+prwvMXa9VScEPg==, tarball: file:projects/arm-domainservices.tgz} + resolution: {integrity: sha512-HTjWLhtbB62Ufr64wuPrp1Rd8JHjQsBcx6oiny6/WRdWeLnFsRc+KPFW4sQcIANMBFI7EJqla+Mt1aDUqDyl0A==, tarball: file:projects/arm-domainservices.tgz} name: '@rush-temp/arm-domainservices' version: 0.0.0 dependencies: @@ -13634,7 +13634,8 @@ packages: '@types/node': 14.18.54 chai: 4.3.7 cross-env: 7.0.3 - mkdirp: 1.0.4 + dotenv: 16.3.1 + mkdirp: 2.1.6 mocha: 7.2.0 rimraf: 3.0.2 rollup: 2.79.1 @@ -20276,7 +20277,7 @@ packages: dev: false file:projects/openai.tgz: - resolution: {integrity: sha512-P2Kt7ieMv/lI2IQF2IYFl/xUaX++zno8QLczqULMhbQpAQ+0i19LZ+pAZR9tnL3BpMS/dyuz3QxIMekW2cyOUA==, tarball: file:projects/openai.tgz} + resolution: {integrity: sha512-N8E0x1oZNJ/0S88emgJ97tMxe0iZmc59ZDKR/eNoY5XEqZumAlO1u4R5KLKOHphDdDt30md1DVa/VY68Ql8x2A==, tarball: file:projects/openai.tgz} name: '@rush-temp/openai' version: 0.0.0 dependencies: @@ -20368,7 +20369,7 @@ packages: dev: false file:projects/perf-ai-form-recognizer.tgz: - resolution: {integrity: sha512-+05JR31WLH5d8FD+GslDQxNHYPLOrvExWUugJJNalgNZpbtoqzQF0837G7tKGDg98VU4XjK6qZA7Gjo2n7O3yg==, tarball: file:projects/perf-ai-form-recognizer.tgz} + resolution: {integrity: sha512-W/M7XPCsmg8eZBzlsl8J6yyEH+1DoeC7F4keU6px84ohKSVn3vZHTYM2xj9e61MzYDWUjormNqquQD9oeB+qEA==, tarball: file:projects/perf-ai-form-recognizer.tgz} name: '@rush-temp/perf-ai-form-recognizer' version: 0.0.0 dependencies: diff --git a/sdk/domainservices/arm-domainservices/CHANGELOG.md b/sdk/domainservices/arm-domainservices/CHANGELOG.md index 0755cde852ee..0606f44f5604 100644 --- a/sdk/domainservices/arm-domainservices/CHANGELOG.md +++ b/sdk/domainservices/arm-domainservices/CHANGELOG.md @@ -1,15 +1,25 @@ # Release History + +## 5.0.0 (2023-08-08) + +**Features** -## 4.1.1 (Unreleased) - -### Features Added - -### Breaking Changes - -### Bugs Fixed + - Added Type Alias ChannelBinding + - Added Type Alias LdapSigning + - Added Type Alias SyncScope + - Interface DomainSecuritySettings has a new optional parameter channelBinding + - Interface DomainSecuritySettings has a new optional parameter ldapSigning + - Interface DomainService has a new optional parameter syncApplicationId + - Interface DomainService has a new optional parameter syncScope + - Added Enum KnownChannelBinding + - Added Enum KnownLdapSigning + - Added Enum KnownSyncScope -### Other Changes +**Breaking Changes** + - Class DomainServicesResourceProvider has a new signature + + ## 4.1.0 (2022-11-22) **Features** diff --git a/sdk/domainservices/arm-domainservices/LICENSE b/sdk/domainservices/arm-domainservices/LICENSE index 5d1d36e0af80..3a1d9b6f24f7 100644 --- a/sdk/domainservices/arm-domainservices/LICENSE +++ b/sdk/domainservices/arm-domainservices/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2022 Microsoft +Copyright (c) 2023 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 diff --git a/sdk/domainservices/arm-domainservices/_meta.json b/sdk/domainservices/arm-domainservices/_meta.json index 12aae7a32e6f..e758f6c94923 100644 --- a/sdk/domainservices/arm-domainservices/_meta.json +++ b/sdk/domainservices/arm-domainservices/_meta.json @@ -1,8 +1,8 @@ { - "commit": "1f1d5b0b9ce6cc94605b2fd619dce374fb6e033a", - "readme": "specification\\domainservices\\resource-manager\\readme.md", - "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\\domainservices\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-rc.3.20221108.1 --generate-sample=true", + "commit": "ca20fc1b03e12ebccae8529f117600b55c9e0c8b", + "readme": "specification/domainservices/resource-manager/readme.md", + "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/domainservices/resource-manager/readme.md --use=@autorest/typescript@^6.0.4", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.4.2", - "use": "@autorest/typescript@6.0.0-rc.3.20221108.1" + "release_tool": "@azure-tools/js-sdk-release-tools@2.7.1", + "use": "@autorest/typescript@^6.0.4" } \ No newline at end of file diff --git a/sdk/domainservices/arm-domainservices/package.json b/sdk/domainservices/arm-domainservices/package.json index fc515feceeb3..5178bb4be22a 100644 --- a/sdk/domainservices/arm-domainservices/package.json +++ b/sdk/domainservices/arm-domainservices/package.json @@ -3,15 +3,15 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for DomainServicesResourceProvider.", - "version": "4.1.1", + "version": "5.0.0", "engines": { "node": ">=14.0.0" }, "dependencies": { - "@azure/core-lro": "^2.2.0", + "@azure/core-lro": "^2.5.4", "@azure/abort-controller": "^1.0.0", "@azure/core-paging": "^1.2.0", - "@azure/core-client": "^1.6.1", + "@azure/core-client": "^1.7.0", "@azure/core-auth": "^1.3.0", "@azure/core-rest-pipeline": "^1.8.0", "tslib": "^2.2.0" @@ -33,12 +33,13 @@ "@rollup/plugin-json": "^6.0.0", "@rollup/plugin-multi-entry": "^6.0.0", "@rollup/plugin-node-resolve": "^13.1.3", - "mkdirp": "^1.0.4", + "mkdirp": "^2.1.2", "rollup": "^2.66.1", "rollup-plugin-sourcemaps": "^0.6.3", "typescript": "~5.0.0", "uglify-js": "^3.4.9", "rimraf": "^3.0.0", + "dotenv": "^16.0.0", "@azure/identity": "^2.0.1", "@azure-tools/test-recorder": "^3.0.0", "@azure-tools/test-credential": "^1.0.0", @@ -49,7 +50,6 @@ "@types/node": "^14.0.0", "@azure/dev-tool": "^1.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/domainservices/arm-domainservices", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" @@ -111,12 +111,5 @@ ] }, "autoPublish": true, - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-domainservices?view=azure-node-preview" - } -} + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/domainservices/arm-domainservices" +} \ No newline at end of file diff --git a/sdk/domainservices/arm-domainservices/review/arm-domainservices.api.md b/sdk/domainservices/arm-domainservices/review/arm-domainservices.api.md index 2f7fda68a70e..28adfc37b84e 100644 --- a/sdk/domainservices/arm-domainservices/review/arm-domainservices.api.md +++ b/sdk/domainservices/arm-domainservices/review/arm-domainservices.api.md @@ -6,9 +6,12 @@ import * as coreAuth from '@azure/core-auth'; import * as coreClient from '@azure/core-client'; +import { OperationState } from '@azure/core-lro'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; +import { SimplePollerLike } from '@azure/core-lro'; + +// @public +export type ChannelBinding = string; // @public export interface CloudError { @@ -55,8 +58,10 @@ export type CreatedByType = string; // @public export interface DomainSecuritySettings { + channelBinding?: ChannelBinding; kerberosArmoring?: KerberosArmoring; kerberosRc4Encryption?: KerberosRc4Encryption; + ldapSigning?: LdapSigning; ntlmV1?: NtlmV1; syncKerberosPasswords?: SyncKerberosPasswords; syncNtlmPasswords?: SyncNtlmPasswords; @@ -79,7 +84,9 @@ export interface DomainService extends Resource { replicaSets?: ReplicaSet[]; resourceForestSettings?: ResourceForestSettings; sku?: string; + readonly syncApplicationId?: string; readonly syncOwner?: string; + syncScope?: SyncScope; readonly tenantId?: string; readonly version?: number; } @@ -111,11 +118,11 @@ export type DomainServiceOperationsListResponse = OperationEntityListResult; // @public export interface DomainServices { - beginCreateOrUpdate(resourceGroupName: string, domainServiceName: string, domainService: DomainService, options?: DomainServicesCreateOrUpdateOptionalParams): Promise, DomainServicesCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, domainServiceName: string, domainService: DomainService, options?: DomainServicesCreateOrUpdateOptionalParams): Promise, DomainServicesCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, domainServiceName: string, domainService: DomainService, options?: DomainServicesCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, domainServiceName: string, options?: DomainServicesDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, domainServiceName: string, options?: DomainServicesDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, domainServiceName: string, options?: DomainServicesDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, domainServiceName: string, domainService: DomainService, options?: DomainServicesUpdateOptionalParams): Promise, DomainServicesUpdateResponse>>; + beginUpdate(resourceGroupName: string, domainServiceName: string, domainService: DomainService, options?: DomainServicesUpdateOptionalParams): Promise, DomainServicesUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, domainServiceName: string, domainService: DomainService, options?: DomainServicesUpdateOptionalParams): Promise; get(resourceGroupName: string, domainServiceName: string, options?: DomainServicesGetOptionalParams): Promise; list(options?: DomainServicesListOptionalParams): PagedAsyncIterableIterator; @@ -177,6 +184,7 @@ export class DomainServicesResourceProvider extends coreClient.ServiceClient { // (undocumented) $host: string; constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: DomainServicesResourceProviderOptionalParams); + constructor(credentials: coreAuth.TokenCredential, options?: DomainServicesResourceProviderOptionalParams); // (undocumented) apiVersion: string; // (undocumented) @@ -188,7 +196,7 @@ export class DomainServicesResourceProvider extends coreClient.ServiceClient { // (undocumented) ouContainerOperations: OuContainerOperations; // (undocumented) - subscriptionId: string; + subscriptionId?: string; } // @public @@ -249,6 +257,12 @@ export type KerberosArmoring = string; // @public export type KerberosRc4Encryption = string; +// @public +export enum KnownChannelBinding { + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownCreatedByType { Application = "Application", @@ -287,6 +301,12 @@ export enum KnownLdaps { Enabled = "Enabled" } +// @public +export enum KnownLdapSigning { + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownNotifyDcAdmins { Disabled = "Disabled", @@ -333,6 +353,12 @@ export enum KnownSyncOnPremPasswords { Enabled = "Enabled" } +// @public +export enum KnownSyncScope { + All = "All", + CloudOnly = "CloudOnly" +} + // @public export enum KnownTlsV1 { Disabled = "Disabled", @@ -342,6 +368,9 @@ export enum KnownTlsV1 { // @public export type Ldaps = string; +// @public +export type LdapSigning = string; + // @public export interface LdapsSettings { readonly certificateNotAfter?: Date; @@ -459,11 +488,11 @@ export interface OuContainerListResult { // @public export interface OuContainerOperationGrp { - beginCreate(resourceGroupName: string, domainServiceName: string, ouContainerName: string, containerAccount: ContainerAccount, options?: OuContainerCreateOptionalParams): Promise, OuContainerCreateResponse>>; + beginCreate(resourceGroupName: string, domainServiceName: string, ouContainerName: string, containerAccount: ContainerAccount, options?: OuContainerCreateOptionalParams): Promise, OuContainerCreateResponse>>; beginCreateAndWait(resourceGroupName: string, domainServiceName: string, ouContainerName: string, containerAccount: ContainerAccount, options?: OuContainerCreateOptionalParams): Promise; - beginDelete(resourceGroupName: string, domainServiceName: string, ouContainerName: string, options?: OuContainerDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, domainServiceName: string, ouContainerName: string, options?: OuContainerDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, domainServiceName: string, ouContainerName: string, options?: OuContainerDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, domainServiceName: string, ouContainerName: string, containerAccount: ContainerAccount, options?: OuContainerUpdateOptionalParams): Promise, OuContainerUpdateResponse>>; + beginUpdate(resourceGroupName: string, domainServiceName: string, ouContainerName: string, containerAccount: ContainerAccount, options?: OuContainerUpdateOptionalParams): Promise, OuContainerUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, domainServiceName: string, ouContainerName: string, containerAccount: ContainerAccount, options?: OuContainerUpdateOptionalParams): Promise; get(resourceGroupName: string, domainServiceName: string, ouContainerName: string, options?: OuContainerGetOptionalParams): Promise; list(resourceGroupName: string, domainServiceName: string, options?: OuContainerListOptionalParams): PagedAsyncIterableIterator; @@ -542,6 +571,9 @@ export type SyncNtlmPasswords = string; // @public export type SyncOnPremPasswords = string; +// @public +export type SyncScope = string; + // @public export interface SystemData { createdAt?: Date; diff --git a/sdk/domainservices/arm-domainservices/src/domainServicesResourceProvider.ts b/sdk/domainservices/arm-domainservices/src/domainServicesResourceProvider.ts index ef5e00f29f75..45d515538317 100644 --- a/sdk/domainservices/arm-domainservices/src/domainServicesResourceProvider.ts +++ b/sdk/domainservices/arm-domainservices/src/domainServicesResourceProvider.ts @@ -31,7 +31,7 @@ import { DomainServicesResourceProviderOptionalParams } from "./models"; export class DomainServicesResourceProvider extends coreClient.ServiceClient { $host: string; apiVersion: string; - subscriptionId: string; + subscriptionId?: string; /** * Initializes a new instance of the DomainServicesResourceProvider class. @@ -44,12 +44,28 @@ export class DomainServicesResourceProvider extends coreClient.ServiceClient { credentials: coreAuth.TokenCredential, subscriptionId: string, options?: DomainServicesResourceProviderOptionalParams + ); + constructor( + credentials: coreAuth.TokenCredential, + options?: DomainServicesResourceProviderOptionalParams + ); + constructor( + credentials: coreAuth.TokenCredential, + subscriptionIdOrOptions?: + | DomainServicesResourceProviderOptionalParams + | string, + options?: DomainServicesResourceProviderOptionalParams ) { if (credentials === undefined) { throw new Error("'credentials' cannot be null"); } - if (subscriptionId === undefined) { - throw new Error("'subscriptionId' cannot be null"); + + let subscriptionId: string | undefined; + + if (typeof subscriptionIdOrOptions === "string") { + subscriptionId = subscriptionIdOrOptions; + } else if (typeof subscriptionIdOrOptions === "object") { + options = subscriptionIdOrOptions; } // Initializing default values for options @@ -61,7 +77,7 @@ export class DomainServicesResourceProvider extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-domainservices/4.1.1`; + const packageDetails = `azsdk-js-arm-domainservices/5.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -114,7 +130,7 @@ export class DomainServicesResourceProvider extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2021-05-01"; + this.apiVersion = options.apiVersion || "2022-12-01"; this.domainServiceOperations = new DomainServiceOperationsImpl(this); this.domainServices = new DomainServicesImpl(this); this.ouContainerOperations = new OuContainerOperationsImpl(this); diff --git a/sdk/domainservices/arm-domainservices/src/lroImpl.ts b/sdk/domainservices/arm-domainservices/src/lroImpl.ts index 518d5f053b4e..dd803cd5e28c 100644 --- a/sdk/domainservices/arm-domainservices/src/lroImpl.ts +++ b/sdk/domainservices/arm-domainservices/src/lroImpl.ts @@ -6,29 +6,37 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { AbortSignalLike } from "@azure/abort-controller"; import { LongRunningOperation, LroResponse } from "@azure/core-lro"; -export class LroImpl implements LongRunningOperation { - constructor( - private sendOperationFn: (args: any, spec: any) => Promise>, - private args: Record, - private spec: { - readonly requestBody?: unknown; - readonly path?: string; - readonly httpMethod: string; - } & Record, - public requestPath: string = spec.path!, - public requestMethod: string = spec.httpMethod - ) {} - public async sendInitialRequest(): Promise> { - return this.sendOperationFn(this.args, this.spec); - } - public async sendPollRequest(path: string): Promise> { - const { requestBody, ...restSpec } = this.spec; - return this.sendOperationFn(this.args, { - ...restSpec, - path, - httpMethod: "GET" - }); - } +export function createLroSpec(inputs: { + sendOperationFn: (args: any, spec: any) => Promise>; + args: Record; + spec: { + readonly requestBody?: unknown; + readonly path?: string; + readonly httpMethod: string; + } & Record; +}): LongRunningOperation { + const { args, spec, sendOperationFn } = inputs; + return { + requestMethod: spec.httpMethod, + requestPath: spec.path!, + sendInitialRequest: () => sendOperationFn(args, spec), + sendPollRequest: ( + path: string, + options?: { abortSignal?: AbortSignalLike } + ) => { + const { requestBody, ...restSpec } = spec; + return sendOperationFn(args, { + ...restSpec, + httpMethod: "GET", + path, + abortSignal: options?.abortSignal + }); + } + }; } diff --git a/sdk/domainservices/arm-domainservices/src/models/index.ts b/sdk/domainservices/arm-domainservices/src/models/index.ts index bba4983a26c6..ca9b56e7a06b 100644 --- a/sdk/domainservices/arm-domainservices/src/models/index.ts +++ b/sdk/domainservices/arm-domainservices/src/models/index.ts @@ -241,6 +241,10 @@ export interface DomainSecuritySettings { kerberosRc4Encryption?: KerberosRc4Encryption; /** A flag to determine whether or not KerberosArmoring is enabled or disabled. */ kerberosArmoring?: KerberosArmoring; + /** A flag to determine whether or not LdapSigning is enabled or disabled. */ + ldapSigning?: LdapSigning; + /** A flag to determine whether or not ChannelBinding is enabled or disabled. */ + channelBinding?: ChannelBinding; } /** Settings for notification */ @@ -399,6 +403,11 @@ export interface DomainService extends Resource { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly syncOwner?: string; + /** + * The unique sync application id of the Azure AD Domain Services deployment. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly syncApplicationId?: string; /** List of ReplicaSets */ replicaSets?: ReplicaSet[]; /** Secure LDAP Settings */ @@ -413,6 +422,8 @@ export interface DomainService extends Resource { sku?: string; /** Enabled or Disabled flag to turn on Group-based filtered sync */ filteredSync?: FilteredSync; + /** All or CloudOnly, All users in AAD are synced to AAD DS domain or only users actively syncing in the cloud */ + syncScope?: SyncScope; /** Notification Settings */ notificationSettings?: NotificationSettings; /** @@ -632,6 +643,42 @@ export enum KnownKerberosArmoring { */ export type KerberosArmoring = string; +/** Known values of {@link LdapSigning} that the service accepts. */ +export enum KnownLdapSigning { + /** Enabled */ + Enabled = "Enabled", + /** Disabled */ + Disabled = "Disabled" +} + +/** + * Defines values for LdapSigning. \ + * {@link KnownLdapSigning} can be used interchangeably with LdapSigning, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Enabled** \ + * **Disabled** + */ +export type LdapSigning = string; + +/** Known values of {@link ChannelBinding} that the service accepts. */ +export enum KnownChannelBinding { + /** Enabled */ + Enabled = "Enabled", + /** Disabled */ + Disabled = "Disabled" +} + +/** + * Defines values for ChannelBinding. \ + * {@link KnownChannelBinding} can be used interchangeably with ChannelBinding, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Enabled** \ + * **Disabled** + */ +export type ChannelBinding = string; + /** Known values of {@link FilteredSync} that the service accepts. */ export enum KnownFilteredSync { /** Enabled */ @@ -650,6 +697,24 @@ export enum KnownFilteredSync { */ export type FilteredSync = string; +/** Known values of {@link SyncScope} that the service accepts. */ +export enum KnownSyncScope { + /** All */ + All = "All", + /** CloudOnly */ + CloudOnly = "CloudOnly" +} + +/** + * Defines values for SyncScope. \ + * {@link KnownSyncScope} can be used interchangeably with SyncScope, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **All** \ + * **CloudOnly** + */ +export type SyncScope = string; + /** Known values of {@link NotifyGlobalAdmins} that the service accepts. */ export enum KnownNotifyGlobalAdmins { /** Enabled */ diff --git a/sdk/domainservices/arm-domainservices/src/models/mappers.ts b/sdk/domainservices/arm-domainservices/src/models/mappers.ts index 4f3eea7f17ff..d797e9bf7562 100644 --- a/sdk/domainservices/arm-domainservices/src/models/mappers.ts +++ b/sdk/domainservices/arm-domainservices/src/models/mappers.ts @@ -537,6 +537,20 @@ export const DomainSecuritySettings: coreClient.CompositeMapper = { type: { name: "String" } + }, + ldapSigning: { + defaultValue: "Disabled", + serializedName: "ldapSigning", + type: { + name: "String" + } + }, + channelBinding: { + defaultValue: "Disabled", + serializedName: "channelBinding", + type: { + name: "String" + } } } } @@ -914,6 +928,13 @@ export const DomainService: coreClient.CompositeMapper = { name: "String" } }, + syncApplicationId: { + serializedName: "properties.syncApplicationId", + readOnly: true, + type: { + name: "String" + } + }, replicaSets: { serializedName: "properties.replicaSets", type: { @@ -965,6 +986,13 @@ export const DomainService: coreClient.CompositeMapper = { name: "String" } }, + syncScope: { + defaultValue: "All", + serializedName: "properties.syncScope", + type: { + name: "String" + } + }, notificationSettings: { serializedName: "properties.notificationSettings", type: { diff --git a/sdk/domainservices/arm-domainservices/src/models/parameters.ts b/sdk/domainservices/arm-domainservices/src/models/parameters.ts index 69de521bfcd9..b8ec1bf25332 100644 --- a/sdk/domainservices/arm-domainservices/src/models/parameters.ts +++ b/sdk/domainservices/arm-domainservices/src/models/parameters.ts @@ -43,7 +43,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2021-05-01", + defaultValue: "2022-12-01", isConstant: true, serializedName: "api-version", type: { diff --git a/sdk/domainservices/arm-domainservices/src/operations/domainServiceOperations.ts b/sdk/domainservices/arm-domainservices/src/operations/domainServiceOperations.ts index 5d3623b709a7..60aa7cea74dd 100644 --- a/sdk/domainservices/arm-domainservices/src/operations/domainServiceOperations.ts +++ b/sdk/domainservices/arm-domainservices/src/operations/domainServiceOperations.ts @@ -143,7 +143,6 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.$host, Parameters.nextLink], headerParameters: [Parameters.accept], serializer diff --git a/sdk/domainservices/arm-domainservices/src/operations/domainServices.ts b/sdk/domainservices/arm-domainservices/src/operations/domainServices.ts index 1ea2759158c3..1314ee42a860 100644 --- a/sdk/domainservices/arm-domainservices/src/operations/domainServices.ts +++ b/sdk/domainservices/arm-domainservices/src/operations/domainServices.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { DomainServicesResourceProvider } from "../domainServicesResourceProvider"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { DomainService, DomainServicesListNextOptionalParams, @@ -217,8 +221,8 @@ export class DomainServicesImpl implements DomainServices { domainService: DomainService, options?: DomainServicesCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainServicesCreateOrUpdateResponse > > { @@ -228,7 +232,7 @@ export class DomainServicesImpl implements DomainServices { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -261,13 +265,16 @@ export class DomainServicesImpl implements DomainServices { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainServiceName, domainService, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainServiceName, domainService, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + DomainServicesCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -328,14 +335,14 @@ export class DomainServicesImpl implements DomainServices { resourceGroupName: string, domainServiceName: string, options?: DomainServicesDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -368,13 +375,13 @@ export class DomainServicesImpl implements DomainServices { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainServiceName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainServiceName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -416,8 +423,8 @@ export class DomainServicesImpl implements DomainServices { domainService: DomainService, options?: DomainServicesUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainServicesUpdateResponse > > { @@ -427,7 +434,7 @@ export class DomainServicesImpl implements DomainServices { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -460,13 +467,16 @@ export class DomainServicesImpl implements DomainServices { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainServiceName, domainService, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainServiceName, domainService, options }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + DomainServicesUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -693,7 +703,6 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.nextLink, @@ -713,7 +722,6 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.nextLink, diff --git a/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperationGrp.ts b/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperationGrp.ts index dee64711bce0..0a11b48d080f 100644 --- a/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperationGrp.ts +++ b/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperationGrp.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { DomainServicesResourceProvider } from "../domainServicesResourceProvider"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { OuContainer, OuContainerListNextOptionalParams, @@ -180,8 +184,8 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { containerAccount: ContainerAccount, options?: OuContainerCreateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, OuContainerCreateResponse > > { @@ -191,7 +195,7 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -224,19 +228,22 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainServiceName, ouContainerName, containerAccount, options }, - createOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOperationSpec + }); + const poller = await createHttpPoller< + OuContainerCreateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -283,14 +290,14 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { domainServiceName: string, ouContainerName: string, options?: OuContainerDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -323,13 +330,13 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainServiceName, ouContainerName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainServiceName, ouContainerName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -375,8 +382,8 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { containerAccount: ContainerAccount, options?: OuContainerUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, OuContainerUpdateResponse > > { @@ -386,7 +393,7 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -419,19 +426,22 @@ export class OuContainerOperationGrpImpl implements OuContainerOperationGrp { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainServiceName, ouContainerName, containerAccount, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + OuContainerUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -635,7 +645,6 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.nextLink, diff --git a/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperations.ts b/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperations.ts index 0c4e52ce4e57..12c3fded7971 100644 --- a/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperations.ts +++ b/sdk/domainservices/arm-domainservices/src/operations/ouContainerOperations.ts @@ -143,7 +143,6 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.$host, Parameters.nextLink], headerParameters: [Parameters.accept], serializer diff --git a/sdk/domainservices/arm-domainservices/src/operationsInterfaces/domainServices.ts b/sdk/domainservices/arm-domainservices/src/operationsInterfaces/domainServices.ts index ba010df5a745..ae8d945c1c06 100644 --- a/sdk/domainservices/arm-domainservices/src/operationsInterfaces/domainServices.ts +++ b/sdk/domainservices/arm-domainservices/src/operationsInterfaces/domainServices.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { DomainService, DomainServicesListOptionalParams, @@ -59,8 +59,8 @@ export interface DomainServices { domainService: DomainService, options?: DomainServicesCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainServicesCreateOrUpdateResponse > >; @@ -103,7 +103,7 @@ export interface DomainServices { resourceGroupName: string, domainServiceName: string, options?: DomainServicesDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * The Delete Domain Service operation deletes an existing Domain Service. * @param resourceGroupName The name of the resource group within the user's subscription. The name is @@ -131,8 +131,8 @@ export interface DomainServices { domainService: DomainService, options?: DomainServicesUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainServicesUpdateResponse > >; diff --git a/sdk/domainservices/arm-domainservices/src/operationsInterfaces/ouContainerOperationGrp.ts b/sdk/domainservices/arm-domainservices/src/operationsInterfaces/ouContainerOperationGrp.ts index 7cf0f2a370dc..cca31b02dce8 100644 --- a/sdk/domainservices/arm-domainservices/src/operationsInterfaces/ouContainerOperationGrp.ts +++ b/sdk/domainservices/arm-domainservices/src/operationsInterfaces/ouContainerOperationGrp.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { OuContainer, OuContainerListOptionalParams, @@ -67,8 +67,8 @@ export interface OuContainerOperationGrp { containerAccount: ContainerAccount, options?: OuContainerCreateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, OuContainerCreateResponse > >; @@ -102,7 +102,7 @@ export interface OuContainerOperationGrp { domainServiceName: string, ouContainerName: string, options?: OuContainerDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * The Delete OuContainer operation deletes specified OuContainer. * @param resourceGroupName The name of the resource group within the user's subscription. The name is @@ -133,8 +133,8 @@ export interface OuContainerOperationGrp { containerAccount: ContainerAccount, options?: OuContainerUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, OuContainerUpdateResponse > >; diff --git a/sdk/domainservices/arm-domainservices/src/pagingHelper.ts b/sdk/domainservices/arm-domainservices/src/pagingHelper.ts index d85fc13bce1e..269a2b9814b5 100644 --- a/sdk/domainservices/arm-domainservices/src/pagingHelper.ts +++ b/sdk/domainservices/arm-domainservices/src/pagingHelper.ts @@ -13,11 +13,11 @@ export interface PageInfo { const pageMap = new WeakMap(); /** - * Given a result page from a pageable operation, returns a - * continuation token that can be used to begin paging from + * Given the last `.value` produced by the `byPage` iterator, + * returns a continuation token that can be used to begin paging from * that point later. - * @param page A result object from calling .byPage() on a paged operation. - * @returns The continuation token that can be passed into byPage(). + * @param page An object from accessing `value` on the IteratorResult from a `byPage` iterator. + * @returns The continuation token that can be passed into byPage() during future calls. */ export function getContinuationToken(page: unknown): string | undefined { if (typeof page !== "object" || page === null) { diff --git a/sdk/domainservices/arm-domainservices/tsconfig.json b/sdk/domainservices/arm-domainservices/tsconfig.json index b5a74cbfe488..3e6ae96443f3 100644 --- a/sdk/domainservices/arm-domainservices/tsconfig.json +++ b/sdk/domainservices/arm-domainservices/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-domainservices": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"