@azure/arm-avs 1.0.0 → 3.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 (301) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/LICENSE +21 -0
  3. package/README.md +72 -73
  4. package/dist/index.js +11681 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/index.min.js +1 -0
  7. package/dist/index.min.js.map +1 -0
  8. package/dist-esm/src/azureVMwareSolutionAPI.d.ts +33 -0
  9. package/dist-esm/src/azureVMwareSolutionAPI.d.ts.map +1 -0
  10. package/dist-esm/src/azureVMwareSolutionAPI.js +66 -0
  11. package/dist-esm/src/azureVMwareSolutionAPI.js.map +1 -0
  12. package/dist-esm/src/index.d.ts +5 -0
  13. package/dist-esm/src/index.d.ts.map +1 -0
  14. package/dist-esm/src/index.js +12 -0
  15. package/dist-esm/src/index.js.map +1 -0
  16. package/dist-esm/src/lroImpl.d.ts +16 -0
  17. package/dist-esm/src/lroImpl.d.ts.map +1 -0
  18. package/dist-esm/src/lroImpl.js +29 -0
  19. package/dist-esm/src/lroImpl.js.map +1 -0
  20. package/dist-esm/src/models/index.d.ts +2962 -0
  21. package/dist-esm/src/models/index.d.ts.map +1 -0
  22. package/dist-esm/src/models/index.js +363 -0
  23. package/dist-esm/src/models/index.js.map +1 -0
  24. package/dist-esm/src/models/mappers.d.ts +115 -0
  25. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  26. package/dist-esm/src/models/mappers.js +3114 -0
  27. package/dist-esm/src/models/mappers.js.map +1 -0
  28. package/dist-esm/src/models/parameters.d.ts +53 -0
  29. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  30. package/dist-esm/src/models/parameters.js +409 -0
  31. package/dist-esm/src/models/parameters.js.map +1 -0
  32. package/dist-esm/src/operations/addons.d.ts +81 -0
  33. package/dist-esm/src/operations/addons.d.ts.map +1 -0
  34. package/dist-esm/src/operations/addons.js +331 -0
  35. package/dist-esm/src/operations/addons.js.map +1 -0
  36. package/dist-esm/src/operations/authorizations.d.ts +81 -0
  37. package/dist-esm/src/operations/authorizations.d.ts.map +1 -0
  38. package/dist-esm/src/operations/authorizations.js +337 -0
  39. package/dist-esm/src/operations/authorizations.js.map +1 -0
  40. package/dist-esm/src/operations/cloudLinks.d.ts +81 -0
  41. package/dist-esm/src/operations/cloudLinks.d.ts.map +1 -0
  42. package/dist-esm/src/operations/cloudLinks.js +337 -0
  43. package/dist-esm/src/operations/cloudLinks.js.map +1 -0
  44. package/dist-esm/src/operations/clusters.d.ts +99 -0
  45. package/dist-esm/src/operations/clusters.d.ts.map +1 -0
  46. package/dist-esm/src/operations/clusters.js +423 -0
  47. package/dist-esm/src/operations/clusters.js.map +1 -0
  48. package/dist-esm/src/operations/datastores.d.ts +89 -0
  49. package/dist-esm/src/operations/datastores.d.ts.map +1 -0
  50. package/dist-esm/src/operations/datastores.js +363 -0
  51. package/dist-esm/src/operations/datastores.js.map +1 -0
  52. package/dist-esm/src/operations/globalReachConnections.d.ts +81 -0
  53. package/dist-esm/src/operations/globalReachConnections.d.ts.map +1 -0
  54. package/dist-esm/src/operations/globalReachConnections.js +347 -0
  55. package/dist-esm/src/operations/globalReachConnections.js.map +1 -0
  56. package/dist-esm/src/operations/hcxEnterpriseSites.d.ts +63 -0
  57. package/dist-esm/src/operations/hcxEnterpriseSites.d.ts.map +1 -0
  58. package/dist-esm/src/operations/hcxEnterpriseSites.js +244 -0
  59. package/dist-esm/src/operations/hcxEnterpriseSites.js.map +1 -0
  60. package/dist-esm/src/operations/index.d.ts +17 -0
  61. package/dist-esm/src/operations/index.d.ts.map +1 -0
  62. package/dist-esm/src/operations/index.js +24 -0
  63. package/dist-esm/src/operations/index.js.map +1 -0
  64. package/dist-esm/src/operations/locations.d.ts +25 -0
  65. package/dist-esm/src/operations/locations.d.ts.map +1 -0
  66. package/dist-esm/src/operations/locations.js +79 -0
  67. package/dist-esm/src/operations/locations.js.map +1 -0
  68. package/dist-esm/src/operations/operations.d.ts +32 -0
  69. package/dist-esm/src/operations/operations.d.ts.map +1 -0
  70. package/dist-esm/src/operations/operations.js +120 -0
  71. package/dist-esm/src/operations/operations.js.map +1 -0
  72. package/dist-esm/src/operations/placementPolicies.d.ts +116 -0
  73. package/dist-esm/src/operations/placementPolicies.d.ts.map +1 -0
  74. package/dist-esm/src/operations/placementPolicies.js +466 -0
  75. package/dist-esm/src/operations/placementPolicies.js.map +1 -0
  76. package/dist-esm/src/operations/privateClouds.d.ts +142 -0
  77. package/dist-esm/src/operations/privateClouds.d.ts.map +1 -0
  78. package/dist-esm/src/operations/privateClouds.js +672 -0
  79. package/dist-esm/src/operations/privateClouds.js.map +1 -0
  80. package/dist-esm/src/operations/scriptCmdlets.d.ts +53 -0
  81. package/dist-esm/src/operations/scriptCmdlets.d.ts.map +1 -0
  82. package/dist-esm/src/operations/scriptCmdlets.js +191 -0
  83. package/dist-esm/src/operations/scriptCmdlets.js.map +1 -0
  84. package/dist-esm/src/operations/scriptExecutions.d.ts +89 -0
  85. package/dist-esm/src/operations/scriptExecutions.d.ts.map +1 -0
  86. package/dist-esm/src/operations/scriptExecutions.js +371 -0
  87. package/dist-esm/src/operations/scriptExecutions.js.map +1 -0
  88. package/dist-esm/src/operations/scriptPackages.d.ts +46 -0
  89. package/dist-esm/src/operations/scriptPackages.d.ts.map +1 -0
  90. package/dist-esm/src/operations/scriptPackages.js +169 -0
  91. package/dist-esm/src/operations/scriptPackages.js.map +1 -0
  92. package/dist-esm/src/operations/virtualMachines.d.ts +71 -0
  93. package/dist-esm/src/operations/virtualMachines.d.ts.map +1 -0
  94. package/dist-esm/src/operations/virtualMachines.js +272 -0
  95. package/dist-esm/src/operations/virtualMachines.js.map +1 -0
  96. package/dist-esm/src/operations/workloadNetworks.d.ts +661 -0
  97. package/dist-esm/src/operations/workloadNetworks.d.ts.map +1 -0
  98. package/dist-esm/src/operations/workloadNetworks.js +3049 -0
  99. package/dist-esm/src/operations/workloadNetworks.js.map +1 -0
  100. package/dist-esm/src/operationsInterfaces/addons.d.ts +56 -0
  101. package/dist-esm/src/operationsInterfaces/addons.d.ts.map +1 -0
  102. package/dist-esm/src/operationsInterfaces/addons.js +9 -0
  103. package/dist-esm/src/operationsInterfaces/addons.js.map +1 -0
  104. package/dist-esm/src/operationsInterfaces/authorizations.d.ts +56 -0
  105. package/dist-esm/src/operationsInterfaces/authorizations.d.ts.map +1 -0
  106. package/dist-esm/src/operationsInterfaces/authorizations.js +9 -0
  107. package/dist-esm/src/operationsInterfaces/authorizations.js.map +1 -0
  108. package/dist-esm/src/operationsInterfaces/cloudLinks.d.ts +56 -0
  109. package/dist-esm/src/operationsInterfaces/cloudLinks.d.ts.map +1 -0
  110. package/dist-esm/src/operationsInterfaces/cloudLinks.js +9 -0
  111. package/dist-esm/src/operationsInterfaces/cloudLinks.js.map +1 -0
  112. package/dist-esm/src/operationsInterfaces/clusters.d.ts +74 -0
  113. package/dist-esm/src/operationsInterfaces/clusters.d.ts.map +1 -0
  114. package/dist-esm/src/operationsInterfaces/clusters.js +9 -0
  115. package/dist-esm/src/operationsInterfaces/clusters.js.map +1 -0
  116. package/dist-esm/src/operationsInterfaces/datastores.d.ts +62 -0
  117. package/dist-esm/src/operationsInterfaces/datastores.d.ts.map +1 -0
  118. package/dist-esm/src/operationsInterfaces/datastores.js +9 -0
  119. package/dist-esm/src/operationsInterfaces/datastores.js.map +1 -0
  120. package/dist-esm/src/operationsInterfaces/globalReachConnections.d.ts +56 -0
  121. package/dist-esm/src/operationsInterfaces/globalReachConnections.d.ts.map +1 -0
  122. package/dist-esm/src/operationsInterfaces/globalReachConnections.js +9 -0
  123. package/dist-esm/src/operationsInterfaces/globalReachConnections.js.map +1 -0
  124. package/dist-esm/src/operationsInterfaces/hcxEnterpriseSites.d.ts +38 -0
  125. package/dist-esm/src/operationsInterfaces/hcxEnterpriseSites.d.ts.map +1 -0
  126. package/dist-esm/src/operationsInterfaces/hcxEnterpriseSites.js +9 -0
  127. package/dist-esm/src/operationsInterfaces/hcxEnterpriseSites.js.map +1 -0
  128. package/dist-esm/src/operationsInterfaces/index.d.ts +17 -0
  129. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  130. package/dist-esm/src/operationsInterfaces/index.js +24 -0
  131. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  132. package/dist-esm/src/operationsInterfaces/locations.d.ts +17 -0
  133. package/dist-esm/src/operationsInterfaces/locations.d.ts.map +1 -0
  134. package/dist-esm/src/operationsInterfaces/locations.js +9 -0
  135. package/dist-esm/src/operationsInterfaces/locations.js.map +1 -0
  136. package/dist-esm/src/operationsInterfaces/operations.d.ts +11 -0
  137. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -0
  138. package/dist-esm/src/operationsInterfaces/operations.js +9 -0
  139. package/dist-esm/src/operationsInterfaces/operations.js.map +1 -0
  140. package/dist-esm/src/operationsInterfaces/placementPolicies.d.ts +89 -0
  141. package/dist-esm/src/operationsInterfaces/placementPolicies.d.ts.map +1 -0
  142. package/dist-esm/src/operationsInterfaces/placementPolicies.js +9 -0
  143. package/dist-esm/src/operationsInterfaces/placementPolicies.js.map +1 -0
  144. package/dist-esm/src/operationsInterfaces/privateClouds.d.ts +106 -0
  145. package/dist-esm/src/operationsInterfaces/privateClouds.d.ts.map +1 -0
  146. package/dist-esm/src/operationsInterfaces/privateClouds.js +9 -0
  147. package/dist-esm/src/operationsInterfaces/privateClouds.js.map +1 -0
  148. package/dist-esm/src/operationsInterfaces/scriptCmdlets.d.ts +25 -0
  149. package/dist-esm/src/operationsInterfaces/scriptCmdlets.d.ts.map +1 -0
  150. package/dist-esm/src/operationsInterfaces/scriptCmdlets.js +9 -0
  151. package/dist-esm/src/operationsInterfaces/scriptCmdlets.js.map +1 -0
  152. package/dist-esm/src/operationsInterfaces/scriptExecutions.d.ts +64 -0
  153. package/dist-esm/src/operationsInterfaces/scriptExecutions.d.ts.map +1 -0
  154. package/dist-esm/src/operationsInterfaces/scriptExecutions.js +9 -0
  155. package/dist-esm/src/operationsInterfaces/scriptExecutions.js.map +1 -0
  156. package/dist-esm/src/operationsInterfaces/scriptPackages.d.ts +21 -0
  157. package/dist-esm/src/operationsInterfaces/scriptPackages.d.ts.map +1 -0
  158. package/dist-esm/src/operationsInterfaces/scriptPackages.js +9 -0
  159. package/dist-esm/src/operationsInterfaces/scriptPackages.js.map +1 -0
  160. package/dist-esm/src/operationsInterfaces/virtualMachines.d.ts +44 -0
  161. package/dist-esm/src/operationsInterfaces/virtualMachines.d.ts.map +1 -0
  162. package/dist-esm/src/operationsInterfaces/virtualMachines.js +9 -0
  163. package/dist-esm/src/operationsInterfaces/virtualMachines.js.map +1 -0
  164. package/dist-esm/src/operationsInterfaces/workloadNetworks.d.ts +500 -0
  165. package/dist-esm/src/operationsInterfaces/workloadNetworks.d.ts.map +1 -0
  166. package/dist-esm/src/operationsInterfaces/workloadNetworks.js +9 -0
  167. package/dist-esm/src/operationsInterfaces/workloadNetworks.js.map +1 -0
  168. package/dist-esm/test/sampleTest.d.ts +2 -0
  169. package/dist-esm/test/sampleTest.d.ts.map +1 -0
  170. package/dist-esm/test/sampleTest.js +40 -0
  171. package/dist-esm/test/sampleTest.js.map +1 -0
  172. package/package.json +65 -31
  173. package/review/arm-avs.api.md +2534 -0
  174. package/rollup.config.js +181 -30
  175. package/src/azureVMwareSolutionAPI.ts +139 -0
  176. package/src/index.ts +12 -0
  177. package/src/lroImpl.ts +34 -0
  178. package/src/models/index.ts +3101 -931
  179. package/src/models/mappers.ts +2874 -387
  180. package/src/models/parameters.ts +407 -44
  181. package/src/operations/addons.ts +472 -0
  182. package/src/operations/authorizations.ts +341 -196
  183. package/src/operations/cloudLinks.ts +478 -0
  184. package/src/operations/clusters.ts +444 -238
  185. package/src/operations/datastores.ts +525 -0
  186. package/src/operations/globalReachConnections.ts +488 -0
  187. package/src/operations/hcxEnterpriseSites.ts +200 -210
  188. package/src/operations/index.ts +13 -5
  189. package/src/operations/locations.ts +56 -83
  190. package/src/operations/operations.ts +87 -73
  191. package/src/operations/placementPolicies.ts +677 -0
  192. package/src/operations/privateClouds.ts +705 -319
  193. package/src/operations/scriptCmdlets.ts +266 -0
  194. package/src/operations/scriptExecutions.ts +524 -0
  195. package/src/operations/scriptPackages.ts +229 -0
  196. package/src/operations/virtualMachines.ts +390 -0
  197. package/src/operations/workloadNetworks.ts +4398 -0
  198. package/src/operationsInterfaces/addons.ts +109 -0
  199. package/src/operationsInterfaces/authorizations.ts +109 -0
  200. package/src/operationsInterfaces/cloudLinks.ts +109 -0
  201. package/src/operationsInterfaces/clusters.ts +147 -0
  202. package/src/operationsInterfaces/datastores.ts +121 -0
  203. package/src/operationsInterfaces/globalReachConnections.ts +109 -0
  204. package/src/operationsInterfaces/hcxEnterpriseSites.ts +75 -0
  205. package/src/operationsInterfaces/index.ts +24 -0
  206. package/src/operationsInterfaces/locations.ts +36 -0
  207. package/src/operationsInterfaces/operations.ts +22 -0
  208. package/src/operationsInterfaces/placementPolicies.ts +170 -0
  209. package/src/operationsInterfaces/privateClouds.ts +198 -0
  210. package/src/operationsInterfaces/scriptCmdlets.ts +50 -0
  211. package/src/operationsInterfaces/scriptExecutions.ts +124 -0
  212. package/src/operationsInterfaces/scriptPackages.ts +44 -0
  213. package/src/operationsInterfaces/virtualMachines.ts +85 -0
  214. package/src/operationsInterfaces/workloadNetworks.ts +951 -0
  215. package/tsconfig.json +3 -3
  216. package/types/arm-avs.d.ts +4645 -0
  217. package/types/tsdoc-metadata.json +11 -0
  218. package/dist/arm-avs.js +0 -2585
  219. package/dist/arm-avs.js.map +0 -1
  220. package/dist/arm-avs.min.js +0 -1
  221. package/dist/arm-avs.min.js.map +0 -1
  222. package/esm/avsClient.d.ts +0 -23
  223. package/esm/avsClient.d.ts.map +0 -1
  224. package/esm/avsClient.js +0 -38
  225. package/esm/avsClient.js.map +0 -1
  226. package/esm/avsClientContext.d.ts +0 -16
  227. package/esm/avsClientContext.d.ts.map +0 -1
  228. package/esm/avsClientContext.js +0 -56
  229. package/esm/avsClientContext.js.map +0 -1
  230. package/esm/models/authorizationsMappers.d.ts +0 -2
  231. package/esm/models/authorizationsMappers.d.ts.map +0 -1
  232. package/esm/models/authorizationsMappers.js +0 -9
  233. package/esm/models/authorizationsMappers.js.map +0 -1
  234. package/esm/models/clustersMappers.d.ts +0 -2
  235. package/esm/models/clustersMappers.d.ts.map +0 -1
  236. package/esm/models/clustersMappers.js +0 -9
  237. package/esm/models/clustersMappers.js.map +0 -1
  238. package/esm/models/hcxEnterpriseSitesMappers.d.ts +0 -2
  239. package/esm/models/hcxEnterpriseSitesMappers.d.ts.map +0 -1
  240. package/esm/models/hcxEnterpriseSitesMappers.js +0 -9
  241. package/esm/models/hcxEnterpriseSitesMappers.js.map +0 -1
  242. package/esm/models/index.d.ts +0 -1163
  243. package/esm/models/index.d.ts.map +0 -1
  244. package/esm/models/index.js +0 -8
  245. package/esm/models/index.js.map +0 -1
  246. package/esm/models/locationsMappers.d.ts +0 -2
  247. package/esm/models/locationsMappers.d.ts.map +0 -1
  248. package/esm/models/locationsMappers.js +0 -9
  249. package/esm/models/locationsMappers.js.map +0 -1
  250. package/esm/models/mappers.d.ts +0 -30
  251. package/esm/models/mappers.d.ts.map +0 -1
  252. package/esm/models/mappers.js +0 -881
  253. package/esm/models/mappers.js.map +0 -1
  254. package/esm/models/operationsMappers.d.ts +0 -2
  255. package/esm/models/operationsMappers.d.ts.map +0 -1
  256. package/esm/models/operationsMappers.js +0 -9
  257. package/esm/models/operationsMappers.js.map +0 -1
  258. package/esm/models/parameters.d.ts +0 -12
  259. package/esm/models/parameters.d.ts.map +0 -1
  260. package/esm/models/parameters.js +0 -122
  261. package/esm/models/parameters.js.map +0 -1
  262. package/esm/models/privateCloudsMappers.d.ts +0 -2
  263. package/esm/models/privateCloudsMappers.d.ts.map +0 -1
  264. package/esm/models/privateCloudsMappers.js +0 -9
  265. package/esm/models/privateCloudsMappers.js.map +0 -1
  266. package/esm/operations/authorizations.d.ts +0 -115
  267. package/esm/operations/authorizations.d.ts.map +0 -1
  268. package/esm/operations/authorizations.js +0 -239
  269. package/esm/operations/authorizations.js.map +0 -1
  270. package/esm/operations/clusters.d.ts +0 -133
  271. package/esm/operations/clusters.d.ts.map +0 -1
  272. package/esm/operations/clusters.js +0 -299
  273. package/esm/operations/clusters.js.map +0 -1
  274. package/esm/operations/hcxEnterpriseSites.d.ts +0 -127
  275. package/esm/operations/hcxEnterpriseSites.d.ts.map +0 -1
  276. package/esm/operations/hcxEnterpriseSites.js +0 -196
  277. package/esm/operations/hcxEnterpriseSites.js.map +0 -1
  278. package/esm/operations/index.d.ts +0 -7
  279. package/esm/operations/index.d.ts.map +0 -1
  280. package/esm/operations/index.js +0 -16
  281. package/esm/operations/index.js.map +0 -1
  282. package/esm/operations/locations.d.ts +0 -49
  283. package/esm/operations/locations.d.ts.map +0 -1
  284. package/esm/operations/locations.js +0 -85
  285. package/esm/operations/locations.js.map +0 -1
  286. package/esm/operations/operations.d.ts +0 -46
  287. package/esm/operations/operations.d.ts.map +0 -1
  288. package/esm/operations/operations.js +0 -77
  289. package/esm/operations/operations.js.map +0 -1
  290. package/esm/operations/privateClouds.d.ts +0 -177
  291. package/esm/operations/privateClouds.d.ts.map +0 -1
  292. package/esm/operations/privateClouds.js +0 -365
  293. package/esm/operations/privateClouds.js.map +0 -1
  294. package/src/avsClient.ts +0 -52
  295. package/src/avsClientContext.ts +0 -62
  296. package/src/models/authorizationsMappers.ts +0 -27
  297. package/src/models/clustersMappers.ts +0 -28
  298. package/src/models/hcxEnterpriseSitesMappers.ts +0 -27
  299. package/src/models/locationsMappers.ts +0 -15
  300. package/src/models/operationsMappers.ts +0 -16
  301. package/src/models/privateCloudsMappers.ts +0 -29
@@ -0,0 +1,525 @@
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 { Datastores } 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 { AzureVMwareSolutionAPI } from "../azureVMwareSolutionAPI";
15
+ import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro";
16
+ import { LroImpl } from "../lroImpl";
17
+ import {
18
+ Datastore,
19
+ DatastoresListNextOptionalParams,
20
+ DatastoresListOptionalParams,
21
+ DatastoresListResponse,
22
+ DatastoresGetOptionalParams,
23
+ DatastoresGetResponse,
24
+ DatastoresCreateOrUpdateOptionalParams,
25
+ DatastoresCreateOrUpdateResponse,
26
+ DatastoresDeleteOptionalParams,
27
+ DatastoresListNextResponse
28
+ } from "../models";
29
+
30
+ /// <reference lib="esnext.asynciterable" />
31
+ /** Class containing Datastores operations. */
32
+ export class DatastoresImpl implements Datastores {
33
+ private readonly client: AzureVMwareSolutionAPI;
34
+
35
+ /**
36
+ * Initialize a new instance of the class Datastores class.
37
+ * @param client Reference to the service client
38
+ */
39
+ constructor(client: AzureVMwareSolutionAPI) {
40
+ this.client = client;
41
+ }
42
+
43
+ /**
44
+ * List datastores in a private cloud cluster
45
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
46
+ * @param privateCloudName Name of the private cloud
47
+ * @param clusterName Name of the cluster in the private cloud
48
+ * @param options The options parameters.
49
+ */
50
+ public list(
51
+ resourceGroupName: string,
52
+ privateCloudName: string,
53
+ clusterName: string,
54
+ options?: DatastoresListOptionalParams
55
+ ): PagedAsyncIterableIterator<Datastore> {
56
+ const iter = this.listPagingAll(
57
+ resourceGroupName,
58
+ privateCloudName,
59
+ clusterName,
60
+ options
61
+ );
62
+ return {
63
+ next() {
64
+ return iter.next();
65
+ },
66
+ [Symbol.asyncIterator]() {
67
+ return this;
68
+ },
69
+ byPage: () => {
70
+ return this.listPagingPage(
71
+ resourceGroupName,
72
+ privateCloudName,
73
+ clusterName,
74
+ options
75
+ );
76
+ }
77
+ };
78
+ }
79
+
80
+ private async *listPagingPage(
81
+ resourceGroupName: string,
82
+ privateCloudName: string,
83
+ clusterName: string,
84
+ options?: DatastoresListOptionalParams
85
+ ): AsyncIterableIterator<Datastore[]> {
86
+ let result = await this._list(
87
+ resourceGroupName,
88
+ privateCloudName,
89
+ clusterName,
90
+ options
91
+ );
92
+ yield result.value || [];
93
+ let continuationToken = result.nextLink;
94
+ while (continuationToken) {
95
+ result = await this._listNext(
96
+ resourceGroupName,
97
+ privateCloudName,
98
+ clusterName,
99
+ continuationToken,
100
+ options
101
+ );
102
+ continuationToken = result.nextLink;
103
+ yield result.value || [];
104
+ }
105
+ }
106
+
107
+ private async *listPagingAll(
108
+ resourceGroupName: string,
109
+ privateCloudName: string,
110
+ clusterName: string,
111
+ options?: DatastoresListOptionalParams
112
+ ): AsyncIterableIterator<Datastore> {
113
+ for await (const page of this.listPagingPage(
114
+ resourceGroupName,
115
+ privateCloudName,
116
+ clusterName,
117
+ options
118
+ )) {
119
+ yield* page;
120
+ }
121
+ }
122
+
123
+ /**
124
+ * List datastores in a private cloud cluster
125
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
126
+ * @param privateCloudName Name of the private cloud
127
+ * @param clusterName Name of the cluster in the private cloud
128
+ * @param options The options parameters.
129
+ */
130
+ private _list(
131
+ resourceGroupName: string,
132
+ privateCloudName: string,
133
+ clusterName: string,
134
+ options?: DatastoresListOptionalParams
135
+ ): Promise<DatastoresListResponse> {
136
+ return this.client.sendOperationRequest(
137
+ { resourceGroupName, privateCloudName, clusterName, options },
138
+ listOperationSpec
139
+ );
140
+ }
141
+
142
+ /**
143
+ * Get a datastore in a private cloud cluster
144
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
145
+ * @param privateCloudName Name of the private cloud
146
+ * @param clusterName Name of the cluster in the private cloud
147
+ * @param datastoreName Name of the datastore in the private cloud cluster
148
+ * @param options The options parameters.
149
+ */
150
+ get(
151
+ resourceGroupName: string,
152
+ privateCloudName: string,
153
+ clusterName: string,
154
+ datastoreName: string,
155
+ options?: DatastoresGetOptionalParams
156
+ ): Promise<DatastoresGetResponse> {
157
+ return this.client.sendOperationRequest(
158
+ {
159
+ resourceGroupName,
160
+ privateCloudName,
161
+ clusterName,
162
+ datastoreName,
163
+ options
164
+ },
165
+ getOperationSpec
166
+ );
167
+ }
168
+
169
+ /**
170
+ * Create or update a datastore in a private cloud cluster
171
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
172
+ * @param privateCloudName Name of the private cloud
173
+ * @param clusterName Name of the cluster in the private cloud
174
+ * @param datastoreName Name of the datastore in the private cloud cluster
175
+ * @param datastore A datastore in a private cloud cluster
176
+ * @param options The options parameters.
177
+ */
178
+ async beginCreateOrUpdate(
179
+ resourceGroupName: string,
180
+ privateCloudName: string,
181
+ clusterName: string,
182
+ datastoreName: string,
183
+ datastore: Datastore,
184
+ options?: DatastoresCreateOrUpdateOptionalParams
185
+ ): Promise<
186
+ PollerLike<
187
+ PollOperationState<DatastoresCreateOrUpdateResponse>,
188
+ DatastoresCreateOrUpdateResponse
189
+ >
190
+ > {
191
+ const directSendOperation = async (
192
+ args: coreClient.OperationArguments,
193
+ spec: coreClient.OperationSpec
194
+ ): Promise<DatastoresCreateOrUpdateResponse> => {
195
+ return this.client.sendOperationRequest(args, spec);
196
+ };
197
+ const sendOperation = async (
198
+ args: coreClient.OperationArguments,
199
+ spec: coreClient.OperationSpec
200
+ ) => {
201
+ let currentRawResponse:
202
+ | coreClient.FullOperationResponse
203
+ | undefined = undefined;
204
+ const providedCallback = args.options?.onResponse;
205
+ const callback: coreClient.RawResponseCallback = (
206
+ rawResponse: coreClient.FullOperationResponse,
207
+ flatResponse: unknown
208
+ ) => {
209
+ currentRawResponse = rawResponse;
210
+ providedCallback?.(rawResponse, flatResponse);
211
+ };
212
+ const updatedArgs = {
213
+ ...args,
214
+ options: {
215
+ ...args.options,
216
+ onResponse: callback
217
+ }
218
+ };
219
+ const flatResponse = await directSendOperation(updatedArgs, spec);
220
+ return {
221
+ flatResponse,
222
+ rawResponse: {
223
+ statusCode: currentRawResponse!.status,
224
+ body: currentRawResponse!.parsedBody,
225
+ headers: currentRawResponse!.headers.toJSON()
226
+ }
227
+ };
228
+ };
229
+
230
+ const lro = new LroImpl(
231
+ sendOperation,
232
+ {
233
+ resourceGroupName,
234
+ privateCloudName,
235
+ clusterName,
236
+ datastoreName,
237
+ datastore,
238
+ options
239
+ },
240
+ createOrUpdateOperationSpec
241
+ );
242
+ return new LroEngine(lro, {
243
+ resumeFrom: options?.resumeFrom,
244
+ intervalInMs: options?.updateIntervalInMs
245
+ });
246
+ }
247
+
248
+ /**
249
+ * Create or update a datastore in a private cloud cluster
250
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
251
+ * @param privateCloudName Name of the private cloud
252
+ * @param clusterName Name of the cluster in the private cloud
253
+ * @param datastoreName Name of the datastore in the private cloud cluster
254
+ * @param datastore A datastore in a private cloud cluster
255
+ * @param options The options parameters.
256
+ */
257
+ async beginCreateOrUpdateAndWait(
258
+ resourceGroupName: string,
259
+ privateCloudName: string,
260
+ clusterName: string,
261
+ datastoreName: string,
262
+ datastore: Datastore,
263
+ options?: DatastoresCreateOrUpdateOptionalParams
264
+ ): Promise<DatastoresCreateOrUpdateResponse> {
265
+ const poller = await this.beginCreateOrUpdate(
266
+ resourceGroupName,
267
+ privateCloudName,
268
+ clusterName,
269
+ datastoreName,
270
+ datastore,
271
+ options
272
+ );
273
+ return poller.pollUntilDone();
274
+ }
275
+
276
+ /**
277
+ * Delete a datastore in a private cloud cluster
278
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
279
+ * @param privateCloudName Name of the private cloud
280
+ * @param clusterName Name of the cluster in the private cloud
281
+ * @param datastoreName Name of the datastore in the private cloud cluster
282
+ * @param options The options parameters.
283
+ */
284
+ async beginDelete(
285
+ resourceGroupName: string,
286
+ privateCloudName: string,
287
+ clusterName: string,
288
+ datastoreName: string,
289
+ options?: DatastoresDeleteOptionalParams
290
+ ): Promise<PollerLike<PollOperationState<void>, void>> {
291
+ const directSendOperation = async (
292
+ args: coreClient.OperationArguments,
293
+ spec: coreClient.OperationSpec
294
+ ): Promise<void> => {
295
+ return this.client.sendOperationRequest(args, spec);
296
+ };
297
+ const sendOperation = async (
298
+ args: coreClient.OperationArguments,
299
+ spec: coreClient.OperationSpec
300
+ ) => {
301
+ let currentRawResponse:
302
+ | coreClient.FullOperationResponse
303
+ | undefined = undefined;
304
+ const providedCallback = args.options?.onResponse;
305
+ const callback: coreClient.RawResponseCallback = (
306
+ rawResponse: coreClient.FullOperationResponse,
307
+ flatResponse: unknown
308
+ ) => {
309
+ currentRawResponse = rawResponse;
310
+ providedCallback?.(rawResponse, flatResponse);
311
+ };
312
+ const updatedArgs = {
313
+ ...args,
314
+ options: {
315
+ ...args.options,
316
+ onResponse: callback
317
+ }
318
+ };
319
+ const flatResponse = await directSendOperation(updatedArgs, spec);
320
+ return {
321
+ flatResponse,
322
+ rawResponse: {
323
+ statusCode: currentRawResponse!.status,
324
+ body: currentRawResponse!.parsedBody,
325
+ headers: currentRawResponse!.headers.toJSON()
326
+ }
327
+ };
328
+ };
329
+
330
+ const lro = new LroImpl(
331
+ sendOperation,
332
+ {
333
+ resourceGroupName,
334
+ privateCloudName,
335
+ clusterName,
336
+ datastoreName,
337
+ options
338
+ },
339
+ deleteOperationSpec
340
+ );
341
+ return new LroEngine(lro, {
342
+ resumeFrom: options?.resumeFrom,
343
+ intervalInMs: options?.updateIntervalInMs
344
+ });
345
+ }
346
+
347
+ /**
348
+ * Delete a datastore in a private cloud cluster
349
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
350
+ * @param privateCloudName Name of the private cloud
351
+ * @param clusterName Name of the cluster in the private cloud
352
+ * @param datastoreName Name of the datastore in the private cloud cluster
353
+ * @param options The options parameters.
354
+ */
355
+ async beginDeleteAndWait(
356
+ resourceGroupName: string,
357
+ privateCloudName: string,
358
+ clusterName: string,
359
+ datastoreName: string,
360
+ options?: DatastoresDeleteOptionalParams
361
+ ): Promise<void> {
362
+ const poller = await this.beginDelete(
363
+ resourceGroupName,
364
+ privateCloudName,
365
+ clusterName,
366
+ datastoreName,
367
+ options
368
+ );
369
+ return poller.pollUntilDone();
370
+ }
371
+
372
+ /**
373
+ * ListNext
374
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
375
+ * @param privateCloudName Name of the private cloud
376
+ * @param clusterName Name of the cluster in the private cloud
377
+ * @param nextLink The nextLink from the previous successful call to the List method.
378
+ * @param options The options parameters.
379
+ */
380
+ private _listNext(
381
+ resourceGroupName: string,
382
+ privateCloudName: string,
383
+ clusterName: string,
384
+ nextLink: string,
385
+ options?: DatastoresListNextOptionalParams
386
+ ): Promise<DatastoresListNextResponse> {
387
+ return this.client.sendOperationRequest(
388
+ { resourceGroupName, privateCloudName, clusterName, nextLink, options },
389
+ listNextOperationSpec
390
+ );
391
+ }
392
+ }
393
+ // Operation Specifications
394
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
395
+
396
+ const listOperationSpec: coreClient.OperationSpec = {
397
+ path:
398
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/datastores",
399
+ httpMethod: "GET",
400
+ responses: {
401
+ 200: {
402
+ bodyMapper: Mappers.DatastoreList
403
+ },
404
+ default: {
405
+ bodyMapper: Mappers.CloudError
406
+ }
407
+ },
408
+ queryParameters: [Parameters.apiVersion],
409
+ urlParameters: [
410
+ Parameters.$host,
411
+ Parameters.subscriptionId,
412
+ Parameters.resourceGroupName,
413
+ Parameters.privateCloudName,
414
+ Parameters.clusterName
415
+ ],
416
+ headerParameters: [Parameters.accept],
417
+ serializer
418
+ };
419
+ const getOperationSpec: coreClient.OperationSpec = {
420
+ path:
421
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/datastores/{datastoreName}",
422
+ httpMethod: "GET",
423
+ responses: {
424
+ 200: {
425
+ bodyMapper: Mappers.Datastore
426
+ },
427
+ default: {
428
+ bodyMapper: Mappers.CloudError
429
+ }
430
+ },
431
+ queryParameters: [Parameters.apiVersion],
432
+ urlParameters: [
433
+ Parameters.$host,
434
+ Parameters.subscriptionId,
435
+ Parameters.resourceGroupName,
436
+ Parameters.privateCloudName,
437
+ Parameters.clusterName,
438
+ Parameters.datastoreName
439
+ ],
440
+ headerParameters: [Parameters.accept],
441
+ serializer
442
+ };
443
+ const createOrUpdateOperationSpec: coreClient.OperationSpec = {
444
+ path:
445
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/datastores/{datastoreName}",
446
+ httpMethod: "PUT",
447
+ responses: {
448
+ 200: {
449
+ bodyMapper: Mappers.Datastore
450
+ },
451
+ 201: {
452
+ bodyMapper: Mappers.Datastore
453
+ },
454
+ 202: {
455
+ bodyMapper: Mappers.Datastore
456
+ },
457
+ 204: {
458
+ bodyMapper: Mappers.Datastore
459
+ },
460
+ default: {
461
+ bodyMapper: Mappers.CloudError
462
+ }
463
+ },
464
+ requestBody: Parameters.datastore,
465
+ queryParameters: [Parameters.apiVersion],
466
+ urlParameters: [
467
+ Parameters.$host,
468
+ Parameters.subscriptionId,
469
+ Parameters.resourceGroupName,
470
+ Parameters.privateCloudName,
471
+ Parameters.clusterName,
472
+ Parameters.datastoreName
473
+ ],
474
+ headerParameters: [Parameters.accept, Parameters.contentType],
475
+ mediaType: "json",
476
+ serializer
477
+ };
478
+ const deleteOperationSpec: coreClient.OperationSpec = {
479
+ path:
480
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/datastores/{datastoreName}",
481
+ httpMethod: "DELETE",
482
+ responses: {
483
+ 200: {},
484
+ 201: {},
485
+ 202: {},
486
+ 204: {},
487
+ default: {
488
+ bodyMapper: Mappers.CloudError
489
+ }
490
+ },
491
+ queryParameters: [Parameters.apiVersion],
492
+ urlParameters: [
493
+ Parameters.$host,
494
+ Parameters.subscriptionId,
495
+ Parameters.resourceGroupName,
496
+ Parameters.privateCloudName,
497
+ Parameters.clusterName,
498
+ Parameters.datastoreName
499
+ ],
500
+ headerParameters: [Parameters.accept],
501
+ serializer
502
+ };
503
+ const listNextOperationSpec: coreClient.OperationSpec = {
504
+ path: "{nextLink}",
505
+ httpMethod: "GET",
506
+ responses: {
507
+ 200: {
508
+ bodyMapper: Mappers.DatastoreList
509
+ },
510
+ default: {
511
+ bodyMapper: Mappers.CloudError
512
+ }
513
+ },
514
+ queryParameters: [Parameters.apiVersion],
515
+ urlParameters: [
516
+ Parameters.$host,
517
+ Parameters.nextLink,
518
+ Parameters.subscriptionId,
519
+ Parameters.resourceGroupName,
520
+ Parameters.privateCloudName,
521
+ Parameters.clusterName
522
+ ],
523
+ headerParameters: [Parameters.accept],
524
+ serializer
525
+ };