UNPKG

@azure/arm-dns

Version:
1,642 lines (1,631 loc) 72.5 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib = require('tslib'); var coreClient = require('@azure/core-client'); var coreRestPipeline = require('@azure/core-rest-pipeline'); var coreLro = require('@azure/core-lro'); function _interopNamespace(e) { if (e && e.__esModule) return e; var n = Object.create(null); if (e) { Object.keys(e).forEach(function (k) { if (k !== 'default') { var d = Object.getOwnPropertyDescriptor(e, k); Object.defineProperty(n, k, d.get ? d : { enumerable: true, get: function () { return e[k]; } }); } }); } n["default"] = e; return Object.freeze(n); } var coreClient__namespace = /*#__PURE__*/_interopNamespace(coreClient); var coreRestPipeline__namespace = /*#__PURE__*/_interopNamespace(coreRestPipeline); /* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ const pageMap = new WeakMap(); /** * Given a result page from a pageable operation, 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(). */ function getContinuationToken(page) { var _a; if (typeof page !== "object" || page === null) { return undefined; } return (_a = pageMap.get(page)) === null || _a === void 0 ? void 0 : _a.continuationToken; } function setContinuationToken(page, continuationToken) { var _a; if (typeof page !== "object" || page === null || !continuationToken) { return; } const pageInfo = (_a = pageMap.get(page)) !== null && _a !== void 0 ? _a : {}; pageInfo.continuationToken = continuationToken; pageMap.set(page, pageInfo); } /* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ const RecordSet = { type: { name: "Composite", className: "RecordSet", modelProperties: { id: { serializedName: "id", readOnly: true, type: { name: "String" } }, name: { serializedName: "name", readOnly: true, type: { name: "String" } }, type: { serializedName: "type", readOnly: true, type: { name: "String" } }, etag: { serializedName: "etag", type: { name: "String" } }, metadata: { serializedName: "properties.metadata", type: { name: "Dictionary", value: { type: { name: "String" } } } }, ttl: { serializedName: "properties.TTL", type: { name: "Number" } }, fqdn: { serializedName: "properties.fqdn", readOnly: true, type: { name: "String" } }, provisioningState: { serializedName: "properties.provisioningState", readOnly: true, type: { name: "String" } }, targetResource: { serializedName: "properties.targetResource", type: { name: "Composite", className: "SubResource" } }, aRecords: { serializedName: "properties.ARecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "ARecord" } } } }, aaaaRecords: { serializedName: "properties.AAAARecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "AaaaRecord" } } } }, mxRecords: { serializedName: "properties.MXRecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "MxRecord" } } } }, nsRecords: { serializedName: "properties.NSRecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "NsRecord" } } } }, ptrRecords: { serializedName: "properties.PTRRecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "PtrRecord" } } } }, srvRecords: { serializedName: "properties.SRVRecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "SrvRecord" } } } }, txtRecords: { serializedName: "properties.TXTRecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "TxtRecord" } } } }, cnameRecord: { serializedName: "properties.CNAMERecord", type: { name: "Composite", className: "CnameRecord" } }, soaRecord: { serializedName: "properties.SOARecord", type: { name: "Composite", className: "SoaRecord" } }, caaRecords: { serializedName: "properties.caaRecords", type: { name: "Sequence", element: { type: { name: "Composite", className: "CaaRecord" } } } } } } }; const SubResource = { type: { name: "Composite", className: "SubResource", modelProperties: { id: { serializedName: "id", type: { name: "String" } } } } }; const ARecord = { type: { name: "Composite", className: "ARecord", modelProperties: { ipv4Address: { serializedName: "ipv4Address", type: { name: "String" } } } } }; const AaaaRecord = { type: { name: "Composite", className: "AaaaRecord", modelProperties: { ipv6Address: { serializedName: "ipv6Address", type: { name: "String" } } } } }; const MxRecord = { type: { name: "Composite", className: "MxRecord", modelProperties: { preference: { serializedName: "preference", type: { name: "Number" } }, exchange: { serializedName: "exchange", type: { name: "String" } } } } }; const NsRecord = { type: { name: "Composite", className: "NsRecord", modelProperties: { nsdname: { serializedName: "nsdname", type: { name: "String" } } } } }; const PtrRecord = { type: { name: "Composite", className: "PtrRecord", modelProperties: { ptrdname: { serializedName: "ptrdname", type: { name: "String" } } } } }; const SrvRecord = { type: { name: "Composite", className: "SrvRecord", modelProperties: { priority: { serializedName: "priority", type: { name: "Number" } }, weight: { serializedName: "weight", type: { name: "Number" } }, port: { serializedName: "port", type: { name: "Number" } }, target: { serializedName: "target", type: { name: "String" } } } } }; const TxtRecord = { type: { name: "Composite", className: "TxtRecord", modelProperties: { value: { serializedName: "value", type: { name: "Sequence", element: { type: { name: "String" } } } } } } }; const CnameRecord = { type: { name: "Composite", className: "CnameRecord", modelProperties: { cname: { serializedName: "cname", type: { name: "String" } } } } }; const SoaRecord = { type: { name: "Composite", className: "SoaRecord", modelProperties: { host: { serializedName: "host", type: { name: "String" } }, email: { serializedName: "email", type: { name: "String" } }, serialNumber: { serializedName: "serialNumber", type: { name: "Number" } }, refreshTime: { serializedName: "refreshTime", type: { name: "Number" } }, retryTime: { serializedName: "retryTime", type: { name: "Number" } }, expireTime: { serializedName: "expireTime", type: { name: "Number" } }, minimumTtl: { serializedName: "minimumTTL", type: { name: "Number" } } } } }; const CaaRecord = { type: { name: "Composite", className: "CaaRecord", modelProperties: { flags: { serializedName: "flags", type: { name: "Number" } }, tag: { serializedName: "tag", type: { name: "String" } }, value: { serializedName: "value", type: { name: "String" } } } } }; const CloudError = { type: { name: "Composite", className: "CloudError", modelProperties: { error: { serializedName: "error", type: { name: "Composite", className: "CloudErrorBody" } } } } }; const CloudErrorBody = { type: { name: "Composite", className: "CloudErrorBody", modelProperties: { code: { serializedName: "code", type: { name: "String" } }, message: { serializedName: "message", type: { name: "String" } }, target: { serializedName: "target", type: { name: "String" } }, details: { serializedName: "details", type: { name: "Sequence", element: { type: { name: "Composite", className: "CloudErrorBody" } } } } } } }; const RecordSetListResult = { type: { name: "Composite", className: "RecordSetListResult", modelProperties: { value: { serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", className: "RecordSet" } } } }, nextLink: { serializedName: "nextLink", readOnly: true, type: { name: "String" } } } } }; const Resource = { type: { name: "Composite", className: "Resource", modelProperties: { id: { serializedName: "id", readOnly: true, type: { name: "String" } }, name: { serializedName: "name", readOnly: true, type: { name: "String" } }, type: { serializedName: "type", readOnly: true, type: { name: "String" } }, location: { serializedName: "location", required: true, type: { name: "String" } }, tags: { serializedName: "tags", type: { name: "Dictionary", value: { type: { name: "String" } } } } } } }; const ZoneUpdate = { type: { name: "Composite", className: "ZoneUpdate", modelProperties: { tags: { serializedName: "tags", type: { name: "Dictionary", value: { type: { name: "String" } } } } } } }; const ZoneListResult = { type: { name: "Composite", className: "ZoneListResult", modelProperties: { value: { serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", className: "Zone" } } } }, nextLink: { serializedName: "nextLink", readOnly: true, type: { name: "String" } } } } }; const DnsResourceReferenceRequest = { type: { name: "Composite", className: "DnsResourceReferenceRequest", modelProperties: { targetResources: { serializedName: "properties.targetResources", type: { name: "Sequence", element: { type: { name: "Composite", className: "SubResource" } } } } } } }; const DnsResourceReferenceResult = { type: { name: "Composite", className: "DnsResourceReferenceResult", modelProperties: { dnsResourceReferences: { serializedName: "properties.dnsResourceReferences", type: { name: "Sequence", element: { type: { name: "Composite", className: "DnsResourceReference" } } } } } } }; const DnsResourceReference = { type: { name: "Composite", className: "DnsResourceReference", modelProperties: { dnsResources: { serializedName: "dnsResources", type: { name: "Sequence", element: { type: { name: "Composite", className: "SubResource" } } } }, targetResource: { serializedName: "targetResource", type: { name: "Composite", className: "SubResource" } } } } }; const RecordSetUpdateParameters = { type: { name: "Composite", className: "RecordSetUpdateParameters", modelProperties: { recordSet: { serializedName: "RecordSet", type: { name: "Composite", className: "RecordSet" } } } } }; const Zone = { type: { name: "Composite", className: "Zone", modelProperties: Object.assign(Object.assign({}, Resource.type.modelProperties), { etag: { serializedName: "etag", type: { name: "String" } }, maxNumberOfRecordSets: { serializedName: "properties.maxNumberOfRecordSets", readOnly: true, type: { name: "Number" } }, maxNumberOfRecordsPerRecordSet: { serializedName: "properties.maxNumberOfRecordsPerRecordSet", readOnly: true, type: { name: "Number" } }, numberOfRecordSets: { serializedName: "properties.numberOfRecordSets", readOnly: true, type: { name: "Number" } }, nameServers: { serializedName: "properties.nameServers", readOnly: true, type: { name: "Sequence", element: { type: { name: "String" } } } }, zoneType: { defaultValue: "Public", serializedName: "properties.zoneType", type: { name: "Enum", allowedValues: ["Public", "Private"] } }, registrationVirtualNetworks: { serializedName: "properties.registrationVirtualNetworks", type: { name: "Sequence", element: { type: { name: "Composite", className: "SubResource" } } } }, resolutionVirtualNetworks: { serializedName: "properties.resolutionVirtualNetworks", type: { name: "Sequence", element: { type: { name: "Composite", className: "SubResource" } } } } }) } }; var Mappers = /*#__PURE__*/Object.freeze({ __proto__: null, RecordSet: RecordSet, SubResource: SubResource, ARecord: ARecord, AaaaRecord: AaaaRecord, MxRecord: MxRecord, NsRecord: NsRecord, PtrRecord: PtrRecord, SrvRecord: SrvRecord, TxtRecord: TxtRecord, CnameRecord: CnameRecord, SoaRecord: SoaRecord, CaaRecord: CaaRecord, CloudError: CloudError, CloudErrorBody: CloudErrorBody, RecordSetListResult: RecordSetListResult, Resource: Resource, ZoneUpdate: ZoneUpdate, ZoneListResult: ZoneListResult, DnsResourceReferenceRequest: DnsResourceReferenceRequest, DnsResourceReferenceResult: DnsResourceReferenceResult, DnsResourceReference: DnsResourceReference, RecordSetUpdateParameters: RecordSetUpdateParameters, Zone: Zone }); /* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ const contentType = { parameterPath: ["options", "contentType"], mapper: { defaultValue: "application/json", isConstant: true, serializedName: "Content-Type", type: { name: "String" } } }; const parameters = { parameterPath: "parameters", mapper: RecordSet }; const accept = { parameterPath: "accept", mapper: { defaultValue: "application/json", isConstant: true, serializedName: "Accept", type: { name: "String" } } }; const $host = { parameterPath: "$host", mapper: { serializedName: "$host", required: true, type: { name: "String" } }, skipEncoding: true }; const resourceGroupName = { parameterPath: "resourceGroupName", mapper: { serializedName: "resourceGroupName", required: true, type: { name: "String" } } }; const zoneName = { parameterPath: "zoneName", mapper: { serializedName: "zoneName", required: true, type: { name: "String" } } }; const relativeRecordSetName = { parameterPath: "relativeRecordSetName", mapper: { serializedName: "relativeRecordSetName", required: true, type: { name: "String" } }, skipEncoding: true }; const recordType = { parameterPath: "recordType", mapper: { serializedName: "recordType", required: true, type: { name: "Enum", allowedValues: [ "A", "AAAA", "CAA", "CNAME", "MX", "NS", "PTR", "SOA", "SRV", "TXT" ] } } }; const ifMatch = { parameterPath: ["options", "ifMatch"], mapper: { serializedName: "If-Match", type: { name: "String" } } }; const apiVersion = { parameterPath: "apiVersion", mapper: { defaultValue: "2018-05-01", isConstant: true, serializedName: "api-version", type: { name: "String" } } }; const subscriptionId = { parameterPath: "subscriptionId", mapper: { serializedName: "subscriptionId", required: true, type: { name: "String" } } }; const ifNoneMatch = { parameterPath: ["options", "ifNoneMatch"], mapper: { serializedName: "If-None-Match", type: { name: "String" } } }; const top = { parameterPath: ["options", "top"], mapper: { serializedName: "$top", type: { name: "Number" } } }; const recordsetnamesuffix = { parameterPath: ["options", "recordsetnamesuffix"], mapper: { serializedName: "$recordsetnamesuffix", type: { name: "String" } } }; const recordSetNameSuffix = { parameterPath: ["options", "recordSetNameSuffix"], mapper: { serializedName: "$recordsetnamesuffix", type: { name: "String" } } }; const nextLink = { parameterPath: "nextLink", mapper: { serializedName: "nextLink", required: true, type: { name: "String" } }, skipEncoding: true }; const parameters1 = { parameterPath: "parameters", mapper: Zone }; const parameters2 = { parameterPath: "parameters", mapper: ZoneUpdate }; const parameters3 = { parameterPath: "parameters", mapper: DnsResourceReferenceRequest }; /* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ /// <reference lib="esnext.asynciterable" /> /** Class containing RecordSets operations. */ class RecordSetsImpl { /** * Initialize a new instance of the class RecordSets class. * @param client Reference to the service client */ constructor(client) { this.client = client; } /** * Lists the record sets of a specified type in a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param recordType The type of record sets to enumerate. * @param options The options parameters. */ listByType(resourceGroupName, zoneName, recordType, options) { const iter = this.listByTypePagingAll(resourceGroupName, zoneName, recordType, options); return { next() { return iter.next(); }, [Symbol.asyncIterator]() { return this; }, byPage: (settings) => { if (settings === null || settings === void 0 ? void 0 : settings.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } return this.listByTypePagingPage(resourceGroupName, zoneName, recordType, options, settings); } }; } listByTypePagingPage(resourceGroupName, zoneName, recordType, options, settings) { return tslib.__asyncGenerator(this, arguments, function* listByTypePagingPage_1() { let result; let continuationToken = settings === null || settings === void 0 ? void 0 : settings.continuationToken; if (!continuationToken) { result = yield tslib.__await(this._listByType(resourceGroupName, zoneName, recordType, options)); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield yield tslib.__await(page); } while (continuationToken) { result = yield tslib.__await(this._listByTypeNext(resourceGroupName, zoneName, recordType, continuationToken, options)); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); yield yield tslib.__await(page); } }); } listByTypePagingAll(resourceGroupName, zoneName, recordType, options) { return tslib.__asyncGenerator(this, arguments, function* listByTypePagingAll_1() { var e_1, _a; try { for (var _b = tslib.__asyncValues(this.listByTypePagingPage(resourceGroupName, zoneName, recordType, options)), _c; _c = yield tslib.__await(_b.next()), !_c.done;) { const page = _c.value; yield tslib.__await(yield* tslib.__asyncDelegator(tslib.__asyncValues(page))); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) yield tslib.__await(_a.call(_b)); } finally { if (e_1) throw e_1.error; } } }); } /** * Lists all record sets in a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param options The options parameters. */ listByDnsZone(resourceGroupName, zoneName, options) { const iter = this.listByDnsZonePagingAll(resourceGroupName, zoneName, options); return { next() { return iter.next(); }, [Symbol.asyncIterator]() { return this; }, byPage: (settings) => { if (settings === null || settings === void 0 ? void 0 : settings.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } return this.listByDnsZonePagingPage(resourceGroupName, zoneName, options, settings); } }; } listByDnsZonePagingPage(resourceGroupName, zoneName, options, settings) { return tslib.__asyncGenerator(this, arguments, function* listByDnsZonePagingPage_1() { let result; let continuationToken = settings === null || settings === void 0 ? void 0 : settings.continuationToken; if (!continuationToken) { result = yield tslib.__await(this._listByDnsZone(resourceGroupName, zoneName, options)); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield yield tslib.__await(page); } while (continuationToken) { result = yield tslib.__await(this._listByDnsZoneNext(resourceGroupName, zoneName, continuationToken, options)); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); yield yield tslib.__await(page); } }); } listByDnsZonePagingAll(resourceGroupName, zoneName, options) { return tslib.__asyncGenerator(this, arguments, function* listByDnsZonePagingAll_1() { var e_2, _a; try { for (var _b = tslib.__asyncValues(this.listByDnsZonePagingPage(resourceGroupName, zoneName, options)), _c; _c = yield tslib.__await(_b.next()), !_c.done;) { const page = _c.value; yield tslib.__await(yield* tslib.__asyncDelegator(tslib.__asyncValues(page))); } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) yield tslib.__await(_a.call(_b)); } finally { if (e_2) throw e_2.error; } } }); } /** * Lists all record sets in a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param options The options parameters. */ listAllByDnsZone(resourceGroupName, zoneName, options) { const iter = this.listAllByDnsZonePagingAll(resourceGroupName, zoneName, options); return { next() { return iter.next(); }, [Symbol.asyncIterator]() { return this; }, byPage: (settings) => { if (settings === null || settings === void 0 ? void 0 : settings.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } return this.listAllByDnsZonePagingPage(resourceGroupName, zoneName, options, settings); } }; } listAllByDnsZonePagingPage(resourceGroupName, zoneName, options, settings) { return tslib.__asyncGenerator(this, arguments, function* listAllByDnsZonePagingPage_1() { let result; let continuationToken = settings === null || settings === void 0 ? void 0 : settings.continuationToken; if (!continuationToken) { result = yield tslib.__await(this._listAllByDnsZone(resourceGroupName, zoneName, options)); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield yield tslib.__await(page); } while (continuationToken) { result = yield tslib.__await(this._listAllByDnsZoneNext(resourceGroupName, zoneName, continuationToken, options)); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); yield yield tslib.__await(page); } }); } listAllByDnsZonePagingAll(resourceGroupName, zoneName, options) { return tslib.__asyncGenerator(this, arguments, function* listAllByDnsZonePagingAll_1() { var e_3, _a; try { for (var _b = tslib.__asyncValues(this.listAllByDnsZonePagingPage(resourceGroupName, zoneName, options)), _c; _c = yield tslib.__await(_b.next()), !_c.done;) { const page = _c.value; yield tslib.__await(yield* tslib.__asyncDelegator(tslib.__asyncValues(page))); } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) yield tslib.__await(_a.call(_b)); } finally { if (e_3) throw e_3.error; } } }); } /** * Updates a record set within a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param relativeRecordSetName The name of the record set, relative to the name of the zone. * @param recordType The type of DNS record in this record set. * @param parameters Parameters supplied to the Update operation. * @param options The options parameters. */ update(resourceGroupName, zoneName, relativeRecordSetName, recordType, parameters, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, relativeRecordSetName, recordType, parameters, options }, updateOperationSpec$1); } /** * Creates or updates a record set within a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param relativeRecordSetName The name of the record set, relative to the name of the zone. * @param recordType The type of DNS record in this record set. Record sets of type SOA can be updated * but not created (they are created when the DNS zone is created). * @param parameters Parameters supplied to the CreateOrUpdate operation. * @param options The options parameters. */ createOrUpdate(resourceGroupName, zoneName, relativeRecordSetName, recordType, parameters, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, relativeRecordSetName, recordType, parameters, options }, createOrUpdateOperationSpec$1); } /** * Deletes a record set from a DNS zone. This operation cannot be undone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param relativeRecordSetName The name of the record set, relative to the name of the zone. * @param recordType The type of DNS record in this record set. Record sets of type SOA cannot be * deleted (they are deleted when the DNS zone is deleted). * @param options The options parameters. */ delete(resourceGroupName, zoneName, relativeRecordSetName, recordType, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, relativeRecordSetName, recordType, options }, deleteOperationSpec$1); } /** * Gets a record set. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param relativeRecordSetName The name of the record set, relative to the name of the zone. * @param recordType The type of DNS record in this record set. * @param options The options parameters. */ get(resourceGroupName, zoneName, relativeRecordSetName, recordType, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, relativeRecordSetName, recordType, options }, getOperationSpec$1); } /** * Lists the record sets of a specified type in a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param recordType The type of record sets to enumerate. * @param options The options parameters. */ _listByType(resourceGroupName, zoneName, recordType, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, recordType, options }, listByTypeOperationSpec); } /** * Lists all record sets in a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param options The options parameters. */ _listByDnsZone(resourceGroupName, zoneName, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, options }, listByDnsZoneOperationSpec); } /** * Lists all record sets in a DNS zone. * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param options The options parameters. */ _listAllByDnsZone(resourceGroupName, zoneName, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, options }, listAllByDnsZoneOperationSpec); } /** * ListByTypeNext * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param recordType The type of record sets to enumerate. * @param nextLink The nextLink from the previous successful call to the ListByType method. * @param options The options parameters. */ _listByTypeNext(resourceGroupName, zoneName, recordType, nextLink, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, recordType, nextLink, options }, listByTypeNextOperationSpec); } /** * ListByDnsZoneNext * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param nextLink The nextLink from the previous successful call to the ListByDnsZone method. * @param options The options parameters. */ _listByDnsZoneNext(resourceGroupName, zoneName, nextLink, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, nextLink, options }, listByDnsZoneNextOperationSpec); } /** * ListAllByDnsZoneNext * @param resourceGroupName The name of the resource group. * @param zoneName The name of the DNS zone (without a terminating dot). * @param nextLink The nextLink from the previous successful call to the ListAllByDnsZone method. * @param options The options parameters. */ _listAllByDnsZoneNext(resourceGroupName, zoneName, nextLink, options) { return this.client.sendOperationRequest({ resourceGroupName, zoneName, nextLink, options }, listAllByDnsZoneNextOperationSpec); } } // Operation Specifications const serializer$2 = coreClient__namespace.createSerializer(Mappers, /* isXml */ false); const updateOperationSpec$1 = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}", httpMethod: "PATCH", responses: { 200: { bodyMapper: RecordSet }, default: { bodyMapper: CloudError } }, requestBody: parameters, queryParameters: [apiVersion], urlParameters: [ $host, resourceGroupName, zoneName, relativeRecordSetName, recordType, subscriptionId ], headerParameters: [ contentType, accept, ifMatch ], mediaType: "json", serializer: serializer$2 }; const createOrUpdateOperationSpec$1 = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}", httpMethod: "PUT", responses: { 200: { bodyMapper: RecordSet }, 201: { bodyMapper: RecordSet }, default: { bodyMapper: CloudError } }, requestBody: parameters, queryParameters: [apiVersion], urlParameters: [ $host, resourceGroupName, zoneName, relativeRecordSetName, recordType, subscriptionId ], headerParameters: [ contentType, accept, ifMatch, ifNoneMatch ], mediaType: "json", serializer: serializer$2 }; const deleteOperationSpec$1 = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}", httpMethod: "DELETE", responses: { 200: {}, 204: {}, default: { bodyMapper: CloudError } }, queryParameters: [apiVersion], urlParameters: [ $host, resourceGroupName, zoneName, relativeRecordSetName, recordType, subscriptionId ], headerParameters: [accept, ifMatch], serializer: serializer$2 }; const getOperationSpec$1 = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSet }, default: { bodyMapper: CloudError } }, queryParameters: [apiVersion], urlParameters: [ $host, resourceGroupName, zoneName, relativeRecordSetName, recordType, subscriptionId ], headerParameters: [accept], serializer: serializer$2 }; const listByTypeOperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSetListResult }, default: { bodyMapper: CloudError } }, queryParameters: [ apiVersion, top, recordsetnamesuffix ], urlParameters: [ $host, resourceGroupName, zoneName, recordType, subscriptionId ], headerParameters: [accept], serializer: serializer$2 }; const listByDnsZoneOperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/recordsets", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSetListResult }, default: { bodyMapper: CloudError } }, queryParameters: [ apiVersion, top, recordsetnamesuffix ], urlParameters: [ $host, resourceGroupName, zoneName, subscriptionId ], headerParameters: [accept], serializer: serializer$2 }; const listAllByDnsZoneOperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/all", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSetListResult }, default: { bodyMapper: CloudError } }, queryParameters: [ apiVersion, top, recordSetNameSuffix ], urlParameters: [ $host, resourceGroupName, zoneName, subscriptionId ], headerParameters: [accept], serializer: serializer$2 }; const listByTypeNextOperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSetListResult }, default: { bodyMapper: CloudError } }, queryParameters: [ apiVersion, top, recordsetnamesuffix ], urlParameters: [ $host, resourceGroupName, zoneName, recordType, subscriptionId, nextLink ], headerParameters: [accept], serializer: serializer$2 }; const listByDnsZoneNextOperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSetListResult }, default: { bodyMapper: CloudError } }, queryParameters: [ apiVersion, top, recordsetnamesuffix ], urlParameters: [ $host, resourceGroupName, zoneName, subscriptionId, nextLink ], headerParameters: [accept], serializer: serializer$2 }; const listAllByDnsZoneNextOperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { 200: { bodyMapper: RecordSetListResult }, default: { bodyMapper: CloudError } }, queryParameters: [ apiVersion, top, recordSetNameSuffix ], urlParameters: [ $host, resourceGroupName, zoneName, subscriptionId, nextLink ], headerParameters: [accept], serializer: serializer$2 }; /* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ class LroImpl { constructor(sendOperationFn, args, spec, requestPath = spec.path, requestMethod = spec.httpMethod) { this.sendOperationFn = sendOperationFn; this.args = args; this.spec = spec; this.requestPath = requestPath; this.requestMethod = requestMethod; } sendInitialRequest() { return tslib.__awaiter(this, void 0, void 0, function* () { return this.sendOperationFn(this.args, this.spec); }); } sendPollRequest(path) { return tslib.__awaiter(this, void 0, void 0, function* () { const _a = this.spec, restSpec = tslib.__rest(_a, ["requestBody"]); return this.sendOperationFn(this.args, Object.assign(Object.assign({}, restSpec), { path, httpMethod: "GET" })); }); } } /* * Copyright (c) Microsoft Corporation. * Licensed