@azure/arm-batch 4.0.0 → 7.0.0-beta.1

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 (251) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/{LICENSE.txt → LICENSE} +2 -2
  3. package/README.md +75 -77
  4. package/dist/index.js +6873 -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/batchManagementClient.d.ts +24 -0
  9. package/dist-esm/src/batchManagementClient.d.ts.map +1 -0
  10. package/dist-esm/src/batchManagementClient.js +31 -0
  11. package/dist-esm/src/batchManagementClient.js.map +1 -0
  12. package/dist-esm/src/batchManagementClientContext.d.ts +17 -0
  13. package/dist-esm/src/batchManagementClientContext.d.ts.map +1 -0
  14. package/dist-esm/src/batchManagementClientContext.js +50 -0
  15. package/dist-esm/src/batchManagementClientContext.js.map +1 -0
  16. package/dist-esm/src/index.d.ts +6 -0
  17. package/dist-esm/src/index.d.ts.map +1 -0
  18. package/dist-esm/src/index.js +13 -0
  19. package/dist-esm/src/index.js.map +1 -0
  20. package/dist-esm/src/lroImpl.d.ts +16 -0
  21. package/dist-esm/src/lroImpl.d.ts.map +1 -0
  22. package/dist-esm/src/lroImpl.js +29 -0
  23. package/dist-esm/src/lroImpl.js.map +1 -0
  24. package/dist-esm/src/models/index.d.ts +1780 -0
  25. package/dist-esm/src/models/index.d.ts.map +1 -0
  26. package/dist-esm/src/models/index.js +9 -0
  27. package/dist-esm/src/models/index.js.map +1 -0
  28. package/dist-esm/src/models/mappers.d.ts +112 -0
  29. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  30. package/{esm → dist-esm/src}/models/mappers.js +2357 -1248
  31. package/dist-esm/src/models/mappers.js.map +1 -0
  32. package/dist-esm/src/models/parameters.d.ts +34 -0
  33. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  34. package/dist-esm/src/models/parameters.js +303 -0
  35. package/dist-esm/src/models/parameters.js.map +1 -0
  36. package/dist-esm/src/operations/applicationOperations.d.ts +71 -0
  37. package/dist-esm/src/operations/applicationOperations.d.ts.map +1 -0
  38. package/dist-esm/src/operations/applicationOperations.js +269 -0
  39. package/dist-esm/src/operations/applicationOperations.js.map +1 -0
  40. package/dist-esm/src/operations/applicationPackageOperations.d.ts +83 -0
  41. package/dist-esm/src/operations/applicationPackageOperations.d.ts.map +1 -0
  42. package/dist-esm/src/operations/applicationPackageOperations.js +294 -0
  43. package/dist-esm/src/operations/applicationPackageOperations.js.map +1 -0
  44. package/dist-esm/src/operations/batchAccountOperations.d.ts +171 -0
  45. package/dist-esm/src/operations/batchAccountOperations.d.ts.map +1 -0
  46. package/dist-esm/src/operations/batchAccountOperations.js +681 -0
  47. package/dist-esm/src/operations/batchAccountOperations.js.map +1 -0
  48. package/dist-esm/src/operations/certificateOperations.d.ts +106 -0
  49. package/dist-esm/src/operations/certificateOperations.d.ts.map +1 -0
  50. package/dist-esm/src/operations/certificateOperations.js +388 -0
  51. package/dist-esm/src/operations/certificateOperations.js.map +1 -0
  52. package/{esm → dist-esm/src}/operations/index.d.ts +2 -0
  53. package/dist-esm/src/operations/index.d.ts.map +1 -0
  54. package/dist-esm/src/operations/index.js +17 -0
  55. package/dist-esm/src/operations/index.js.map +1 -0
  56. package/dist-esm/src/operations/location.d.ts +71 -0
  57. package/dist-esm/src/operations/location.d.ts.map +1 -0
  58. package/dist-esm/src/operations/location.js +316 -0
  59. package/dist-esm/src/operations/location.js.map +1 -0
  60. package/dist-esm/src/operations/operations.d.ts +32 -0
  61. package/dist-esm/src/operations/operations.d.ts.map +1 -0
  62. package/dist-esm/src/operations/operations.js +120 -0
  63. package/dist-esm/src/operations/operations.js.map +1 -0
  64. package/dist-esm/src/operations/poolOperations.d.ts +103 -0
  65. package/dist-esm/src/operations/poolOperations.d.ts.map +1 -0
  66. package/dist-esm/src/operations/poolOperations.js +410 -0
  67. package/dist-esm/src/operations/poolOperations.js.map +1 -0
  68. package/dist-esm/src/operations/privateEndpointConnectionOperations.d.ts +70 -0
  69. package/dist-esm/src/operations/privateEndpointConnectionOperations.d.ts.map +1 -0
  70. package/dist-esm/src/operations/privateEndpointConnectionOperations.js +278 -0
  71. package/dist-esm/src/operations/privateEndpointConnectionOperations.js.map +1 -0
  72. package/dist-esm/src/operations/privateLinkResourceOperations.d.ts +47 -0
  73. package/dist-esm/src/operations/privateLinkResourceOperations.d.ts.map +1 -0
  74. package/dist-esm/src/operations/privateLinkResourceOperations.js +170 -0
  75. package/dist-esm/src/operations/privateLinkResourceOperations.js.map +1 -0
  76. package/dist-esm/src/operationsInterfaces/applicationOperations.d.ts +46 -0
  77. package/dist-esm/src/operationsInterfaces/applicationOperations.d.ts.map +1 -0
  78. package/dist-esm/src/operationsInterfaces/applicationOperations.js +9 -0
  79. package/dist-esm/src/operationsInterfaces/applicationOperations.js.map +1 -0
  80. package/dist-esm/src/operationsInterfaces/applicationPackageOperations.d.ts +56 -0
  81. package/dist-esm/src/operationsInterfaces/applicationPackageOperations.d.ts.map +1 -0
  82. package/dist-esm/src/operationsInterfaces/applicationPackageOperations.js +9 -0
  83. package/dist-esm/src/operationsInterfaces/applicationPackageOperations.js.map +1 -0
  84. package/dist-esm/src/operationsInterfaces/batchAccountOperations.d.ts +112 -0
  85. package/dist-esm/src/operationsInterfaces/batchAccountOperations.d.ts.map +1 -0
  86. package/dist-esm/src/operationsInterfaces/batchAccountOperations.js +9 -0
  87. package/dist-esm/src/operationsInterfaces/batchAccountOperations.js.map +1 -0
  88. package/dist-esm/src/operationsInterfaces/certificateOperations.d.ts +81 -0
  89. package/dist-esm/src/operationsInterfaces/certificateOperations.d.ts.map +1 -0
  90. package/dist-esm/src/operationsInterfaces/certificateOperations.js +9 -0
  91. package/dist-esm/src/operationsInterfaces/certificateOperations.js.map +1 -0
  92. package/dist-esm/src/operationsInterfaces/index.d.ts +10 -0
  93. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  94. package/dist-esm/src/operationsInterfaces/index.js +17 -0
  95. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  96. package/dist-esm/src/operationsInterfaces/location.d.ts +31 -0
  97. package/dist-esm/src/operationsInterfaces/location.d.ts.map +1 -0
  98. package/dist-esm/src/operationsInterfaces/location.js +9 -0
  99. package/dist-esm/src/operationsInterfaces/location.js.map +1 -0
  100. package/dist-esm/src/operationsInterfaces/operations.d.ts +11 -0
  101. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -0
  102. package/dist-esm/src/operationsInterfaces/operations.js +9 -0
  103. package/dist-esm/src/operationsInterfaces/operations.js.map +1 -0
  104. package/dist-esm/src/operationsInterfaces/poolOperations.d.ts +78 -0
  105. package/dist-esm/src/operationsInterfaces/poolOperations.d.ts.map +1 -0
  106. package/dist-esm/src/operationsInterfaces/poolOperations.js +9 -0
  107. package/dist-esm/src/operationsInterfaces/poolOperations.js.map +1 -0
  108. package/dist-esm/src/operationsInterfaces/privateEndpointConnectionOperations.d.ts +45 -0
  109. package/dist-esm/src/operationsInterfaces/privateEndpointConnectionOperations.d.ts.map +1 -0
  110. package/dist-esm/src/operationsInterfaces/privateEndpointConnectionOperations.js +9 -0
  111. package/dist-esm/src/operationsInterfaces/privateEndpointConnectionOperations.js.map +1 -0
  112. package/dist-esm/src/operationsInterfaces/privateLinkResourceOperations.d.ts +22 -0
  113. package/dist-esm/src/operationsInterfaces/privateLinkResourceOperations.d.ts.map +1 -0
  114. package/dist-esm/src/operationsInterfaces/privateLinkResourceOperations.js +9 -0
  115. package/dist-esm/src/operationsInterfaces/privateLinkResourceOperations.js.map +1 -0
  116. package/dist-esm/test/sampleTest.d.ts +4 -0
  117. package/dist-esm/test/sampleTest.d.ts.map +1 -0
  118. package/dist-esm/test/sampleTest.js +479 -0
  119. package/dist-esm/test/sampleTest.js.map +1 -0
  120. package/package.json +71 -34
  121. package/review/arm-batch.api.md +1459 -0
  122. package/rollup.config.js +184 -27
  123. package/src/batchManagementClient.ts +75 -0
  124. package/src/batchManagementClientContext.ts +71 -0
  125. package/src/index.ts +13 -0
  126. package/src/lroImpl.ts +34 -0
  127. package/src/models/index.ts +2045 -0
  128. package/{lib → src}/models/mappers.ts +2413 -1223
  129. package/src/models/parameters.ts +351 -0
  130. package/src/operations/applicationOperations.ts +357 -0
  131. package/src/operations/applicationPackageOperations.ts +410 -0
  132. package/src/operations/batchAccountOperations.ts +901 -0
  133. package/src/operations/certificateOperations.ts +527 -0
  134. package/{lib → src}/operations/index.ts +5 -5
  135. package/src/operations/location.ts +413 -0
  136. package/src/operations/operations.ts +137 -0
  137. package/src/operations/poolOperations.ts +560 -0
  138. package/src/operations/privateEndpointConnectionOperations.ts +388 -0
  139. package/src/operations/privateLinkResourceOperations.ts +235 -0
  140. package/src/operationsInterfaces/applicationOperations.ts +90 -0
  141. package/src/operationsInterfaces/applicationPackageOperations.ts +106 -0
  142. package/src/operationsInterfaces/batchAccountOperations.ts +196 -0
  143. package/src/operationsInterfaces/certificateOperations.ts +139 -0
  144. package/{esm/operations/index.js → src/operationsInterfaces/index.ts} +6 -6
  145. package/src/operationsInterfaces/location.ts +62 -0
  146. package/src/operationsInterfaces/operations.ts +22 -0
  147. package/src/operationsInterfaces/poolOperations.ts +142 -0
  148. package/src/operationsInterfaces/privateEndpointConnectionOperations.ts +87 -0
  149. package/src/operationsInterfaces/privateLinkResourceOperations.ts +45 -0
  150. package/tsconfig.json +4 -4
  151. package/types/arm-batch.d.ts +2528 -0
  152. package/types/tsdoc-metadata.json +11 -0
  153. package/dist/arm-batch.js +0 -4689
  154. package/dist/arm-batch.js.map +0 -1
  155. package/dist/arm-batch.min.js +0 -1
  156. package/dist/arm-batch.min.js.map +0 -1
  157. package/esm/batchManagementClient.d.ts +0 -25
  158. package/esm/batchManagementClient.d.ts.map +0 -1
  159. package/esm/batchManagementClient.js +0 -40
  160. package/esm/batchManagementClient.js.map +0 -1
  161. package/esm/batchManagementClientContext.d.ts +0 -17
  162. package/esm/batchManagementClientContext.d.ts.map +0 -1
  163. package/esm/batchManagementClientContext.js +0 -57
  164. package/esm/batchManagementClientContext.js.map +0 -1
  165. package/esm/models/applicationOperationsMappers.d.ts +0 -2
  166. package/esm/models/applicationOperationsMappers.d.ts.map +0 -1
  167. package/esm/models/applicationOperationsMappers.js +0 -11
  168. package/esm/models/applicationOperationsMappers.js.map +0 -1
  169. package/esm/models/applicationPackageOperationsMappers.d.ts +0 -2
  170. package/esm/models/applicationPackageOperationsMappers.d.ts.map +0 -1
  171. package/esm/models/applicationPackageOperationsMappers.js +0 -11
  172. package/esm/models/applicationPackageOperationsMappers.js.map +0 -1
  173. package/esm/models/batchAccountOperationsMappers.d.ts +0 -2
  174. package/esm/models/batchAccountOperationsMappers.d.ts.map +0 -1
  175. package/esm/models/batchAccountOperationsMappers.js +0 -11
  176. package/esm/models/batchAccountOperationsMappers.js.map +0 -1
  177. package/esm/models/certificateOperationsMappers.d.ts +0 -2
  178. package/esm/models/certificateOperationsMappers.d.ts.map +0 -1
  179. package/esm/models/certificateOperationsMappers.js +0 -11
  180. package/esm/models/certificateOperationsMappers.js.map +0 -1
  181. package/esm/models/index.d.ts +0 -3108
  182. package/esm/models/index.d.ts.map +0 -1
  183. package/esm/models/index.js +0 -10
  184. package/esm/models/index.js.map +0 -1
  185. package/esm/models/locationMappers.d.ts +0 -2
  186. package/esm/models/locationMappers.d.ts.map +0 -1
  187. package/esm/models/locationMappers.js +0 -11
  188. package/esm/models/locationMappers.js.map +0 -1
  189. package/esm/models/mappers.d.ts +0 -76
  190. package/esm/models/mappers.d.ts.map +0 -1
  191. package/esm/models/mappers.js.map +0 -1
  192. package/esm/models/operationsMappers.d.ts +0 -2
  193. package/esm/models/operationsMappers.d.ts.map +0 -1
  194. package/esm/models/operationsMappers.js +0 -11
  195. package/esm/models/operationsMappers.js.map +0 -1
  196. package/esm/models/parameters.d.ts +0 -18
  197. package/esm/models/parameters.d.ts.map +0 -1
  198. package/esm/models/parameters.js +0 -196
  199. package/esm/models/parameters.js.map +0 -1
  200. package/esm/models/poolOperationsMappers.d.ts +0 -2
  201. package/esm/models/poolOperationsMappers.d.ts.map +0 -1
  202. package/esm/models/poolOperationsMappers.js +0 -11
  203. package/esm/models/poolOperationsMappers.js.map +0 -1
  204. package/esm/operations/applicationOperations.d.ts +0 -151
  205. package/esm/operations/applicationOperations.d.ts.map +0 -1
  206. package/esm/operations/applicationOperations.js +0 -226
  207. package/esm/operations/applicationOperations.js.map +0 -1
  208. package/esm/operations/applicationPackageOperations.d.ts +0 -124
  209. package/esm/operations/applicationPackageOperations.d.ts.map +0 -1
  210. package/esm/operations/applicationPackageOperations.js +0 -171
  211. package/esm/operations/applicationPackageOperations.js.map +0 -1
  212. package/esm/operations/batchAccountOperations.d.ts +0 -246
  213. package/esm/operations/batchAccountOperations.d.ts.map +0 -1
  214. package/esm/operations/batchAccountOperations.js +0 -426
  215. package/esm/operations/batchAccountOperations.js.map +0 -1
  216. package/esm/operations/certificateOperations.d.ts +0 -198
  217. package/esm/operations/certificateOperations.d.ts.map +0 -1
  218. package/esm/operations/certificateOperations.js +0 -326
  219. package/esm/operations/certificateOperations.js.map +0 -1
  220. package/esm/operations/index.d.ts.map +0 -1
  221. package/esm/operations/index.js.map +0 -1
  222. package/esm/operations/location.d.ts +0 -52
  223. package/esm/operations/location.d.ts.map +0 -1
  224. package/esm/operations/location.js +0 -93
  225. package/esm/operations/location.js.map +0 -1
  226. package/esm/operations/operations.d.ts +0 -46
  227. package/esm/operations/operations.d.ts.map +0 -1
  228. package/esm/operations/operations.js +0 -77
  229. package/esm/operations/operations.js.map +0 -1
  230. package/esm/operations/poolOperations.d.ts +0 -199
  231. package/esm/operations/poolOperations.d.ts.map +0 -1
  232. package/esm/operations/poolOperations.js +0 -352
  233. package/esm/operations/poolOperations.js.map +0 -1
  234. package/lib/batchManagementClient.ts +0 -55
  235. package/lib/batchManagementClientContext.ts +0 -63
  236. package/lib/models/applicationOperationsMappers.ts +0 -19
  237. package/lib/models/applicationPackageOperationsMappers.ts +0 -16
  238. package/lib/models/batchAccountOperationsMappers.ts +0 -61
  239. package/lib/models/certificateOperationsMappers.ts +0 -60
  240. package/lib/models/index.ts +0 -3252
  241. package/lib/models/locationMappers.ts +0 -17
  242. package/lib/models/operationsMappers.ts +0 -17
  243. package/lib/models/parameters.ts +0 -198
  244. package/lib/models/poolOperationsMappers.ts +0 -61
  245. package/lib/operations/applicationOperations.ts +0 -399
  246. package/lib/operations/applicationPackageOperations.ts +0 -307
  247. package/lib/operations/batchAccountOperations.ts +0 -683
  248. package/lib/operations/certificateOperations.ts +0 -510
  249. package/lib/operations/location.ts +0 -147
  250. package/lib/operations/operations.ts +0 -123
  251. package/lib/operations/poolOperations.ts +0 -550
@@ -0,0 +1,560 @@
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 { PoolOperations } 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 { BatchManagementClientContext } from "../batchManagementClientContext";
15
+ import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro";
16
+ import { LroImpl } from "../lroImpl";
17
+ import {
18
+ Pool,
19
+ PoolListByBatchAccountNextOptionalParams,
20
+ PoolListByBatchAccountOptionalParams,
21
+ PoolListByBatchAccountResponse,
22
+ PoolCreateOptionalParams,
23
+ PoolCreateResponse,
24
+ PoolUpdateOptionalParams,
25
+ PoolUpdateResponse,
26
+ PoolDeleteOptionalParams,
27
+ PoolGetOptionalParams,
28
+ PoolGetResponse,
29
+ PoolDisableAutoScaleOptionalParams,
30
+ PoolDisableAutoScaleResponse,
31
+ PoolStopResizeOptionalParams,
32
+ PoolStopResizeResponse,
33
+ PoolListByBatchAccountNextResponse
34
+ } from "../models";
35
+
36
+ /// <reference lib="esnext.asynciterable" />
37
+ /** Class containing PoolOperations operations. */
38
+ export class PoolOperationsImpl implements PoolOperations {
39
+ private readonly client: BatchManagementClientContext;
40
+
41
+ /**
42
+ * Initialize a new instance of the class PoolOperations class.
43
+ * @param client Reference to the service client
44
+ */
45
+ constructor(client: BatchManagementClientContext) {
46
+ this.client = client;
47
+ }
48
+
49
+ /**
50
+ * Lists all of the pools in the specified account.
51
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
52
+ * @param accountName The name of the Batch account.
53
+ * @param options The options parameters.
54
+ */
55
+ public listByBatchAccount(
56
+ resourceGroupName: string,
57
+ accountName: string,
58
+ options?: PoolListByBatchAccountOptionalParams
59
+ ): PagedAsyncIterableIterator<Pool> {
60
+ const iter = this.listByBatchAccountPagingAll(
61
+ resourceGroupName,
62
+ accountName,
63
+ options
64
+ );
65
+ return {
66
+ next() {
67
+ return iter.next();
68
+ },
69
+ [Symbol.asyncIterator]() {
70
+ return this;
71
+ },
72
+ byPage: () => {
73
+ return this.listByBatchAccountPagingPage(
74
+ resourceGroupName,
75
+ accountName,
76
+ options
77
+ );
78
+ }
79
+ };
80
+ }
81
+
82
+ private async *listByBatchAccountPagingPage(
83
+ resourceGroupName: string,
84
+ accountName: string,
85
+ options?: PoolListByBatchAccountOptionalParams
86
+ ): AsyncIterableIterator<Pool[]> {
87
+ let result = await this._listByBatchAccount(
88
+ resourceGroupName,
89
+ accountName,
90
+ options
91
+ );
92
+ yield result.value || [];
93
+ let continuationToken = result.nextLink;
94
+ while (continuationToken) {
95
+ result = await this._listByBatchAccountNext(
96
+ resourceGroupName,
97
+ accountName,
98
+ continuationToken,
99
+ options
100
+ );
101
+ continuationToken = result.nextLink;
102
+ yield result.value || [];
103
+ }
104
+ }
105
+
106
+ private async *listByBatchAccountPagingAll(
107
+ resourceGroupName: string,
108
+ accountName: string,
109
+ options?: PoolListByBatchAccountOptionalParams
110
+ ): AsyncIterableIterator<Pool> {
111
+ for await (const page of this.listByBatchAccountPagingPage(
112
+ resourceGroupName,
113
+ accountName,
114
+ options
115
+ )) {
116
+ yield* page;
117
+ }
118
+ }
119
+
120
+ /**
121
+ * Lists all of the pools in the specified account.
122
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
123
+ * @param accountName The name of the Batch account.
124
+ * @param options The options parameters.
125
+ */
126
+ private _listByBatchAccount(
127
+ resourceGroupName: string,
128
+ accountName: string,
129
+ options?: PoolListByBatchAccountOptionalParams
130
+ ): Promise<PoolListByBatchAccountResponse> {
131
+ return this.client.sendOperationRequest(
132
+ { resourceGroupName, accountName, options },
133
+ listByBatchAccountOperationSpec
134
+ );
135
+ }
136
+
137
+ /**
138
+ * Creates a new pool inside the specified account.
139
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
140
+ * @param accountName The name of the Batch account.
141
+ * @param poolName The pool name. This must be unique within the account.
142
+ * @param parameters Additional parameters for pool creation.
143
+ * @param options The options parameters.
144
+ */
145
+ create(
146
+ resourceGroupName: string,
147
+ accountName: string,
148
+ poolName: string,
149
+ parameters: Pool,
150
+ options?: PoolCreateOptionalParams
151
+ ): Promise<PoolCreateResponse> {
152
+ return this.client.sendOperationRequest(
153
+ { resourceGroupName, accountName, poolName, parameters, options },
154
+ createOperationSpec
155
+ );
156
+ }
157
+
158
+ /**
159
+ * Updates the properties of an existing pool.
160
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
161
+ * @param accountName The name of the Batch account.
162
+ * @param poolName The pool name. This must be unique within the account.
163
+ * @param parameters Pool properties that should be updated. Properties that are supplied will be
164
+ * updated, any property not supplied will be unchanged.
165
+ * @param options The options parameters.
166
+ */
167
+ update(
168
+ resourceGroupName: string,
169
+ accountName: string,
170
+ poolName: string,
171
+ parameters: Pool,
172
+ options?: PoolUpdateOptionalParams
173
+ ): Promise<PoolUpdateResponse> {
174
+ return this.client.sendOperationRequest(
175
+ { resourceGroupName, accountName, poolName, parameters, options },
176
+ updateOperationSpec
177
+ );
178
+ }
179
+
180
+ /**
181
+ * Deletes the specified pool.
182
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
183
+ * @param accountName The name of the Batch account.
184
+ * @param poolName The pool name. This must be unique within the account.
185
+ * @param options The options parameters.
186
+ */
187
+ async beginDelete(
188
+ resourceGroupName: string,
189
+ accountName: string,
190
+ poolName: string,
191
+ options?: PoolDeleteOptionalParams
192
+ ): Promise<PollerLike<PollOperationState<void>, void>> {
193
+ const directSendOperation = async (
194
+ args: coreClient.OperationArguments,
195
+ spec: coreClient.OperationSpec
196
+ ): Promise<void> => {
197
+ return this.client.sendOperationRequest(args, spec);
198
+ };
199
+ const sendOperation = async (
200
+ args: coreClient.OperationArguments,
201
+ spec: coreClient.OperationSpec
202
+ ) => {
203
+ let currentRawResponse:
204
+ | coreClient.FullOperationResponse
205
+ | undefined = undefined;
206
+ const providedCallback = args.options?.onResponse;
207
+ const callback: coreClient.RawResponseCallback = (
208
+ rawResponse: coreClient.FullOperationResponse,
209
+ flatResponse: unknown
210
+ ) => {
211
+ currentRawResponse = rawResponse;
212
+ providedCallback?.(rawResponse, flatResponse);
213
+ };
214
+ const updatedArgs = {
215
+ ...args,
216
+ options: {
217
+ ...args.options,
218
+ onResponse: callback
219
+ }
220
+ };
221
+ const flatResponse = await directSendOperation(updatedArgs, spec);
222
+ return {
223
+ flatResponse,
224
+ rawResponse: {
225
+ statusCode: currentRawResponse!.status,
226
+ body: currentRawResponse!.parsedBody,
227
+ headers: currentRawResponse!.headers.toJSON()
228
+ }
229
+ };
230
+ };
231
+
232
+ const lro = new LroImpl(
233
+ sendOperation,
234
+ { resourceGroupName, accountName, poolName, options },
235
+ deleteOperationSpec
236
+ );
237
+ return new LroEngine(lro, {
238
+ resumeFrom: options?.resumeFrom,
239
+ intervalInMs: options?.updateIntervalInMs,
240
+ lroResourceLocationConfig: "location"
241
+ });
242
+ }
243
+
244
+ /**
245
+ * Deletes the specified pool.
246
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
247
+ * @param accountName The name of the Batch account.
248
+ * @param poolName The pool name. This must be unique within the account.
249
+ * @param options The options parameters.
250
+ */
251
+ async beginDeleteAndWait(
252
+ resourceGroupName: string,
253
+ accountName: string,
254
+ poolName: string,
255
+ options?: PoolDeleteOptionalParams
256
+ ): Promise<void> {
257
+ const poller = await this.beginDelete(
258
+ resourceGroupName,
259
+ accountName,
260
+ poolName,
261
+ options
262
+ );
263
+ return poller.pollUntilDone();
264
+ }
265
+
266
+ /**
267
+ * Gets information about the specified pool.
268
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
269
+ * @param accountName The name of the Batch account.
270
+ * @param poolName The pool name. This must be unique within the account.
271
+ * @param options The options parameters.
272
+ */
273
+ get(
274
+ resourceGroupName: string,
275
+ accountName: string,
276
+ poolName: string,
277
+ options?: PoolGetOptionalParams
278
+ ): Promise<PoolGetResponse> {
279
+ return this.client.sendOperationRequest(
280
+ { resourceGroupName, accountName, poolName, options },
281
+ getOperationSpec
282
+ );
283
+ }
284
+
285
+ /**
286
+ * Disables automatic scaling for a pool.
287
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
288
+ * @param accountName The name of the Batch account.
289
+ * @param poolName The pool name. This must be unique within the account.
290
+ * @param options The options parameters.
291
+ */
292
+ disableAutoScale(
293
+ resourceGroupName: string,
294
+ accountName: string,
295
+ poolName: string,
296
+ options?: PoolDisableAutoScaleOptionalParams
297
+ ): Promise<PoolDisableAutoScaleResponse> {
298
+ return this.client.sendOperationRequest(
299
+ { resourceGroupName, accountName, poolName, options },
300
+ disableAutoScaleOperationSpec
301
+ );
302
+ }
303
+
304
+ /**
305
+ * This does not restore the pool to its previous state before the resize operation: it only stops any
306
+ * further changes being made, and the pool maintains its current state. After stopping, the pool
307
+ * stabilizes at the number of nodes it was at when the stop operation was done. During the stop
308
+ * operation, the pool allocation state changes first to stopping and then to steady. A resize
309
+ * operation need not be an explicit resize pool request; this API can also be used to halt the initial
310
+ * sizing of the pool when it is created.
311
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
312
+ * @param accountName The name of the Batch account.
313
+ * @param poolName The pool name. This must be unique within the account.
314
+ * @param options The options parameters.
315
+ */
316
+ stopResize(
317
+ resourceGroupName: string,
318
+ accountName: string,
319
+ poolName: string,
320
+ options?: PoolStopResizeOptionalParams
321
+ ): Promise<PoolStopResizeResponse> {
322
+ return this.client.sendOperationRequest(
323
+ { resourceGroupName, accountName, poolName, options },
324
+ stopResizeOperationSpec
325
+ );
326
+ }
327
+
328
+ /**
329
+ * ListByBatchAccountNext
330
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
331
+ * @param accountName The name of the Batch account.
332
+ * @param nextLink The nextLink from the previous successful call to the ListByBatchAccount method.
333
+ * @param options The options parameters.
334
+ */
335
+ private _listByBatchAccountNext(
336
+ resourceGroupName: string,
337
+ accountName: string,
338
+ nextLink: string,
339
+ options?: PoolListByBatchAccountNextOptionalParams
340
+ ): Promise<PoolListByBatchAccountNextResponse> {
341
+ return this.client.sendOperationRequest(
342
+ { resourceGroupName, accountName, nextLink, options },
343
+ listByBatchAccountNextOperationSpec
344
+ );
345
+ }
346
+ }
347
+ // Operation Specifications
348
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
349
+
350
+ const listByBatchAccountOperationSpec: coreClient.OperationSpec = {
351
+ path:
352
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools",
353
+ httpMethod: "GET",
354
+ responses: {
355
+ 200: {
356
+ bodyMapper: Mappers.ListPoolsResult
357
+ },
358
+ default: {
359
+ bodyMapper: Mappers.CloudError
360
+ }
361
+ },
362
+ queryParameters: [
363
+ Parameters.apiVersion,
364
+ Parameters.maxresults,
365
+ Parameters.filter,
366
+ Parameters.select
367
+ ],
368
+ urlParameters: [
369
+ Parameters.$host,
370
+ Parameters.resourceGroupName,
371
+ Parameters.subscriptionId,
372
+ Parameters.accountName1
373
+ ],
374
+ headerParameters: [Parameters.accept],
375
+ serializer
376
+ };
377
+ const createOperationSpec: coreClient.OperationSpec = {
378
+ path:
379
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}",
380
+ httpMethod: "PUT",
381
+ responses: {
382
+ 200: {
383
+ bodyMapper: Mappers.Pool,
384
+ headersMapper: Mappers.PoolCreateHeaders
385
+ },
386
+ default: {
387
+ bodyMapper: Mappers.CloudError
388
+ }
389
+ },
390
+ requestBody: Parameters.parameters10,
391
+ queryParameters: [Parameters.apiVersion],
392
+ urlParameters: [
393
+ Parameters.$host,
394
+ Parameters.resourceGroupName,
395
+ Parameters.subscriptionId,
396
+ Parameters.accountName1,
397
+ Parameters.poolName
398
+ ],
399
+ headerParameters: [
400
+ Parameters.contentType,
401
+ Parameters.accept,
402
+ Parameters.ifMatch,
403
+ Parameters.ifNoneMatch
404
+ ],
405
+ mediaType: "json",
406
+ serializer
407
+ };
408
+ const updateOperationSpec: coreClient.OperationSpec = {
409
+ path:
410
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}",
411
+ httpMethod: "PATCH",
412
+ responses: {
413
+ 200: {
414
+ bodyMapper: Mappers.Pool,
415
+ headersMapper: Mappers.PoolUpdateHeaders
416
+ },
417
+ default: {
418
+ bodyMapper: Mappers.CloudError
419
+ }
420
+ },
421
+ requestBody: Parameters.parameters10,
422
+ queryParameters: [Parameters.apiVersion],
423
+ urlParameters: [
424
+ Parameters.$host,
425
+ Parameters.resourceGroupName,
426
+ Parameters.subscriptionId,
427
+ Parameters.accountName1,
428
+ Parameters.poolName
429
+ ],
430
+ headerParameters: [
431
+ Parameters.contentType,
432
+ Parameters.accept,
433
+ Parameters.ifMatch
434
+ ],
435
+ mediaType: "json",
436
+ serializer
437
+ };
438
+ const deleteOperationSpec: coreClient.OperationSpec = {
439
+ path:
440
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}",
441
+ httpMethod: "DELETE",
442
+ responses: {
443
+ 200: {},
444
+ 201: {},
445
+ 202: {},
446
+ 204: {},
447
+ default: {
448
+ bodyMapper: Mappers.CloudError
449
+ }
450
+ },
451
+ queryParameters: [Parameters.apiVersion],
452
+ urlParameters: [
453
+ Parameters.$host,
454
+ Parameters.resourceGroupName,
455
+ Parameters.subscriptionId,
456
+ Parameters.accountName1,
457
+ Parameters.poolName
458
+ ],
459
+ headerParameters: [Parameters.accept],
460
+ serializer
461
+ };
462
+ const getOperationSpec: coreClient.OperationSpec = {
463
+ path:
464
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}",
465
+ httpMethod: "GET",
466
+ responses: {
467
+ 200: {
468
+ bodyMapper: Mappers.Pool,
469
+ headersMapper: Mappers.PoolGetHeaders
470
+ },
471
+ default: {
472
+ bodyMapper: Mappers.CloudError
473
+ }
474
+ },
475
+ queryParameters: [Parameters.apiVersion],
476
+ urlParameters: [
477
+ Parameters.$host,
478
+ Parameters.resourceGroupName,
479
+ Parameters.subscriptionId,
480
+ Parameters.accountName1,
481
+ Parameters.poolName
482
+ ],
483
+ headerParameters: [Parameters.accept],
484
+ serializer
485
+ };
486
+ const disableAutoScaleOperationSpec: coreClient.OperationSpec = {
487
+ path:
488
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}/disableAutoScale",
489
+ httpMethod: "POST",
490
+ responses: {
491
+ 200: {
492
+ bodyMapper: Mappers.Pool,
493
+ headersMapper: Mappers.PoolDisableAutoScaleHeaders
494
+ },
495
+ default: {
496
+ bodyMapper: Mappers.CloudError
497
+ }
498
+ },
499
+ queryParameters: [Parameters.apiVersion],
500
+ urlParameters: [
501
+ Parameters.$host,
502
+ Parameters.resourceGroupName,
503
+ Parameters.subscriptionId,
504
+ Parameters.accountName1,
505
+ Parameters.poolName
506
+ ],
507
+ headerParameters: [Parameters.accept],
508
+ serializer
509
+ };
510
+ const stopResizeOperationSpec: coreClient.OperationSpec = {
511
+ path:
512
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}/stopResize",
513
+ httpMethod: "POST",
514
+ responses: {
515
+ 200: {
516
+ bodyMapper: Mappers.Pool,
517
+ headersMapper: Mappers.PoolStopResizeHeaders
518
+ },
519
+ default: {
520
+ bodyMapper: Mappers.CloudError
521
+ }
522
+ },
523
+ queryParameters: [Parameters.apiVersion],
524
+ urlParameters: [
525
+ Parameters.$host,
526
+ Parameters.resourceGroupName,
527
+ Parameters.subscriptionId,
528
+ Parameters.accountName1,
529
+ Parameters.poolName
530
+ ],
531
+ headerParameters: [Parameters.accept],
532
+ serializer
533
+ };
534
+ const listByBatchAccountNextOperationSpec: coreClient.OperationSpec = {
535
+ path: "{nextLink}",
536
+ httpMethod: "GET",
537
+ responses: {
538
+ 200: {
539
+ bodyMapper: Mappers.ListPoolsResult
540
+ },
541
+ default: {
542
+ bodyMapper: Mappers.CloudError
543
+ }
544
+ },
545
+ queryParameters: [
546
+ Parameters.apiVersion,
547
+ Parameters.maxresults,
548
+ Parameters.filter,
549
+ Parameters.select
550
+ ],
551
+ urlParameters: [
552
+ Parameters.$host,
553
+ Parameters.resourceGroupName,
554
+ Parameters.subscriptionId,
555
+ Parameters.accountName1,
556
+ Parameters.nextLink
557
+ ],
558
+ headerParameters: [Parameters.accept],
559
+ serializer
560
+ };