Skip to content
This repository was archived by the owner on Aug 26, 2025. It is now read-only.
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
118 changes: 4 additions & 114 deletions sdk/frontdoor/arm-frontdoor/src/frontDoorManagementClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import * as msRest from "@azure/ms-rest-js";
import * as Models from "./models";
import * as Mappers from "./models/mappers";
import * as Parameters from "./models/parameters";
import * as operations from "./operations";
import { FrontDoorManagementClientContext } from "./frontDoorManagementClientContext";

Expand All @@ -22,6 +21,8 @@ class FrontDoorManagementClient extends FrontDoorManagementClientContext {
preconfiguredEndpoints: operations.PreconfiguredEndpoints;
experiments: operations.Experiments;
reports: operations.Reports;
frontDoorNameAvailability: operations.FrontDoorNameAvailability;
frontDoorNameAvailabilityWithSubscription: operations.FrontDoorNameAvailabilityWithSubscription;
frontDoors: operations.FrontDoors;
frontendEndpoints: operations.FrontendEndpoints;
endpoints: operations.Endpoints;
Expand All @@ -42,129 +43,18 @@ class FrontDoorManagementClient extends FrontDoorManagementClientContext {
this.preconfiguredEndpoints = new operations.PreconfiguredEndpoints(this);
this.experiments = new operations.Experiments(this);
this.reports = new operations.Reports(this);
this.frontDoorNameAvailability = new operations.FrontDoorNameAvailability(this);
this.frontDoorNameAvailabilityWithSubscription = new operations.FrontDoorNameAvailabilityWithSubscription(this);
this.frontDoors = new operations.FrontDoors(this);
this.frontendEndpoints = new operations.FrontendEndpoints(this);
this.endpoints = new operations.Endpoints(this);
this.rulesEngines = new operations.RulesEngines(this);
this.policies = new operations.Policies(this);
this.managedRuleSets = new operations.ManagedRuleSets(this);
}

/**
* Check the availability of a Front Door resource name.
* @param checkFrontDoorNameAvailabilityInput Input to check.
* @param [options] The optional parameters
* @returns Promise<Models.CheckFrontDoorNameAvailabilityResponse>
*/
checkFrontDoorNameAvailability(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, options?: msRest.RequestOptionsBase): Promise<Models.CheckFrontDoorNameAvailabilityResponse>;
/**
* @param checkFrontDoorNameAvailabilityInput Input to check.
* @param callback The callback
*/
checkFrontDoorNameAvailability(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, callback: msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>): void;
/**
* @param checkFrontDoorNameAvailabilityInput Input to check.
* @param options The optional parameters
* @param callback The callback
*/
checkFrontDoorNameAvailability(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>): void;
checkFrontDoorNameAvailability(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, options?: msRest.RequestOptionsBase | msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>, callback?: msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>): Promise<Models.CheckFrontDoorNameAvailabilityResponse> {
return this.sendOperationRequest(
{
checkFrontDoorNameAvailabilityInput,
options
},
checkFrontDoorNameAvailabilityOperationSpec,
callback) as Promise<Models.CheckFrontDoorNameAvailabilityResponse>;
}

/**
* Check the availability of a Front Door subdomain.
* @param checkFrontDoorNameAvailabilityInput Input to check.
* @param [options] The optional parameters
* @returns Promise<Models.CheckFrontDoorNameAvailabilityWithSubscriptionResponse>
*/
checkFrontDoorNameAvailabilityWithSubscription(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, options?: msRest.RequestOptionsBase): Promise<Models.CheckFrontDoorNameAvailabilityWithSubscriptionResponse>;
/**
* @param checkFrontDoorNameAvailabilityInput Input to check.
* @param callback The callback
*/
checkFrontDoorNameAvailabilityWithSubscription(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, callback: msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>): void;
/**
* @param checkFrontDoorNameAvailabilityInput Input to check.
* @param options The optional parameters
* @param callback The callback
*/
checkFrontDoorNameAvailabilityWithSubscription(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>): void;
checkFrontDoorNameAvailabilityWithSubscription(checkFrontDoorNameAvailabilityInput: Models.CheckNameAvailabilityInput, options?: msRest.RequestOptionsBase | msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>, callback?: msRest.ServiceCallback<Models.CheckNameAvailabilityOutput>): Promise<Models.CheckFrontDoorNameAvailabilityWithSubscriptionResponse> {
return this.sendOperationRequest(
{
checkFrontDoorNameAvailabilityInput,
options
},
checkFrontDoorNameAvailabilityWithSubscriptionOperationSpec,
callback) as Promise<Models.CheckFrontDoorNameAvailabilityWithSubscriptionResponse>;
}
}

// Operation Specifications
const serializer = new msRest.Serializer(Mappers);
const checkFrontDoorNameAvailabilityOperationSpec: msRest.OperationSpec = {
httpMethod: "POST",
path: "providers/Microsoft.Network/checkFrontDoorNameAvailability",
queryParameters: [
Parameters.apiVersion1
],
headerParameters: [
Parameters.acceptLanguage
],
requestBody: {
parameterPath: "checkFrontDoorNameAvailabilityInput",
mapper: {
...Mappers.CheckNameAvailabilityInput,
required: true
}
},
responses: {
200: {
bodyMapper: Mappers.CheckNameAvailabilityOutput
},
default: {
bodyMapper: Mappers.ErrorResponse
}
},
serializer
};

const checkFrontDoorNameAvailabilityWithSubscriptionOperationSpec: msRest.OperationSpec = {
httpMethod: "POST",
path: "subscriptions/{subscriptionId}/providers/Microsoft.Network/checkFrontDoorNameAvailability",
urlParameters: [
Parameters.subscriptionId
],
queryParameters: [
Parameters.apiVersion1
],
headerParameters: [
Parameters.acceptLanguage
],
requestBody: {
parameterPath: "checkFrontDoorNameAvailabilityInput",
mapper: {
...Mappers.CheckNameAvailabilityInput,
required: true
}
},
responses: {
200: {
bodyMapper: Mappers.CheckNameAvailabilityOutput
},
default: {
bodyMapper: Mappers.ErrorResponse
}
},
serializer
};

export {
FrontDoorManagementClient,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,10 +48,13 @@ export {
Resource,
RouteConfiguration,
RoutingRule,
RoutingRuleLink,
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink,
RulesEngine,
RulesEngineAction,
RulesEngineMatchCondition,
RulesEngineRule,
Sku,
SubResource,
Timeseries,
TimeseriesDataPoint,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/

export {
discriminators,
CheckNameAvailabilityInput,
CheckNameAvailabilityOutput,
ErrorResponse
} from "../models/mappers";
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/

export {
discriminators,
CheckNameAvailabilityInput,
CheckNameAvailabilityOutput,
ErrorResponse
} from "../models/mappers";
3 changes: 3 additions & 0 deletions sdk/frontdoor/arm-frontdoor/src/models/frontDoorsMappers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,13 @@ export {
Resource,
RouteConfiguration,
RoutingRule,
RoutingRuleLink,
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink,
RulesEngine,
RulesEngineAction,
RulesEngineMatchCondition,
RulesEngineRule,
Sku,
SubResource,
Timeseries,
TimeseriesDataPoint,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,13 @@ export {
Resource,
RouteConfiguration,
RoutingRule,
RoutingRuleLink,
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink,
RulesEngine,
RulesEngineAction,
RulesEngineMatchCondition,
RulesEngineRule,
Sku,
SubResource,
Timeseries,
TimeseriesDataPoint,
Expand Down
75 changes: 71 additions & 4 deletions sdk/frontdoor/arm-frontdoor/src/models/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -521,6 +521,10 @@ export interface RoutingRule extends SubResource {
* A reference to a specific Rules Engine Configuration to apply to this route.
*/
rulesEngine?: SubResource;
/**
* Defines the Web Application Firewall policy for each routing rule (if applicable)
*/
webApplicationFirewallPolicyLink?: RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink;
/**
* Resource status. Possible values include: 'Creating', 'Enabling', 'Enabled', 'Disabling',
* 'Disabled', 'Deleting'
Expand Down Expand Up @@ -842,6 +846,16 @@ export interface RouteConfiguration {
odatatype: "RouteConfiguration";
}

/**
* Defines the Web Application Firewall policy for each routing rule (if applicable)
*/
export interface RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink {
/**
* Resource ID.
*/
id?: string;
}

/**
* Routing rules to apply to an endpoint
*/
Expand Down Expand Up @@ -871,6 +885,10 @@ export interface RoutingRuleUpdateParameters {
* A reference to a specific Rules Engine Configuration to apply to this route.
*/
rulesEngine?: SubResource;
/**
* Defines the Web Application Firewall policy for each routing rule (if applicable)
*/
webApplicationFirewallPolicyLink?: RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink;
}

/**
Expand Down Expand Up @@ -982,6 +1000,16 @@ export interface Backend {
* backend is 'Private'
*/
privateLinkAlias?: string;
/**
* The Resource Id of the Private Link resource. Populating this optional field indicates that
* this backend is 'Private'
*/
privateLinkResourceId?: string;
/**
* The location of the Private Link resource. Required only if 'privateLinkResourceId' is
* populated
*/
privateLinkLocation?: string;
/**
* The Approval status for the connection to the Private Link. Possible values include:
* 'Pending', 'Approved', 'Rejected', 'Disconnected', 'Timeout'
Expand Down Expand Up @@ -1570,6 +1598,27 @@ export interface FrontendEndpointLink {
id?: string;
}

/**
* Defines the Resource ID for a Routing Rule.
*/
export interface RoutingRuleLink {
/**
* Resource ID.
*/
id?: string;
}

/**
* The pricing tier of the web application firewall policy.
*/
export interface Sku {
/**
* Name of the pricing tier. Possible values include: 'Classic_AzureFrontDoor',
* 'Standard_AzureFrontDoor', 'Premium_AzureFrontDoor'
*/
name?: SkuName;
}

/**
* Defines web application firewall policy.
*/
Expand All @@ -1591,6 +1640,11 @@ export interface WebApplicationFirewallPolicy extends Resource {
* **NOTE: This property will not be serialized. It can only be populated by the server.**
*/
readonly frontendEndpointLinks?: FrontendEndpointLink[];
/**
* Describes Routing Rules associated with this Web Application Firewall policy.
* **NOTE: This property will not be serialized. It can only be populated by the server.**
*/
readonly routingRuleLinks?: RoutingRuleLink[];
/**
* Provisioning state of the policy.
* **NOTE: This property will not be serialized. It can only be populated by the server.**
Expand All @@ -1606,6 +1660,10 @@ export interface WebApplicationFirewallPolicy extends Resource {
* Gets a unique read-only string that changes whenever the resource is updated.
*/
etag?: string;
/**
* The pricing tier of web application firewall policy.
*/
sku: Sku;
}

/**
Expand Down Expand Up @@ -2200,6 +2258,15 @@ export type ManagedRuleEnabledState = 'Disabled' | 'Enabled';
*/
export type PolicyResourceState = 'Creating' | 'Enabling' | 'Enabled' | 'Disabling' | 'Disabled' | 'Deleting';

/**
* Defines values for SkuName.
* Possible values include: 'Classic_AzureFrontDoor', 'Standard_AzureFrontDoor',
* 'Premium_AzureFrontDoor'
* @readonly
* @enum {string}
*/
export type SkuName = 'Classic_AzureFrontDoor' | 'Standard_AzureFrontDoor' | 'Premium_AzureFrontDoor';

/**
* Defines values for LatencyScorecardAggregationInterval.
* Possible values include: 'Daily', 'Weekly', 'Monthly'
Expand Down Expand Up @@ -2617,9 +2684,9 @@ export type ReportsGetTimeseriesResponse = Timeseries & {
};

/**
* Contains response data for the checkFrontDoorNameAvailability operation.
* Contains response data for the check operation.
*/
export type CheckFrontDoorNameAvailabilityResponse = CheckNameAvailabilityOutput & {
export type FrontDoorNameAvailabilityCheckResponse = CheckNameAvailabilityOutput & {
/**
* The underlying HTTP response.
*/
Expand All @@ -2637,9 +2704,9 @@ export type CheckFrontDoorNameAvailabilityResponse = CheckNameAvailabilityOutput
};

/**
* Contains response data for the checkFrontDoorNameAvailabilityWithSubscription operation.
* Contains response data for the check operation.
*/
export type CheckFrontDoorNameAvailabilityWithSubscriptionResponse = CheckNameAvailabilityOutput & {
export type FrontDoorNameAvailabilityWithSubscriptionCheckResponse = CheckNameAvailabilityOutput & {
/**
* The underlying HTTP response.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,13 @@ export {
Resource,
RouteConfiguration,
RoutingRule,
RoutingRuleLink,
RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink,
RulesEngine,
RulesEngineAction,
RulesEngineMatchCondition,
RulesEngineRule,
Sku,
SubResource,
Timeseries,
TimeseriesDataPoint,
Expand Down
Loading