@azure/arm-appservice
Version:
A generated SDK for WebSiteManagementClient.
1,139 lines • 151 kB
JavaScript
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
import { setContinuationToken } from "../pagingHelper.js";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers.js";
import * as Parameters from "../models/parameters.js";
import { createHttpPoller } from "@azure/core-lro";
import { createLroSpec } from "../lroImpl.js";
/// <reference lib="esnext.asynciterable" />
/** Class containing AppServiceEnvironments operations. */
export class AppServiceEnvironmentsImpl {
client;
/**
* Initialize a new instance of the class AppServiceEnvironments class.
* @param client Reference to the service client
*/
constructor(client) {
this.client = client;
}
/**
* Description for Get all App Service Environments for a subscription.
* @param options The options parameters.
*/
list(options) {
const iter = this.listPagingAll(options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listPagingPage(options, settings);
},
};
}
async *listPagingPage(options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._list(options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listNext(continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listPagingAll(options) {
for await (const page of this.listPagingPage(options)) {
yield* page;
}
}
/**
* Description for Get all App Service Environments in a resource group.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param options The options parameters.
*/
listByResourceGroup(resourceGroupName, options) {
const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listByResourceGroupPagingPage(resourceGroupName, options, settings);
},
};
}
async *listByResourceGroupPagingPage(resourceGroupName, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listByResourceGroup(resourceGroupName, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listByResourceGroupNext(resourceGroupName, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listByResourceGroupPagingAll(resourceGroupName, options) {
for await (const page of this.listByResourceGroupPagingPage(resourceGroupName, options)) {
yield* page;
}
}
/**
* Description for Get the used, available, and total worker capacity an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listCapacities(resourceGroupName, name, options) {
const iter = this.listCapacitiesPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listCapacitiesPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listCapacitiesPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listCapacities(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listCapacitiesNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listCapacitiesPagingAll(resourceGroupName, name, options) {
for await (const page of this.listCapacitiesPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Move an App Service Environment to a different VNET.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param vnetInfo Details for the new virtual network.
* @param options The options parameters.
*/
beginListChangeVnetAndWait(resourceGroupName, name, vnetInfo, options) {
const iter = this.changeVnetPagingAll(resourceGroupName, name, vnetInfo, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.changeVnetPagingPage(resourceGroupName, name, vnetInfo, options, settings);
},
};
}
async *changeVnetPagingPage(resourceGroupName, name, vnetInfo, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
const poller = await this._changeVnet(resourceGroupName, name, vnetInfo, options);
result = await poller.pollUntilDone();
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._changeVnetNext(resourceGroupName, name, vnetInfo, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *changeVnetPagingAll(resourceGroupName, name, vnetInfo, options) {
for await (const page of this.changeVnetPagingPage(resourceGroupName, name, vnetInfo, options)) {
yield* page;
}
}
/**
* Description for Get the network endpoints of all inbound dependencies of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listInboundNetworkDependenciesEndpoints(resourceGroupName, name, options) {
const iter = this.getInboundNetworkDependenciesEndpointsPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.getInboundNetworkDependenciesEndpointsPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *getInboundNetworkDependenciesEndpointsPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._getInboundNetworkDependenciesEndpoints(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._getInboundNetworkDependenciesEndpointsNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *getInboundNetworkDependenciesEndpointsPagingAll(resourceGroupName, name, options) {
for await (const page of this.getInboundNetworkDependenciesEndpointsPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get all multi-role pools.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listMultiRolePools(resourceGroupName, name, options) {
const iter = this.listMultiRolePoolsPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listMultiRolePoolsPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listMultiRolePoolsPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listMultiRolePools(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listMultiRolePoolsNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listMultiRolePoolsPagingAll(resourceGroupName, name, options) {
for await (const page of this.listMultiRolePoolsPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get metric definitions for a specific instance of a multi-role pool of an App
* Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param instance Name of the instance in the multi-role pool.
* @param options The options parameters.
*/
listMultiRolePoolInstanceMetricDefinitions(resourceGroupName, name, instance, options) {
const iter = this.listMultiRolePoolInstanceMetricDefinitionsPagingAll(resourceGroupName, name, instance, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listMultiRolePoolInstanceMetricDefinitionsPagingPage(resourceGroupName, name, instance, options, settings);
},
};
}
async *listMultiRolePoolInstanceMetricDefinitionsPagingPage(resourceGroupName, name, instance, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listMultiRolePoolInstanceMetricDefinitions(resourceGroupName, name, instance, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listMultiRolePoolInstanceMetricDefinitionsNext(resourceGroupName, name, instance, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listMultiRolePoolInstanceMetricDefinitionsPagingAll(resourceGroupName, name, instance, options) {
for await (const page of this.listMultiRolePoolInstanceMetricDefinitionsPagingPage(resourceGroupName, name, instance, options)) {
yield* page;
}
}
/**
* Description for Get metric definitions for a multi-role pool of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listMultiRoleMetricDefinitions(resourceGroupName, name, options) {
const iter = this.listMultiRoleMetricDefinitionsPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listMultiRoleMetricDefinitionsPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listMultiRoleMetricDefinitionsPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listMultiRoleMetricDefinitions(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listMultiRoleMetricDefinitionsNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listMultiRoleMetricDefinitionsPagingAll(resourceGroupName, name, options) {
for await (const page of this.listMultiRoleMetricDefinitionsPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get available SKUs for scaling a multi-role pool.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listMultiRolePoolSkus(resourceGroupName, name, options) {
const iter = this.listMultiRolePoolSkusPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listMultiRolePoolSkusPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listMultiRolePoolSkusPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listMultiRolePoolSkus(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listMultiRolePoolSkusNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listMultiRolePoolSkusPagingAll(resourceGroupName, name, options) {
for await (const page of this.listMultiRolePoolSkusPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get usage metrics for a multi-role pool of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listMultiRoleUsages(resourceGroupName, name, options) {
const iter = this.listMultiRoleUsagesPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listMultiRoleUsagesPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listMultiRoleUsagesPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listMultiRoleUsages(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listMultiRoleUsagesNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listMultiRoleUsagesPagingAll(resourceGroupName, name, options) {
for await (const page of this.listMultiRoleUsagesPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get the network endpoints of all outbound dependencies of an App Service
* Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listOutboundNetworkDependenciesEndpoints(resourceGroupName, name, options) {
const iter = this.getOutboundNetworkDependenciesEndpointsPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.getOutboundNetworkDependenciesEndpointsPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *getOutboundNetworkDependenciesEndpointsPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._getOutboundNetworkDependenciesEndpoints(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._getOutboundNetworkDependenciesEndpointsNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *getOutboundNetworkDependenciesEndpointsPagingAll(resourceGroupName, name, options) {
for await (const page of this.getOutboundNetworkDependenciesEndpointsPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Gets the list of private endpoints associated with a hosting environment
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listPrivateEndpointConnectionList(resourceGroupName, name, options) {
const iter = this.getPrivateEndpointConnectionListPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.getPrivateEndpointConnectionListPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *getPrivateEndpointConnectionListPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._getPrivateEndpointConnectionList(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._getPrivateEndpointConnectionListNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *getPrivateEndpointConnectionListPagingAll(resourceGroupName, name, options) {
for await (const page of this.getPrivateEndpointConnectionListPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Resume an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
beginListResumeAndWait(resourceGroupName, name, options) {
const iter = this.resumePagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.resumePagingPage(resourceGroupName, name, options, settings);
},
};
}
async *resumePagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
const poller = await this._resume(resourceGroupName, name, options);
result = await poller.pollUntilDone();
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._resumeNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *resumePagingAll(resourceGroupName, name, options) {
for await (const page of this.resumePagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get all App Service plans in an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listAppServicePlans(resourceGroupName, name, options) {
const iter = this.listAppServicePlansPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listAppServicePlansPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listAppServicePlansPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listAppServicePlans(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listAppServicePlansNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listAppServicePlansPagingAll(resourceGroupName, name, options) {
for await (const page of this.listAppServicePlansPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get all apps in an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listWebApps(resourceGroupName, name, options) {
const iter = this.listWebAppsPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listWebAppsPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listWebAppsPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listWebApps(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listWebAppsNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listWebAppsPagingAll(resourceGroupName, name, options) {
for await (const page of this.listWebAppsPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Suspend an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
beginListSuspendAndWait(resourceGroupName, name, options) {
const iter = this.suspendPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.suspendPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *suspendPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
const poller = await this._suspend(resourceGroupName, name, options);
result = await poller.pollUntilDone();
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._suspendNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *suspendPagingAll(resourceGroupName, name, options) {
for await (const page of this.suspendPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get global usage metrics of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listUsages(resourceGroupName, name, options) {
const iter = this.listUsagesPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listUsagesPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listUsagesPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listUsages(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listUsagesNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listUsagesPagingAll(resourceGroupName, name, options) {
for await (const page of this.listUsagesPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get all worker pools of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
listWorkerPools(resourceGroupName, name, options) {
const iter = this.listWorkerPoolsPagingAll(resourceGroupName, name, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listWorkerPoolsPagingPage(resourceGroupName, name, options, settings);
},
};
}
async *listWorkerPoolsPagingPage(resourceGroupName, name, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listWorkerPools(resourceGroupName, name, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listWorkerPoolsNext(resourceGroupName, name, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listWorkerPoolsPagingAll(resourceGroupName, name, options) {
for await (const page of this.listWorkerPoolsPagingPage(resourceGroupName, name, options)) {
yield* page;
}
}
/**
* Description for Get metric definitions for a specific instance of a worker pool of an App Service
* Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param workerPoolName Name of the worker pool.
* @param instance Name of the instance in the worker pool.
* @param options The options parameters.
*/
listWorkerPoolInstanceMetricDefinitions(resourceGroupName, name, workerPoolName, instance, options) {
const iter = this.listWorkerPoolInstanceMetricDefinitionsPagingAll(resourceGroupName, name, workerPoolName, instance, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listWorkerPoolInstanceMetricDefinitionsPagingPage(resourceGroupName, name, workerPoolName, instance, options, settings);
},
};
}
async *listWorkerPoolInstanceMetricDefinitionsPagingPage(resourceGroupName, name, workerPoolName, instance, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listWorkerPoolInstanceMetricDefinitions(resourceGroupName, name, workerPoolName, instance, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listWorkerPoolInstanceMetricDefinitionsNext(resourceGroupName, name, workerPoolName, instance, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listWorkerPoolInstanceMetricDefinitionsPagingAll(resourceGroupName, name, workerPoolName, instance, options) {
for await (const page of this.listWorkerPoolInstanceMetricDefinitionsPagingPage(resourceGroupName, name, workerPoolName, instance, options)) {
yield* page;
}
}
/**
* Description for Get metric definitions for a worker pool of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param workerPoolName Name of the worker pool.
* @param options The options parameters.
*/
listWebWorkerMetricDefinitions(resourceGroupName, name, workerPoolName, options) {
const iter = this.listWebWorkerMetricDefinitionsPagingAll(resourceGroupName, name, workerPoolName, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listWebWorkerMetricDefinitionsPagingPage(resourceGroupName, name, workerPoolName, options, settings);
},
};
}
async *listWebWorkerMetricDefinitionsPagingPage(resourceGroupName, name, workerPoolName, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listWebWorkerMetricDefinitions(resourceGroupName, name, workerPoolName, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listWebWorkerMetricDefinitionsNext(resourceGroupName, name, workerPoolName, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listWebWorkerMetricDefinitionsPagingAll(resourceGroupName, name, workerPoolName, options) {
for await (const page of this.listWebWorkerMetricDefinitionsPagingPage(resourceGroupName, name, workerPoolName, options)) {
yield* page;
}
}
/**
* Description for Get available SKUs for scaling a worker pool.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param workerPoolName Name of the worker pool.
* @param options The options parameters.
*/
listWorkerPoolSkus(resourceGroupName, name, workerPoolName, options) {
const iter = this.listWorkerPoolSkusPagingAll(resourceGroupName, name, workerPoolName, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listWorkerPoolSkusPagingPage(resourceGroupName, name, workerPoolName, options, settings);
},
};
}
async *listWorkerPoolSkusPagingPage(resourceGroupName, name, workerPoolName, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listWorkerPoolSkus(resourceGroupName, name, workerPoolName, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listWorkerPoolSkusNext(resourceGroupName, name, workerPoolName, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listWorkerPoolSkusPagingAll(resourceGroupName, name, workerPoolName, options) {
for await (const page of this.listWorkerPoolSkusPagingPage(resourceGroupName, name, workerPoolName, options)) {
yield* page;
}
}
/**
* Description for Get usage metrics for a worker pool of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param workerPoolName Name of the worker pool.
* @param options The options parameters.
*/
listWebWorkerUsages(resourceGroupName, name, workerPoolName, options) {
const iter = this.listWebWorkerUsagesPagingAll(resourceGroupName, name, workerPoolName, options);
return {
next() {
return iter.next();
},
[Symbol.asyncIterator]() {
return this;
},
byPage: (settings) => {
if (settings?.maxPageSize) {
throw new Error("maxPageSize is not supported by this operation.");
}
return this.listWebWorkerUsagesPagingPage(resourceGroupName, name, workerPoolName, options, settings);
},
};
}
async *listWebWorkerUsagesPagingPage(resourceGroupName, name, workerPoolName, options, settings) {
let result;
let continuationToken = settings?.continuationToken;
if (!continuationToken) {
result = await this._listWebWorkerUsages(resourceGroupName, name, workerPoolName, options);
const page = result.value || [];
continuationToken = result.nextLink;
setContinuationToken(page, continuationToken);
yield page;
}
while (continuationToken) {
result = await this._listWebWorkerUsagesNext(resourceGroupName, name, workerPoolName, continuationToken, options);
continuationToken = result.nextLink;
const page = result.value || [];
setContinuationToken(page, continuationToken);
yield page;
}
}
async *listWebWorkerUsagesPagingAll(resourceGroupName, name, workerPoolName, options) {
for await (const page of this.listWebWorkerUsagesPagingPage(resourceGroupName, name, workerPoolName, options)) {
yield* page;
}
}
/**
* Description for Get all App Service Environments for a subscription.
* @param options The options parameters.
*/
_list(options) {
return this.client.sendOperationRequest({ options }, listOperationSpec);
}
/**
* Description for Get all App Service Environments in a resource group.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param options The options parameters.
*/
_listByResourceGroup(resourceGroupName, options) {
return this.client.sendOperationRequest({ resourceGroupName, options }, listByResourceGroupOperationSpec);
}
/**
* Description for Get the properties of an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
get(resourceGroupName, name, options) {
return this.client.sendOperationRequest({ resourceGroupName, name, options }, getOperationSpec);
}
/**
* Description for Create or update an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param hostingEnvironmentEnvelope Configuration details of the App Service Environment.
* @param options The options parameters.
*/
async beginCreateOrUpdate(resourceGroupName, name, hostingEnvironmentEnvelope, options) {
const directSendOperation = async (args, spec) => {
return this.client.sendOperationRequest(args, spec);
};
const sendOperationFn = async (args, spec) => {
let currentRawResponse = undefined;
const providedCallback = args.options?.onResponse;
const callback = (rawResponse, flatResponse) => {
currentRawResponse = rawResponse;
providedCallback?.(rawResponse, flatResponse);
};
const updatedArgs = {
...args,
options: {
...args.options,
onResponse: callback,
},
};
const flatResponse = await directSendOperation(updatedArgs, spec);
return {
flatResponse,
rawResponse: {
statusCode: currentRawResponse.status,
body: currentRawResponse.parsedBody,
headers: currentRawResponse.headers.toJSON(),
},
};
};
const lro = createLroSpec({
sendOperationFn,
args: { resourceGroupName, name, hostingEnvironmentEnvelope, options },
spec: createOrUpdateOperationSpec,
});
const poller = await createHttpPoller(lro, {
restoreFrom: options?.resumeFrom,
intervalInMs: options?.updateIntervalInMs,
});
await poller.poll();
return poller;
}
/**
* Description for Create or update an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param hostingEnvironmentEnvelope Configuration details of the App Service Environment.
* @param options The options parameters.
*/
async beginCreateOrUpdateAndWait(resourceGroupName, name, hostingEnvironmentEnvelope, options) {
const poller = await this.beginCreateOrUpdate(resourceGroupName, name, hostingEnvironmentEnvelope, options);
return poller.pollUntilDone();
}
/**
* Description for Delete an App Service Environment.
* @param resourceGroupName Name of the resource group to which the resource belongs.
* @param name Name of the App Service Environment.
* @param options The options parameters.
*/
async beginDelete(resourceGroupName, name, options) {
const directSendOperation = async (args, spec) => {
return this.client.sendOperationRequest(args, spec);
};
const sendOperationFn = async (args, spec) => {
let currentRawResponse = undefined;
const providedCallback = args.options?.onResponse;
const callback = (rawResponse, flatResponse) => {
currentRawResponse = rawResponse;
providedCallback?.(rawResponse, f