@azure/arm-frontdoor 3.1.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/LICENSE +21 -0
  3. package/LICENSE.txt +1 -1
  4. package/README.md +75 -73
  5. package/dist/index.js +6728 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/index.min.js +1 -0
  8. package/dist/index.min.js.map +1 -0
  9. package/dist-esm/src/frontDoorManagementClient.d.ts +29 -0
  10. package/dist-esm/src/frontDoorManagementClient.d.ts.map +1 -0
  11. package/dist-esm/src/frontDoorManagementClient.js +62 -0
  12. package/dist-esm/src/frontDoorManagementClient.js.map +1 -0
  13. package/dist-esm/src/index.d.ts +5 -0
  14. package/dist-esm/src/index.d.ts.map +1 -0
  15. package/dist-esm/src/index.js +12 -0
  16. package/dist-esm/src/index.js.map +1 -0
  17. package/dist-esm/src/lroImpl.d.ts +16 -0
  18. package/dist-esm/src/lroImpl.d.ts.map +1 -0
  19. package/dist-esm/src/lroImpl.js +29 -0
  20. package/dist-esm/src/lroImpl.js.map +1 -0
  21. package/dist-esm/src/models/index.d.ts +2380 -0
  22. package/dist-esm/src/models/index.d.ts.map +1 -0
  23. package/dist-esm/src/models/index.js +399 -0
  24. package/dist-esm/src/models/index.js.map +1 -0
  25. package/dist-esm/src/models/mappers.d.ts +93 -0
  26. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  27. package/dist-esm/src/models/mappers.js +3048 -0
  28. package/dist-esm/src/models/mappers.js.map +1 -0
  29. package/dist-esm/src/models/parameters.d.ts +36 -0
  30. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  31. package/dist-esm/src/models/parameters.js +316 -0
  32. package/dist-esm/src/models/parameters.js.map +1 -0
  33. package/dist-esm/src/operations/endpoints.d.ts +34 -0
  34. package/dist-esm/src/operations/endpoints.d.ts.map +1 -0
  35. package/dist-esm/src/operations/endpoints.js +106 -0
  36. package/dist-esm/src/operations/endpoints.js.map +1 -0
  37. package/dist-esm/src/operations/experiments.d.ts +99 -0
  38. package/dist-esm/src/operations/experiments.d.ts.map +1 -0
  39. package/dist-esm/src/operations/experiments.js +417 -0
  40. package/dist-esm/src/operations/experiments.js.map +1 -0
  41. package/dist-esm/src/operations/frontDoorNameAvailability.d.ts +19 -0
  42. package/dist-esm/src/operations/frontDoorNameAvailability.d.ts.map +1 -0
  43. package/dist-esm/src/operations/frontDoorNameAvailability.js +49 -0
  44. package/dist-esm/src/operations/frontDoorNameAvailability.js.map +1 -0
  45. package/dist-esm/src/operations/frontDoorNameAvailabilityWithSubscription.d.ts +19 -0
  46. package/dist-esm/src/operations/frontDoorNameAvailabilityWithSubscription.d.ts.map +1 -0
  47. package/dist-esm/src/operations/frontDoorNameAvailabilityWithSubscription.js +49 -0
  48. package/dist-esm/src/operations/frontDoorNameAvailabilityWithSubscription.js.map +1 -0
  49. package/dist-esm/src/operations/frontDoors.d.ts +100 -0
  50. package/dist-esm/src/operations/frontDoors.d.ts.map +1 -0
  51. package/dist-esm/src/operations/frontDoors.js +453 -0
  52. package/dist-esm/src/operations/frontDoors.js.map +1 -0
  53. package/dist-esm/src/operations/frontendEndpoints.d.ts +81 -0
  54. package/dist-esm/src/operations/frontendEndpoints.d.ts.map +1 -0
  55. package/dist-esm/src/operations/frontendEndpoints.js +331 -0
  56. package/dist-esm/src/operations/frontendEndpoints.js.map +1 -0
  57. package/dist-esm/src/operations/index.d.ts +13 -0
  58. package/dist-esm/src/operations/index.d.ts.map +1 -0
  59. package/dist-esm/src/operations/index.js +20 -0
  60. package/dist-esm/src/operations/index.js.map +1 -0
  61. package/dist-esm/src/operations/managedRuleSets.d.ts +32 -0
  62. package/dist-esm/src/operations/managedRuleSets.d.ts.map +1 -0
  63. package/dist-esm/src/operations/managedRuleSets.js +124 -0
  64. package/dist-esm/src/operations/managedRuleSets.js.map +1 -0
  65. package/dist-esm/src/operations/networkExperimentProfiles.d.ts +107 -0
  66. package/dist-esm/src/operations/networkExperimentProfiles.d.ts.map +1 -0
  67. package/dist-esm/src/operations/networkExperimentProfiles.js +500 -0
  68. package/dist-esm/src/operations/networkExperimentProfiles.js.map +1 -0
  69. package/dist-esm/src/operations/policies.d.ts +73 -0
  70. package/dist-esm/src/operations/policies.d.ts.map +1 -0
  71. package/dist-esm/src/operations/policies.js +309 -0
  72. package/dist-esm/src/operations/policies.js.map +1 -0
  73. package/dist-esm/src/operations/preconfiguredEndpoints.d.ts +38 -0
  74. package/dist-esm/src/operations/preconfiguredEndpoints.d.ts.map +1 -0
  75. package/dist-esm/src/operations/preconfiguredEndpoints.js +137 -0
  76. package/dist-esm/src/operations/preconfiguredEndpoints.js.map +1 -0
  77. package/dist-esm/src/operations/reports.d.ts +34 -0
  78. package/dist-esm/src/operations/reports.d.ts.map +1 -0
  79. package/dist-esm/src/operations/reports.js +120 -0
  80. package/dist-esm/src/operations/reports.js.map +1 -0
  81. package/dist-esm/src/operations/rulesEngines.d.ts +83 -0
  82. package/dist-esm/src/operations/rulesEngines.d.ts.map +1 -0
  83. package/dist-esm/src/operations/rulesEngines.js +341 -0
  84. package/dist-esm/src/operations/rulesEngines.js.map +1 -0
  85. package/dist-esm/src/operationsInterfaces/endpoints.d.ts +26 -0
  86. package/dist-esm/src/operationsInterfaces/endpoints.d.ts.map +1 -0
  87. package/dist-esm/src/operationsInterfaces/endpoints.js +9 -0
  88. package/dist-esm/src/operationsInterfaces/endpoints.js.map +1 -0
  89. package/dist-esm/src/operationsInterfaces/experiments.d.ts +74 -0
  90. package/dist-esm/src/operationsInterfaces/experiments.d.ts.map +1 -0
  91. package/dist-esm/src/operationsInterfaces/experiments.js +9 -0
  92. package/dist-esm/src/operationsInterfaces/experiments.js.map +1 -0
  93. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailability.d.ts +11 -0
  94. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailability.d.ts.map +1 -0
  95. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailability.js +9 -0
  96. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailability.js.map +1 -0
  97. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailabilityWithSubscription.d.ts +11 -0
  98. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailabilityWithSubscription.d.ts.map +1 -0
  99. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailabilityWithSubscription.js +9 -0
  100. package/dist-esm/src/operationsInterfaces/frontDoorNameAvailabilityWithSubscription.js.map +1 -0
  101. package/dist-esm/src/operationsInterfaces/frontDoors.d.ts +64 -0
  102. package/dist-esm/src/operationsInterfaces/frontDoors.d.ts.map +1 -0
  103. package/dist-esm/src/operationsInterfaces/frontDoors.js +9 -0
  104. package/dist-esm/src/operationsInterfaces/frontDoors.js.map +1 -0
  105. package/dist-esm/src/operationsInterfaces/frontendEndpoints.d.ts +56 -0
  106. package/dist-esm/src/operationsInterfaces/frontendEndpoints.d.ts.map +1 -0
  107. package/dist-esm/src/operationsInterfaces/frontendEndpoints.js +9 -0
  108. package/dist-esm/src/operationsInterfaces/frontendEndpoints.js.map +1 -0
  109. package/dist-esm/src/operationsInterfaces/index.d.ts +13 -0
  110. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  111. package/dist-esm/src/operationsInterfaces/index.js +20 -0
  112. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  113. package/dist-esm/src/operationsInterfaces/managedRuleSets.d.ts +11 -0
  114. package/dist-esm/src/operationsInterfaces/managedRuleSets.d.ts.map +1 -0
  115. package/dist-esm/src/operationsInterfaces/managedRuleSets.js +9 -0
  116. package/dist-esm/src/operationsInterfaces/managedRuleSets.js.map +1 -0
  117. package/dist-esm/src/operationsInterfaces/networkExperimentProfiles.d.ts +71 -0
  118. package/dist-esm/src/operationsInterfaces/networkExperimentProfiles.d.ts.map +1 -0
  119. package/dist-esm/src/operationsInterfaces/networkExperimentProfiles.js +9 -0
  120. package/dist-esm/src/operationsInterfaces/networkExperimentProfiles.js.map +1 -0
  121. package/dist-esm/src/operationsInterfaces/policies.d.ts +50 -0
  122. package/dist-esm/src/operationsInterfaces/policies.d.ts.map +1 -0
  123. package/dist-esm/src/operationsInterfaces/policies.js +9 -0
  124. package/dist-esm/src/operationsInterfaces/policies.js.map +1 -0
  125. package/dist-esm/src/operationsInterfaces/preconfiguredEndpoints.d.ts +13 -0
  126. package/dist-esm/src/operationsInterfaces/preconfiguredEndpoints.d.ts.map +1 -0
  127. package/dist-esm/src/operationsInterfaces/preconfiguredEndpoints.js +9 -0
  128. package/dist-esm/src/operationsInterfaces/preconfiguredEndpoints.js.map +1 -0
  129. package/dist-esm/src/operationsInterfaces/reports.d.ts +26 -0
  130. package/dist-esm/src/operationsInterfaces/reports.d.ts.map +1 -0
  131. package/dist-esm/src/operationsInterfaces/reports.js +9 -0
  132. package/dist-esm/src/operationsInterfaces/reports.js.map +1 -0
  133. package/dist-esm/src/operationsInterfaces/rulesEngines.d.ts +58 -0
  134. package/dist-esm/src/operationsInterfaces/rulesEngines.d.ts.map +1 -0
  135. package/dist-esm/src/operationsInterfaces/rulesEngines.js +9 -0
  136. package/dist-esm/src/operationsInterfaces/rulesEngines.js.map +1 -0
  137. package/dist-esm/test/sampleTest.d.ts +2 -0
  138. package/dist-esm/test/sampleTest.d.ts.map +1 -0
  139. package/dist-esm/test/sampleTest.js +40 -0
  140. package/dist-esm/test/sampleTest.js.map +1 -0
  141. package/package.json +70 -34
  142. package/review/arm-frontdoor.api.md +1910 -0
  143. package/rollup.config.js +184 -27
  144. package/src/frontDoorManagementClient.ts +124 -0
  145. package/src/index.ts +12 -0
  146. package/src/lroImpl.ts +34 -0
  147. package/src/models/index.ts +2676 -0
  148. package/src/models/mappers.ts +3311 -0
  149. package/src/models/parameters.ts +367 -0
  150. package/src/operations/endpoints.ts +150 -0
  151. package/src/operations/experiments.ts +608 -0
  152. package/src/operations/frontDoorNameAvailability.ts +68 -0
  153. package/src/operations/frontDoorNameAvailabilityWithSubscription.ts +69 -0
  154. package/src/operations/frontDoors.ts +594 -0
  155. package/src/operations/frontendEndpoints.ts +471 -0
  156. package/src/operations/index.ts +20 -0
  157. package/src/operations/managedRuleSets.ts +142 -0
  158. package/src/operations/networkExperimentProfiles.ts +672 -0
  159. package/src/operations/policies.ts +425 -0
  160. package/src/operations/preconfiguredEndpoints.ts +177 -0
  161. package/src/operations/reports.ts +160 -0
  162. package/src/operations/rulesEngines.ts +486 -0
  163. package/src/operationsInterfaces/endpoints.ts +47 -0
  164. package/src/operationsInterfaces/experiments.ts +147 -0
  165. package/src/operationsInterfaces/frontDoorNameAvailability.ts +26 -0
  166. package/src/operationsInterfaces/frontDoorNameAvailabilityWithSubscription.ts +26 -0
  167. package/src/operationsInterfaces/frontDoors.ts +122 -0
  168. package/src/operationsInterfaces/frontendEndpoints.ts +104 -0
  169. package/src/operationsInterfaces/index.ts +20 -0
  170. package/src/operationsInterfaces/managedRuleSets.ts +25 -0
  171. package/src/operationsInterfaces/networkExperimentProfiles.ts +139 -0
  172. package/src/operationsInterfaces/policies.ts +97 -0
  173. package/src/operationsInterfaces/preconfiguredEndpoints.ts +29 -0
  174. package/src/operationsInterfaces/reports.ts +57 -0
  175. package/src/operationsInterfaces/rulesEngines.ts +111 -0
  176. package/tsconfig.json +4 -4
  177. package/types/arm-frontdoor.d.ts +3127 -0
  178. package/types/tsdoc-metadata.json +11 -0
  179. package/dist/arm-frontdoor.js +0 -4289
  180. package/dist/arm-frontdoor.js.map +0 -1
  181. package/dist/arm-frontdoor.min.js +0 -1
  182. package/dist/arm-frontdoor.min.js.map +0 -1
  183. package/esm/frontDoorManagementClient.d.ts +0 -62
  184. package/esm/frontDoorManagementClient.d.ts.map +0 -1
  185. package/esm/frontDoorManagementClient.js +0 -105
  186. package/esm/frontDoorManagementClient.js.map +0 -1
  187. package/esm/frontDoorManagementClientContext.d.ts +0 -16
  188. package/esm/frontDoorManagementClientContext.d.ts.map +0 -1
  189. package/esm/frontDoorManagementClientContext.js +0 -56
  190. package/esm/frontDoorManagementClientContext.js.map +0 -1
  191. package/esm/models/backendPoolsMappers.d.ts +0 -2
  192. package/esm/models/backendPoolsMappers.d.ts.map +0 -1
  193. package/esm/models/backendPoolsMappers.js +0 -11
  194. package/esm/models/backendPoolsMappers.js.map +0 -1
  195. package/esm/models/endpointsMappers.d.ts +0 -2
  196. package/esm/models/endpointsMappers.d.ts.map +0 -1
  197. package/esm/models/endpointsMappers.js +0 -11
  198. package/esm/models/endpointsMappers.js.map +0 -1
  199. package/esm/models/frontDoorsMappers.d.ts +0 -2
  200. package/esm/models/frontDoorsMappers.d.ts.map +0 -1
  201. package/esm/models/frontDoorsMappers.js +0 -11
  202. package/esm/models/frontDoorsMappers.js.map +0 -1
  203. package/esm/models/frontendEndpointsMappers.d.ts +0 -2
  204. package/esm/models/frontendEndpointsMappers.d.ts.map +0 -1
  205. package/esm/models/frontendEndpointsMappers.js +0 -11
  206. package/esm/models/frontendEndpointsMappers.js.map +0 -1
  207. package/esm/models/healthProbeSettingsMappers.d.ts +0 -2
  208. package/esm/models/healthProbeSettingsMappers.d.ts.map +0 -1
  209. package/esm/models/healthProbeSettingsMappers.js +0 -11
  210. package/esm/models/healthProbeSettingsMappers.js.map +0 -1
  211. package/esm/models/index.d.ts +0 -2143
  212. package/esm/models/index.d.ts.map +0 -1
  213. package/esm/models/index.js +0 -10
  214. package/esm/models/index.js.map +0 -1
  215. package/esm/models/loadBalancingSettingsMappers.d.ts +0 -2
  216. package/esm/models/loadBalancingSettingsMappers.d.ts.map +0 -1
  217. package/esm/models/loadBalancingSettingsMappers.js +0 -11
  218. package/esm/models/loadBalancingSettingsMappers.js.map +0 -1
  219. package/esm/models/mappers.d.ts +0 -53
  220. package/esm/models/mappers.d.ts.map +0 -1
  221. package/esm/models/mappers.js +0 -1653
  222. package/esm/models/mappers.js.map +0 -1
  223. package/esm/models/parameters.d.ts +0 -15
  224. package/esm/models/parameters.d.ts.map +0 -1
  225. package/esm/models/parameters.js +0 -181
  226. package/esm/models/parameters.js.map +0 -1
  227. package/esm/models/policiesMappers.d.ts +0 -2
  228. package/esm/models/policiesMappers.d.ts.map +0 -1
  229. package/esm/models/policiesMappers.js +0 -11
  230. package/esm/models/policiesMappers.js.map +0 -1
  231. package/esm/models/routingRulesMappers.d.ts +0 -2
  232. package/esm/models/routingRulesMappers.d.ts.map +0 -1
  233. package/esm/models/routingRulesMappers.js +0 -11
  234. package/esm/models/routingRulesMappers.js.map +0 -1
  235. package/esm/operations/backendPools.d.ts +0 -115
  236. package/esm/operations/backendPools.d.ts.map +0 -1
  237. package/esm/operations/backendPools.js +0 -236
  238. package/esm/operations/backendPools.js.map +0 -1
  239. package/esm/operations/endpoints.d.ts +0 -36
  240. package/esm/operations/endpoints.d.ts.map +0 -1
  241. package/esm/operations/endpoints.js +0 -87
  242. package/esm/operations/endpoints.js.map +0 -1
  243. package/esm/operations/frontDoors.d.ts +0 -165
  244. package/esm/operations/frontDoors.d.ts.map +0 -1
  245. package/esm/operations/frontDoors.js +0 -315
  246. package/esm/operations/frontDoors.js.map +0 -1
  247. package/esm/operations/frontendEndpoints.d.ts +0 -153
  248. package/esm/operations/frontendEndpoints.d.ts.map +0 -1
  249. package/esm/operations/frontendEndpoints.js +0 -347
  250. package/esm/operations/frontendEndpoints.js.map +0 -1
  251. package/esm/operations/healthProbeSettings.d.ts +0 -124
  252. package/esm/operations/healthProbeSettings.d.ts.map +0 -1
  253. package/esm/operations/healthProbeSettings.js +0 -242
  254. package/esm/operations/healthProbeSettings.js.map +0 -1
  255. package/esm/operations/index.d.ts +0 -9
  256. package/esm/operations/index.d.ts.map +0 -1
  257. package/esm/operations/index.js +0 -18
  258. package/esm/operations/index.js.map +0 -1
  259. package/esm/operations/loadBalancingSettings.d.ts +0 -126
  260. package/esm/operations/loadBalancingSettings.d.ts.map +0 -1
  261. package/esm/operations/loadBalancingSettings.js +0 -244
  262. package/esm/operations/loadBalancingSettings.js.map +0 -1
  263. package/esm/operations/policies.d.ts +0 -111
  264. package/esm/operations/policies.d.ts.map +0 -1
  265. package/esm/operations/policies.js +0 -202
  266. package/esm/operations/policies.js.map +0 -1
  267. package/esm/operations/routingRules.d.ts +0 -115
  268. package/esm/operations/routingRules.d.ts.map +0 -1
  269. package/esm/operations/routingRules.js +0 -236
  270. package/esm/operations/routingRules.js.map +0 -1
  271. package/lib/frontDoorManagementClient.ts +0 -171
  272. package/lib/frontDoorManagementClientContext.ts +0 -61
  273. package/lib/models/backendPoolsMappers.ts +0 -39
  274. package/lib/models/endpointsMappers.ts +0 -16
  275. package/lib/models/frontDoorsMappers.ts +0 -41
  276. package/lib/models/frontendEndpointsMappers.ts +0 -39
  277. package/lib/models/healthProbeSettingsMappers.ts +0 -39
  278. package/lib/models/index.ts +0 -2261
  279. package/lib/models/loadBalancingSettingsMappers.ts +0 -39
  280. package/lib/models/mappers.ts +0 -1772
  281. package/lib/models/parameters.ts +0 -183
  282. package/lib/models/policiesMappers.ts +0 -40
  283. package/lib/models/routingRulesMappers.ts +0 -39
  284. package/lib/operations/backendPools.ts +0 -332
  285. package/lib/operations/endpoints.ts +0 -99
  286. package/lib/operations/frontDoors.ts +0 -481
  287. package/lib/operations/frontendEndpoints.ts +0 -458
  288. package/lib/operations/healthProbeSettings.ts +0 -341
  289. package/lib/operations/index.ts +0 -18
  290. package/lib/operations/loadBalancingSettings.ts +0 -343
  291. package/lib/operations/policies.ts +0 -315
  292. package/lib/operations/routingRules.ts +0 -332
@@ -0,0 +1,608 @@
1
+ /*
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * Code generated by Microsoft (R) AutoRest Code Generator.
6
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
+ */
8
+
9
+ import { PagedAsyncIterableIterator } from "@azure/core-paging";
10
+ import { Experiments } from "../operationsInterfaces";
11
+ import * as coreClient from "@azure/core-client";
12
+ import * as Mappers from "../models/mappers";
13
+ import * as Parameters from "../models/parameters";
14
+ import { FrontDoorManagementClient } from "../frontDoorManagementClient";
15
+ import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro";
16
+ import { LroImpl } from "../lroImpl";
17
+ import {
18
+ Experiment,
19
+ ExperimentsListByProfileNextOptionalParams,
20
+ ExperimentsListByProfileOptionalParams,
21
+ ExperimentsListByProfileResponse,
22
+ ExperimentsGetOptionalParams,
23
+ ExperimentsGetResponse,
24
+ ExperimentsCreateOrUpdateOptionalParams,
25
+ ExperimentsCreateOrUpdateResponse,
26
+ ExperimentUpdateModel,
27
+ ExperimentsUpdateOptionalParams,
28
+ ExperimentsUpdateResponse,
29
+ ExperimentsDeleteOptionalParams,
30
+ ExperimentsListByProfileNextResponse
31
+ } from "../models";
32
+
33
+ /// <reference lib="esnext.asynciterable" />
34
+ /** Class containing Experiments operations. */
35
+ export class ExperimentsImpl implements Experiments {
36
+ private readonly client: FrontDoorManagementClient;
37
+
38
+ /**
39
+ * Initialize a new instance of the class Experiments class.
40
+ * @param client Reference to the service client
41
+ */
42
+ constructor(client: FrontDoorManagementClient) {
43
+ this.client = client;
44
+ }
45
+
46
+ /**
47
+ * Gets a list of Experiments
48
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
49
+ * @param profileName The Profile identifier associated with the Tenant and Partner
50
+ * @param options The options parameters.
51
+ */
52
+ public listByProfile(
53
+ resourceGroupName: string,
54
+ profileName: string,
55
+ options?: ExperimentsListByProfileOptionalParams
56
+ ): PagedAsyncIterableIterator<Experiment> {
57
+ const iter = this.listByProfilePagingAll(
58
+ resourceGroupName,
59
+ profileName,
60
+ options
61
+ );
62
+ return {
63
+ next() {
64
+ return iter.next();
65
+ },
66
+ [Symbol.asyncIterator]() {
67
+ return this;
68
+ },
69
+ byPage: () => {
70
+ return this.listByProfilePagingPage(
71
+ resourceGroupName,
72
+ profileName,
73
+ options
74
+ );
75
+ }
76
+ };
77
+ }
78
+
79
+ private async *listByProfilePagingPage(
80
+ resourceGroupName: string,
81
+ profileName: string,
82
+ options?: ExperimentsListByProfileOptionalParams
83
+ ): AsyncIterableIterator<Experiment[]> {
84
+ let result = await this._listByProfile(
85
+ resourceGroupName,
86
+ profileName,
87
+ options
88
+ );
89
+ yield result.value || [];
90
+ let continuationToken = result.nextLink;
91
+ while (continuationToken) {
92
+ result = await this._listByProfileNext(
93
+ resourceGroupName,
94
+ profileName,
95
+ continuationToken,
96
+ options
97
+ );
98
+ continuationToken = result.nextLink;
99
+ yield result.value || [];
100
+ }
101
+ }
102
+
103
+ private async *listByProfilePagingAll(
104
+ resourceGroupName: string,
105
+ profileName: string,
106
+ options?: ExperimentsListByProfileOptionalParams
107
+ ): AsyncIterableIterator<Experiment> {
108
+ for await (const page of this.listByProfilePagingPage(
109
+ resourceGroupName,
110
+ profileName,
111
+ options
112
+ )) {
113
+ yield* page;
114
+ }
115
+ }
116
+
117
+ /**
118
+ * Gets a list of Experiments
119
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
120
+ * @param profileName The Profile identifier associated with the Tenant and Partner
121
+ * @param options The options parameters.
122
+ */
123
+ private _listByProfile(
124
+ resourceGroupName: string,
125
+ profileName: string,
126
+ options?: ExperimentsListByProfileOptionalParams
127
+ ): Promise<ExperimentsListByProfileResponse> {
128
+ return this.client.sendOperationRequest(
129
+ { resourceGroupName, profileName, options },
130
+ listByProfileOperationSpec
131
+ );
132
+ }
133
+
134
+ /**
135
+ * Gets an Experiment by ExperimentName
136
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
137
+ * @param profileName The Profile identifier associated with the Tenant and Partner
138
+ * @param experimentName The Experiment identifier associated with the Experiment
139
+ * @param options The options parameters.
140
+ */
141
+ get(
142
+ resourceGroupName: string,
143
+ profileName: string,
144
+ experimentName: string,
145
+ options?: ExperimentsGetOptionalParams
146
+ ): Promise<ExperimentsGetResponse> {
147
+ return this.client.sendOperationRequest(
148
+ { resourceGroupName, profileName, experimentName, options },
149
+ getOperationSpec
150
+ );
151
+ }
152
+
153
+ /**
154
+ * Creates or updates an Experiment
155
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
156
+ * @param profileName The Profile identifier associated with the Tenant and Partner
157
+ * @param experimentName The Experiment identifier associated with the Experiment
158
+ * @param parameters The Experiment resource
159
+ * @param options The options parameters.
160
+ */
161
+ async beginCreateOrUpdate(
162
+ resourceGroupName: string,
163
+ profileName: string,
164
+ experimentName: string,
165
+ parameters: Experiment,
166
+ options?: ExperimentsCreateOrUpdateOptionalParams
167
+ ): Promise<
168
+ PollerLike<
169
+ PollOperationState<ExperimentsCreateOrUpdateResponse>,
170
+ ExperimentsCreateOrUpdateResponse
171
+ >
172
+ > {
173
+ const directSendOperation = async (
174
+ args: coreClient.OperationArguments,
175
+ spec: coreClient.OperationSpec
176
+ ): Promise<ExperimentsCreateOrUpdateResponse> => {
177
+ return this.client.sendOperationRequest(args, spec);
178
+ };
179
+ const sendOperation = async (
180
+ args: coreClient.OperationArguments,
181
+ spec: coreClient.OperationSpec
182
+ ) => {
183
+ let currentRawResponse:
184
+ | coreClient.FullOperationResponse
185
+ | undefined = undefined;
186
+ const providedCallback = args.options?.onResponse;
187
+ const callback: coreClient.RawResponseCallback = (
188
+ rawResponse: coreClient.FullOperationResponse,
189
+ flatResponse: unknown
190
+ ) => {
191
+ currentRawResponse = rawResponse;
192
+ providedCallback?.(rawResponse, flatResponse);
193
+ };
194
+ const updatedArgs = {
195
+ ...args,
196
+ options: {
197
+ ...args.options,
198
+ onResponse: callback
199
+ }
200
+ };
201
+ const flatResponse = await directSendOperation(updatedArgs, spec);
202
+ return {
203
+ flatResponse,
204
+ rawResponse: {
205
+ statusCode: currentRawResponse!.status,
206
+ body: currentRawResponse!.parsedBody,
207
+ headers: currentRawResponse!.headers.toJSON()
208
+ }
209
+ };
210
+ };
211
+
212
+ const lro = new LroImpl(
213
+ sendOperation,
214
+ { resourceGroupName, profileName, experimentName, parameters, options },
215
+ createOrUpdateOperationSpec
216
+ );
217
+ return new LroEngine(lro, {
218
+ resumeFrom: options?.resumeFrom,
219
+ intervalInMs: options?.updateIntervalInMs
220
+ });
221
+ }
222
+
223
+ /**
224
+ * Creates or updates an Experiment
225
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
226
+ * @param profileName The Profile identifier associated with the Tenant and Partner
227
+ * @param experimentName The Experiment identifier associated with the Experiment
228
+ * @param parameters The Experiment resource
229
+ * @param options The options parameters.
230
+ */
231
+ async beginCreateOrUpdateAndWait(
232
+ resourceGroupName: string,
233
+ profileName: string,
234
+ experimentName: string,
235
+ parameters: Experiment,
236
+ options?: ExperimentsCreateOrUpdateOptionalParams
237
+ ): Promise<ExperimentsCreateOrUpdateResponse> {
238
+ const poller = await this.beginCreateOrUpdate(
239
+ resourceGroupName,
240
+ profileName,
241
+ experimentName,
242
+ parameters,
243
+ options
244
+ );
245
+ return poller.pollUntilDone();
246
+ }
247
+
248
+ /**
249
+ * Updates an Experiment
250
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
251
+ * @param profileName The Profile identifier associated with the Tenant and Partner
252
+ * @param experimentName The Experiment identifier associated with the Experiment
253
+ * @param parameters The Experiment Update Model
254
+ * @param options The options parameters.
255
+ */
256
+ async beginUpdate(
257
+ resourceGroupName: string,
258
+ profileName: string,
259
+ experimentName: string,
260
+ parameters: ExperimentUpdateModel,
261
+ options?: ExperimentsUpdateOptionalParams
262
+ ): Promise<
263
+ PollerLike<
264
+ PollOperationState<ExperimentsUpdateResponse>,
265
+ ExperimentsUpdateResponse
266
+ >
267
+ > {
268
+ const directSendOperation = async (
269
+ args: coreClient.OperationArguments,
270
+ spec: coreClient.OperationSpec
271
+ ): Promise<ExperimentsUpdateResponse> => {
272
+ return this.client.sendOperationRequest(args, spec);
273
+ };
274
+ const sendOperation = async (
275
+ args: coreClient.OperationArguments,
276
+ spec: coreClient.OperationSpec
277
+ ) => {
278
+ let currentRawResponse:
279
+ | coreClient.FullOperationResponse
280
+ | undefined = undefined;
281
+ const providedCallback = args.options?.onResponse;
282
+ const callback: coreClient.RawResponseCallback = (
283
+ rawResponse: coreClient.FullOperationResponse,
284
+ flatResponse: unknown
285
+ ) => {
286
+ currentRawResponse = rawResponse;
287
+ providedCallback?.(rawResponse, flatResponse);
288
+ };
289
+ const updatedArgs = {
290
+ ...args,
291
+ options: {
292
+ ...args.options,
293
+ onResponse: callback
294
+ }
295
+ };
296
+ const flatResponse = await directSendOperation(updatedArgs, spec);
297
+ return {
298
+ flatResponse,
299
+ rawResponse: {
300
+ statusCode: currentRawResponse!.status,
301
+ body: currentRawResponse!.parsedBody,
302
+ headers: currentRawResponse!.headers.toJSON()
303
+ }
304
+ };
305
+ };
306
+
307
+ const lro = new LroImpl(
308
+ sendOperation,
309
+ { resourceGroupName, profileName, experimentName, parameters, options },
310
+ updateOperationSpec
311
+ );
312
+ return new LroEngine(lro, {
313
+ resumeFrom: options?.resumeFrom,
314
+ intervalInMs: options?.updateIntervalInMs
315
+ });
316
+ }
317
+
318
+ /**
319
+ * Updates an Experiment
320
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
321
+ * @param profileName The Profile identifier associated with the Tenant and Partner
322
+ * @param experimentName The Experiment identifier associated with the Experiment
323
+ * @param parameters The Experiment Update Model
324
+ * @param options The options parameters.
325
+ */
326
+ async beginUpdateAndWait(
327
+ resourceGroupName: string,
328
+ profileName: string,
329
+ experimentName: string,
330
+ parameters: ExperimentUpdateModel,
331
+ options?: ExperimentsUpdateOptionalParams
332
+ ): Promise<ExperimentsUpdateResponse> {
333
+ const poller = await this.beginUpdate(
334
+ resourceGroupName,
335
+ profileName,
336
+ experimentName,
337
+ parameters,
338
+ options
339
+ );
340
+ return poller.pollUntilDone();
341
+ }
342
+
343
+ /**
344
+ * Deletes an Experiment
345
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
346
+ * @param profileName The Profile identifier associated with the Tenant and Partner
347
+ * @param experimentName The Experiment identifier associated with the Experiment
348
+ * @param options The options parameters.
349
+ */
350
+ async beginDelete(
351
+ resourceGroupName: string,
352
+ profileName: string,
353
+ experimentName: string,
354
+ options?: ExperimentsDeleteOptionalParams
355
+ ): Promise<PollerLike<PollOperationState<void>, void>> {
356
+ const directSendOperation = async (
357
+ args: coreClient.OperationArguments,
358
+ spec: coreClient.OperationSpec
359
+ ): Promise<void> => {
360
+ return this.client.sendOperationRequest(args, spec);
361
+ };
362
+ const sendOperation = async (
363
+ args: coreClient.OperationArguments,
364
+ spec: coreClient.OperationSpec
365
+ ) => {
366
+ let currentRawResponse:
367
+ | coreClient.FullOperationResponse
368
+ | undefined = undefined;
369
+ const providedCallback = args.options?.onResponse;
370
+ const callback: coreClient.RawResponseCallback = (
371
+ rawResponse: coreClient.FullOperationResponse,
372
+ flatResponse: unknown
373
+ ) => {
374
+ currentRawResponse = rawResponse;
375
+ providedCallback?.(rawResponse, flatResponse);
376
+ };
377
+ const updatedArgs = {
378
+ ...args,
379
+ options: {
380
+ ...args.options,
381
+ onResponse: callback
382
+ }
383
+ };
384
+ const flatResponse = await directSendOperation(updatedArgs, spec);
385
+ return {
386
+ flatResponse,
387
+ rawResponse: {
388
+ statusCode: currentRawResponse!.status,
389
+ body: currentRawResponse!.parsedBody,
390
+ headers: currentRawResponse!.headers.toJSON()
391
+ }
392
+ };
393
+ };
394
+
395
+ const lro = new LroImpl(
396
+ sendOperation,
397
+ { resourceGroupName, profileName, experimentName, options },
398
+ deleteOperationSpec
399
+ );
400
+ return new LroEngine(lro, {
401
+ resumeFrom: options?.resumeFrom,
402
+ intervalInMs: options?.updateIntervalInMs
403
+ });
404
+ }
405
+
406
+ /**
407
+ * Deletes an Experiment
408
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
409
+ * @param profileName The Profile identifier associated with the Tenant and Partner
410
+ * @param experimentName The Experiment identifier associated with the Experiment
411
+ * @param options The options parameters.
412
+ */
413
+ async beginDeleteAndWait(
414
+ resourceGroupName: string,
415
+ profileName: string,
416
+ experimentName: string,
417
+ options?: ExperimentsDeleteOptionalParams
418
+ ): Promise<void> {
419
+ const poller = await this.beginDelete(
420
+ resourceGroupName,
421
+ profileName,
422
+ experimentName,
423
+ options
424
+ );
425
+ return poller.pollUntilDone();
426
+ }
427
+
428
+ /**
429
+ * ListByProfileNext
430
+ * @param resourceGroupName Name of the Resource group within the Azure subscription.
431
+ * @param profileName The Profile identifier associated with the Tenant and Partner
432
+ * @param nextLink The nextLink from the previous successful call to the ListByProfile method.
433
+ * @param options The options parameters.
434
+ */
435
+ private _listByProfileNext(
436
+ resourceGroupName: string,
437
+ profileName: string,
438
+ nextLink: string,
439
+ options?: ExperimentsListByProfileNextOptionalParams
440
+ ): Promise<ExperimentsListByProfileNextResponse> {
441
+ return this.client.sendOperationRequest(
442
+ { resourceGroupName, profileName, nextLink, options },
443
+ listByProfileNextOperationSpec
444
+ );
445
+ }
446
+ }
447
+ // Operation Specifications
448
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
449
+
450
+ const listByProfileOperationSpec: coreClient.OperationSpec = {
451
+ path:
452
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments",
453
+ httpMethod: "GET",
454
+ responses: {
455
+ 200: {
456
+ bodyMapper: Mappers.ExperimentList
457
+ },
458
+ default: {
459
+ bodyMapper: Mappers.ErrorResponse
460
+ }
461
+ },
462
+ queryParameters: [Parameters.apiVersion],
463
+ urlParameters: [
464
+ Parameters.$host,
465
+ Parameters.subscriptionId,
466
+ Parameters.resourceGroupName,
467
+ Parameters.profileName
468
+ ],
469
+ headerParameters: [Parameters.accept],
470
+ serializer
471
+ };
472
+ const getOperationSpec: coreClient.OperationSpec = {
473
+ path:
474
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}",
475
+ httpMethod: "GET",
476
+ responses: {
477
+ 200: {
478
+ bodyMapper: Mappers.Experiment
479
+ },
480
+ default: {
481
+ bodyMapper: Mappers.ErrorResponse
482
+ }
483
+ },
484
+ queryParameters: [Parameters.apiVersion],
485
+ urlParameters: [
486
+ Parameters.$host,
487
+ Parameters.subscriptionId,
488
+ Parameters.resourceGroupName,
489
+ Parameters.profileName,
490
+ Parameters.experimentName
491
+ ],
492
+ headerParameters: [Parameters.accept],
493
+ serializer
494
+ };
495
+ const createOrUpdateOperationSpec: coreClient.OperationSpec = {
496
+ path:
497
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}",
498
+ httpMethod: "PUT",
499
+ responses: {
500
+ 200: {
501
+ bodyMapper: Mappers.Experiment
502
+ },
503
+ 201: {
504
+ bodyMapper: Mappers.Experiment
505
+ },
506
+ 202: {
507
+ bodyMapper: Mappers.Experiment
508
+ },
509
+ 204: {
510
+ bodyMapper: Mappers.Experiment
511
+ },
512
+ default: {
513
+ bodyMapper: Mappers.ErrorResponse
514
+ }
515
+ },
516
+ requestBody: Parameters.parameters2,
517
+ queryParameters: [Parameters.apiVersion],
518
+ urlParameters: [
519
+ Parameters.$host,
520
+ Parameters.subscriptionId,
521
+ Parameters.resourceGroupName,
522
+ Parameters.profileName,
523
+ Parameters.experimentName
524
+ ],
525
+ headerParameters: [Parameters.accept, Parameters.contentType],
526
+ mediaType: "json",
527
+ serializer
528
+ };
529
+ const updateOperationSpec: coreClient.OperationSpec = {
530
+ path:
531
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}",
532
+ httpMethod: "PATCH",
533
+ responses: {
534
+ 200: {
535
+ bodyMapper: Mappers.Experiment
536
+ },
537
+ 201: {
538
+ bodyMapper: Mappers.Experiment
539
+ },
540
+ 202: {
541
+ bodyMapper: Mappers.Experiment
542
+ },
543
+ 204: {
544
+ bodyMapper: Mappers.Experiment
545
+ },
546
+ default: {
547
+ bodyMapper: Mappers.ErrorResponse
548
+ }
549
+ },
550
+ requestBody: Parameters.parameters3,
551
+ queryParameters: [Parameters.apiVersion],
552
+ urlParameters: [
553
+ Parameters.$host,
554
+ Parameters.subscriptionId,
555
+ Parameters.resourceGroupName,
556
+ Parameters.profileName,
557
+ Parameters.experimentName
558
+ ],
559
+ headerParameters: [Parameters.accept, Parameters.contentType],
560
+ mediaType: "json",
561
+ serializer
562
+ };
563
+ const deleteOperationSpec: coreClient.OperationSpec = {
564
+ path:
565
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}",
566
+ httpMethod: "DELETE",
567
+ responses: {
568
+ 200: {},
569
+ 201: {},
570
+ 202: {},
571
+ 204: {},
572
+ default: {
573
+ bodyMapper: Mappers.ErrorResponse
574
+ }
575
+ },
576
+ queryParameters: [Parameters.apiVersion],
577
+ urlParameters: [
578
+ Parameters.$host,
579
+ Parameters.subscriptionId,
580
+ Parameters.resourceGroupName,
581
+ Parameters.profileName,
582
+ Parameters.experimentName
583
+ ],
584
+ headerParameters: [Parameters.accept],
585
+ serializer
586
+ };
587
+ const listByProfileNextOperationSpec: coreClient.OperationSpec = {
588
+ path: "{nextLink}",
589
+ httpMethod: "GET",
590
+ responses: {
591
+ 200: {
592
+ bodyMapper: Mappers.ExperimentList
593
+ },
594
+ default: {
595
+ bodyMapper: Mappers.ErrorResponse
596
+ }
597
+ },
598
+ queryParameters: [Parameters.apiVersion],
599
+ urlParameters: [
600
+ Parameters.$host,
601
+ Parameters.subscriptionId,
602
+ Parameters.resourceGroupName,
603
+ Parameters.profileName,
604
+ Parameters.nextLink
605
+ ],
606
+ headerParameters: [Parameters.accept],
607
+ serializer
608
+ };
@@ -0,0 +1,68 @@
1
+ /*
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * Code generated by Microsoft (R) AutoRest Code Generator.
6
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
+ */
8
+
9
+ import { FrontDoorNameAvailability } from "../operationsInterfaces";
10
+ import * as coreClient from "@azure/core-client";
11
+ import * as Mappers from "../models/mappers";
12
+ import * as Parameters from "../models/parameters";
13
+ import { FrontDoorManagementClient } from "../frontDoorManagementClient";
14
+ import {
15
+ CheckNameAvailabilityInput,
16
+ FrontDoorNameAvailabilityCheckOptionalParams,
17
+ FrontDoorNameAvailabilityCheckResponse
18
+ } from "../models";
19
+
20
+ /** Class containing FrontDoorNameAvailability operations. */
21
+ export class FrontDoorNameAvailabilityImpl
22
+ implements FrontDoorNameAvailability {
23
+ private readonly client: FrontDoorManagementClient;
24
+
25
+ /**
26
+ * Initialize a new instance of the class FrontDoorNameAvailability class.
27
+ * @param client Reference to the service client
28
+ */
29
+ constructor(client: FrontDoorManagementClient) {
30
+ this.client = client;
31
+ }
32
+
33
+ /**
34
+ * Check the availability of a Front Door resource name.
35
+ * @param checkFrontDoorNameAvailabilityInput Input to check.
36
+ * @param options The options parameters.
37
+ */
38
+ check(
39
+ checkFrontDoorNameAvailabilityInput: CheckNameAvailabilityInput,
40
+ options?: FrontDoorNameAvailabilityCheckOptionalParams
41
+ ): Promise<FrontDoorNameAvailabilityCheckResponse> {
42
+ return this.client.sendOperationRequest(
43
+ { checkFrontDoorNameAvailabilityInput, options },
44
+ checkOperationSpec
45
+ );
46
+ }
47
+ }
48
+ // Operation Specifications
49
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
50
+
51
+ const checkOperationSpec: coreClient.OperationSpec = {
52
+ path: "/providers/Microsoft.Network/checkFrontDoorNameAvailability",
53
+ httpMethod: "POST",
54
+ responses: {
55
+ 200: {
56
+ bodyMapper: Mappers.CheckNameAvailabilityOutput
57
+ },
58
+ default: {
59
+ bodyMapper: Mappers.ErrorResponse
60
+ }
61
+ },
62
+ requestBody: Parameters.checkFrontDoorNameAvailabilityInput,
63
+ queryParameters: [Parameters.apiVersion1],
64
+ urlParameters: [Parameters.$host],
65
+ headerParameters: [Parameters.accept, Parameters.contentType],
66
+ mediaType: "json",
67
+ serializer
68
+ };