@azure/arm-defendereasm 1.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 (154) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/LICENSE +21 -0
  3. package/README.md +109 -0
  4. package/dist/index.js +2047 -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/samples-dev/labelsCreateAndUpdateSample.d.ts +2 -0
  9. package/dist-esm/samples-dev/labelsCreateAndUpdateSample.d.ts.map +1 -0
  10. package/dist-esm/samples-dev/labelsCreateAndUpdateSample.js +40 -0
  11. package/dist-esm/samples-dev/labelsCreateAndUpdateSample.js.map +1 -0
  12. package/dist-esm/samples-dev/labelsDeleteSample.d.ts +2 -0
  13. package/dist-esm/samples-dev/labelsDeleteSample.d.ts.map +1 -0
  14. package/dist-esm/samples-dev/labelsDeleteSample.js +40 -0
  15. package/dist-esm/samples-dev/labelsDeleteSample.js.map +1 -0
  16. package/dist-esm/samples-dev/labelsGetByWorkspaceSample.d.ts +2 -0
  17. package/dist-esm/samples-dev/labelsGetByWorkspaceSample.d.ts.map +1 -0
  18. package/dist-esm/samples-dev/labelsGetByWorkspaceSample.js +40 -0
  19. package/dist-esm/samples-dev/labelsGetByWorkspaceSample.js.map +1 -0
  20. package/dist-esm/samples-dev/labelsListByWorkspaceSample.d.ts +2 -0
  21. package/dist-esm/samples-dev/labelsListByWorkspaceSample.d.ts.map +1 -0
  22. package/dist-esm/samples-dev/labelsListByWorkspaceSample.js +60 -0
  23. package/dist-esm/samples-dev/labelsListByWorkspaceSample.js.map +1 -0
  24. package/dist-esm/samples-dev/labelsUpdateSample.d.ts +2 -0
  25. package/dist-esm/samples-dev/labelsUpdateSample.d.ts.map +1 -0
  26. package/dist-esm/samples-dev/labelsUpdateSample.js +40 -0
  27. package/dist-esm/samples-dev/labelsUpdateSample.js.map +1 -0
  28. package/dist-esm/samples-dev/operationsListSample.d.ts +2 -0
  29. package/dist-esm/samples-dev/operationsListSample.d.ts.map +1 -0
  30. package/dist-esm/samples-dev/operationsListSample.js +58 -0
  31. package/dist-esm/samples-dev/operationsListSample.js.map +1 -0
  32. package/dist-esm/samples-dev/tasksGetByWorkspaceSample.d.ts +2 -0
  33. package/dist-esm/samples-dev/tasksGetByWorkspaceSample.d.ts.map +1 -0
  34. package/dist-esm/samples-dev/tasksGetByWorkspaceSample.js +40 -0
  35. package/dist-esm/samples-dev/tasksGetByWorkspaceSample.js.map +1 -0
  36. package/dist-esm/samples-dev/workspacesCreateAndUpdateSample.d.ts +2 -0
  37. package/dist-esm/samples-dev/workspacesCreateAndUpdateSample.d.ts.map +1 -0
  38. package/dist-esm/samples-dev/workspacesCreateAndUpdateSample.js +43 -0
  39. package/dist-esm/samples-dev/workspacesCreateAndUpdateSample.js.map +1 -0
  40. package/dist-esm/samples-dev/workspacesDeleteSample.d.ts +2 -0
  41. package/dist-esm/samples-dev/workspacesDeleteSample.d.ts.map +1 -0
  42. package/dist-esm/samples-dev/workspacesDeleteSample.js +39 -0
  43. package/dist-esm/samples-dev/workspacesDeleteSample.js.map +1 -0
  44. package/dist-esm/samples-dev/workspacesGetSample.d.ts +2 -0
  45. package/dist-esm/samples-dev/workspacesGetSample.d.ts.map +1 -0
  46. package/dist-esm/samples-dev/workspacesGetSample.js +39 -0
  47. package/dist-esm/samples-dev/workspacesGetSample.js.map +1 -0
  48. package/dist-esm/samples-dev/workspacesListByResourceGroupSample.d.ts +2 -0
  49. package/dist-esm/samples-dev/workspacesListByResourceGroupSample.d.ts.map +1 -0
  50. package/dist-esm/samples-dev/workspacesListByResourceGroupSample.js +59 -0
  51. package/dist-esm/samples-dev/workspacesListByResourceGroupSample.js.map +1 -0
  52. package/dist-esm/samples-dev/workspacesListBySubscriptionSample.d.ts +2 -0
  53. package/dist-esm/samples-dev/workspacesListBySubscriptionSample.d.ts.map +1 -0
  54. package/dist-esm/samples-dev/workspacesListBySubscriptionSample.js +58 -0
  55. package/dist-esm/samples-dev/workspacesListBySubscriptionSample.js.map +1 -0
  56. package/dist-esm/samples-dev/workspacesUpdateSample.d.ts +2 -0
  57. package/dist-esm/samples-dev/workspacesUpdateSample.d.ts.map +1 -0
  58. package/dist-esm/samples-dev/workspacesUpdateSample.js +39 -0
  59. package/dist-esm/samples-dev/workspacesUpdateSample.js.map +1 -0
  60. package/dist-esm/src/easmMgmtClient.d.ts +23 -0
  61. package/dist-esm/src/easmMgmtClient.d.ts.map +1 -0
  62. package/dist-esm/src/easmMgmtClient.js +103 -0
  63. package/dist-esm/src/easmMgmtClient.js.map +1 -0
  64. package/dist-esm/src/index.d.ts +6 -0
  65. package/dist-esm/src/index.d.ts.map +1 -0
  66. package/dist-esm/src/index.js +13 -0
  67. package/dist-esm/src/index.js.map +1 -0
  68. package/dist-esm/src/lroImpl.d.ts +11 -0
  69. package/dist-esm/src/lroImpl.d.ts.map +1 -0
  70. package/dist-esm/src/lroImpl.js +21 -0
  71. package/dist-esm/src/lroImpl.js.map +1 -0
  72. package/dist-esm/src/models/index.d.ts +492 -0
  73. package/dist-esm/src/models/index.d.ts.map +1 -0
  74. package/dist-esm/src/models/index.js +66 -0
  75. package/dist-esm/src/models/index.js.map +1 -0
  76. package/dist-esm/src/models/mappers.d.ts +23 -0
  77. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  78. package/dist-esm/src/models/mappers.js +574 -0
  79. package/dist-esm/src/models/mappers.js.map +1 -0
  80. package/dist-esm/src/models/parameters.d.ts +16 -0
  81. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  82. package/dist-esm/src/models/parameters.js +137 -0
  83. package/dist-esm/src/models/parameters.js.map +1 -0
  84. package/dist-esm/src/operations/index.d.ts +5 -0
  85. package/dist-esm/src/operations/index.d.ts.map +1 -0
  86. package/dist-esm/src/operations/index.js +12 -0
  87. package/dist-esm/src/operations/index.js.map +1 -0
  88. package/dist-esm/src/operations/labels.d.ts +87 -0
  89. package/dist-esm/src/operations/labels.d.ts.map +1 -0
  90. package/dist-esm/src/operations/labels.js +395 -0
  91. package/dist-esm/src/operations/labels.js.map +1 -0
  92. package/dist-esm/src/operations/operations.d.ts +32 -0
  93. package/dist-esm/src/operations/operations.d.ts.map +1 -0
  94. package/dist-esm/src/operations/operations.js +138 -0
  95. package/dist-esm/src/operations/operations.js.map +1 -0
  96. package/dist-esm/src/operations/tasks.d.ts +21 -0
  97. package/dist-esm/src/operations/tasks.d.ts.map +1 -0
  98. package/dist-esm/src/operations/tasks.js +55 -0
  99. package/dist-esm/src/operations/tasks.js.map +1 -0
  100. package/dist-esm/src/operations/workspaces.d.ts +96 -0
  101. package/dist-esm/src/operations/workspaces.d.ts.map +1 -0
  102. package/dist-esm/src/operations/workspaces.js +496 -0
  103. package/dist-esm/src/operations/workspaces.js.map +1 -0
  104. package/dist-esm/src/operationsInterfaces/index.d.ts +5 -0
  105. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  106. package/dist-esm/src/operationsInterfaces/index.js +12 -0
  107. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  108. package/dist-esm/src/operationsInterfaces/labels.d.ts +62 -0
  109. package/dist-esm/src/operationsInterfaces/labels.d.ts.map +1 -0
  110. package/dist-esm/src/operationsInterfaces/labels.js +9 -0
  111. package/dist-esm/src/operationsInterfaces/labels.js.map +1 -0
  112. package/dist-esm/src/operationsInterfaces/operations.d.ts +11 -0
  113. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -0
  114. package/dist-esm/src/operationsInterfaces/operations.js +9 -0
  115. package/dist-esm/src/operationsInterfaces/operations.js.map +1 -0
  116. package/dist-esm/src/operationsInterfaces/tasks.d.ts +13 -0
  117. package/dist-esm/src/operationsInterfaces/tasks.d.ts.map +1 -0
  118. package/dist-esm/src/operationsInterfaces/tasks.js +9 -0
  119. package/dist-esm/src/operationsInterfaces/tasks.js.map +1 -0
  120. package/dist-esm/src/operationsInterfaces/workspaces.d.ts +60 -0
  121. package/dist-esm/src/operationsInterfaces/workspaces.d.ts.map +1 -0
  122. package/dist-esm/src/operationsInterfaces/workspaces.js +9 -0
  123. package/dist-esm/src/operationsInterfaces/workspaces.js.map +1 -0
  124. package/dist-esm/src/pagingHelper.d.ts +13 -0
  125. package/dist-esm/src/pagingHelper.d.ts.map +1 -0
  126. package/dist-esm/src/pagingHelper.js +32 -0
  127. package/dist-esm/src/pagingHelper.js.map +1 -0
  128. package/dist-esm/test/defendereasm_operations_test.spec.d.ts +4 -0
  129. package/dist-esm/test/defendereasm_operations_test.spec.d.ts.map +1 -0
  130. package/dist-esm/test/defendereasm_operations_test.spec.js +120 -0
  131. package/dist-esm/test/defendereasm_operations_test.spec.js.map +1 -0
  132. package/package.json +123 -0
  133. package/review/arm-defendereasm.api.md +400 -0
  134. package/rollup.config.js +122 -0
  135. package/src/easmMgmtClient.ts +151 -0
  136. package/src/index.ts +13 -0
  137. package/src/lroImpl.ts +42 -0
  138. package/src/models/index.ts +562 -0
  139. package/src/models/mappers.ts +639 -0
  140. package/src/models/parameters.ts +161 -0
  141. package/src/operations/index.ts +12 -0
  142. package/src/operations/labels.ts +543 -0
  143. package/src/operations/operations.ts +149 -0
  144. package/src/operations/tasks.ts +75 -0
  145. package/src/operations/workspaces.ts +625 -0
  146. package/src/operationsInterfaces/index.ts +12 -0
  147. package/src/operationsInterfaces/labels.ts +120 -0
  148. package/src/operationsInterfaces/operations.ts +22 -0
  149. package/src/operationsInterfaces/tasks.ts +29 -0
  150. package/src/operationsInterfaces/workspaces.ts +114 -0
  151. package/src/pagingHelper.ts +39 -0
  152. package/tsconfig.json +33 -0
  153. package/types/arm-defendereasm.d.ts +724 -0
  154. package/types/tsdoc-metadata.json +11 -0
@@ -0,0 +1,625 @@
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, PageSettings } from "@azure/core-paging";
10
+ import { setContinuationToken } from "../pagingHelper";
11
+ import { Workspaces } from "../operationsInterfaces";
12
+ import * as coreClient from "@azure/core-client";
13
+ import * as Mappers from "../models/mappers";
14
+ import * as Parameters from "../models/parameters";
15
+ import { EasmMgmtClient } from "../easmMgmtClient";
16
+ import {
17
+ SimplePollerLike,
18
+ OperationState,
19
+ createHttpPoller
20
+ } from "@azure/core-lro";
21
+ import { createLroSpec } from "../lroImpl";
22
+ import {
23
+ WorkspaceResource,
24
+ WorkspacesListBySubscriptionNextOptionalParams,
25
+ WorkspacesListBySubscriptionOptionalParams,
26
+ WorkspacesListBySubscriptionResponse,
27
+ WorkspacesListByResourceGroupNextOptionalParams,
28
+ WorkspacesListByResourceGroupOptionalParams,
29
+ WorkspacesListByResourceGroupResponse,
30
+ WorkspacesGetOptionalParams,
31
+ WorkspacesGetResponse,
32
+ WorkspacesCreateAndUpdateOptionalParams,
33
+ WorkspacesCreateAndUpdateResponse,
34
+ WorkspacesUpdateOptionalParams,
35
+ WorkspacesUpdateResponse,
36
+ WorkspacesDeleteOptionalParams,
37
+ WorkspacesListBySubscriptionNextResponse,
38
+ WorkspacesListByResourceGroupNextResponse
39
+ } from "../models";
40
+
41
+ /// <reference lib="esnext.asynciterable" />
42
+ /** Class containing Workspaces operations. */
43
+ export class WorkspacesImpl implements Workspaces {
44
+ private readonly client: EasmMgmtClient;
45
+
46
+ /**
47
+ * Initialize a new instance of the class Workspaces class.
48
+ * @param client Reference to the service client
49
+ */
50
+ constructor(client: EasmMgmtClient) {
51
+ this.client = client;
52
+ }
53
+
54
+ /**
55
+ * Returns a list of workspaces under the given subscription.
56
+ * @param options The options parameters.
57
+ */
58
+ public listBySubscription(
59
+ options?: WorkspacesListBySubscriptionOptionalParams
60
+ ): PagedAsyncIterableIterator<WorkspaceResource> {
61
+ const iter = this.listBySubscriptionPagingAll(options);
62
+ return {
63
+ next() {
64
+ return iter.next();
65
+ },
66
+ [Symbol.asyncIterator]() {
67
+ return this;
68
+ },
69
+ byPage: (settings?: PageSettings) => {
70
+ if (settings?.maxPageSize) {
71
+ throw new Error("maxPageSize is not supported by this operation.");
72
+ }
73
+ return this.listBySubscriptionPagingPage(options, settings);
74
+ }
75
+ };
76
+ }
77
+
78
+ private async *listBySubscriptionPagingPage(
79
+ options?: WorkspacesListBySubscriptionOptionalParams,
80
+ settings?: PageSettings
81
+ ): AsyncIterableIterator<WorkspaceResource[]> {
82
+ let result: WorkspacesListBySubscriptionResponse;
83
+ let continuationToken = settings?.continuationToken;
84
+ if (!continuationToken) {
85
+ result = await this._listBySubscription(options);
86
+ let page = result.value || [];
87
+ continuationToken = result.nextLink;
88
+ setContinuationToken(page, continuationToken);
89
+ yield page;
90
+ }
91
+ while (continuationToken) {
92
+ result = await this._listBySubscriptionNext(continuationToken, options);
93
+ continuationToken = result.nextLink;
94
+ let page = result.value || [];
95
+ setContinuationToken(page, continuationToken);
96
+ yield page;
97
+ }
98
+ }
99
+
100
+ private async *listBySubscriptionPagingAll(
101
+ options?: WorkspacesListBySubscriptionOptionalParams
102
+ ): AsyncIterableIterator<WorkspaceResource> {
103
+ for await (const page of this.listBySubscriptionPagingPage(options)) {
104
+ yield* page;
105
+ }
106
+ }
107
+
108
+ /**
109
+ * Returns a list of workspaces in the given resource group.
110
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
111
+ * @param options The options parameters.
112
+ */
113
+ public listByResourceGroup(
114
+ resourceGroupName: string,
115
+ options?: WorkspacesListByResourceGroupOptionalParams
116
+ ): PagedAsyncIterableIterator<WorkspaceResource> {
117
+ const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);
118
+ return {
119
+ next() {
120
+ return iter.next();
121
+ },
122
+ [Symbol.asyncIterator]() {
123
+ return this;
124
+ },
125
+ byPage: (settings?: PageSettings) => {
126
+ if (settings?.maxPageSize) {
127
+ throw new Error("maxPageSize is not supported by this operation.");
128
+ }
129
+ return this.listByResourceGroupPagingPage(
130
+ resourceGroupName,
131
+ options,
132
+ settings
133
+ );
134
+ }
135
+ };
136
+ }
137
+
138
+ private async *listByResourceGroupPagingPage(
139
+ resourceGroupName: string,
140
+ options?: WorkspacesListByResourceGroupOptionalParams,
141
+ settings?: PageSettings
142
+ ): AsyncIterableIterator<WorkspaceResource[]> {
143
+ let result: WorkspacesListByResourceGroupResponse;
144
+ let continuationToken = settings?.continuationToken;
145
+ if (!continuationToken) {
146
+ result = await this._listByResourceGroup(resourceGroupName, options);
147
+ let page = result.value || [];
148
+ continuationToken = result.nextLink;
149
+ setContinuationToken(page, continuationToken);
150
+ yield page;
151
+ }
152
+ while (continuationToken) {
153
+ result = await this._listByResourceGroupNext(
154
+ resourceGroupName,
155
+ continuationToken,
156
+ options
157
+ );
158
+ continuationToken = result.nextLink;
159
+ let page = result.value || [];
160
+ setContinuationToken(page, continuationToken);
161
+ yield page;
162
+ }
163
+ }
164
+
165
+ private async *listByResourceGroupPagingAll(
166
+ resourceGroupName: string,
167
+ options?: WorkspacesListByResourceGroupOptionalParams
168
+ ): AsyncIterableIterator<WorkspaceResource> {
169
+ for await (const page of this.listByResourceGroupPagingPage(
170
+ resourceGroupName,
171
+ options
172
+ )) {
173
+ yield* page;
174
+ }
175
+ }
176
+
177
+ /**
178
+ * Returns a list of workspaces under the given subscription.
179
+ * @param options The options parameters.
180
+ */
181
+ private _listBySubscription(
182
+ options?: WorkspacesListBySubscriptionOptionalParams
183
+ ): Promise<WorkspacesListBySubscriptionResponse> {
184
+ return this.client.sendOperationRequest(
185
+ { options },
186
+ listBySubscriptionOperationSpec
187
+ );
188
+ }
189
+
190
+ /**
191
+ * Returns a list of workspaces in the given resource group.
192
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
193
+ * @param options The options parameters.
194
+ */
195
+ private _listByResourceGroup(
196
+ resourceGroupName: string,
197
+ options?: WorkspacesListByResourceGroupOptionalParams
198
+ ): Promise<WorkspacesListByResourceGroupResponse> {
199
+ return this.client.sendOperationRequest(
200
+ { resourceGroupName, options },
201
+ listByResourceGroupOperationSpec
202
+ );
203
+ }
204
+
205
+ /**
206
+ * Returns a workspace with the given name.
207
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
208
+ * @param workspaceName The name of the Workspace.
209
+ * @param options The options parameters.
210
+ */
211
+ get(
212
+ resourceGroupName: string,
213
+ workspaceName: string,
214
+ options?: WorkspacesGetOptionalParams
215
+ ): Promise<WorkspacesGetResponse> {
216
+ return this.client.sendOperationRequest(
217
+ { resourceGroupName, workspaceName, options },
218
+ getOperationSpec
219
+ );
220
+ }
221
+
222
+ /**
223
+ * Create or update a Workspace.
224
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
225
+ * @param workspaceName The name of the Workspace.
226
+ * @param options The options parameters.
227
+ */
228
+ async beginCreateAndUpdate(
229
+ resourceGroupName: string,
230
+ workspaceName: string,
231
+ options?: WorkspacesCreateAndUpdateOptionalParams
232
+ ): Promise<
233
+ SimplePollerLike<
234
+ OperationState<WorkspacesCreateAndUpdateResponse>,
235
+ WorkspacesCreateAndUpdateResponse
236
+ >
237
+ > {
238
+ const directSendOperation = async (
239
+ args: coreClient.OperationArguments,
240
+ spec: coreClient.OperationSpec
241
+ ): Promise<WorkspacesCreateAndUpdateResponse> => {
242
+ return this.client.sendOperationRequest(args, spec);
243
+ };
244
+ const sendOperationFn = async (
245
+ args: coreClient.OperationArguments,
246
+ spec: coreClient.OperationSpec
247
+ ) => {
248
+ let currentRawResponse:
249
+ | coreClient.FullOperationResponse
250
+ | undefined = undefined;
251
+ const providedCallback = args.options?.onResponse;
252
+ const callback: coreClient.RawResponseCallback = (
253
+ rawResponse: coreClient.FullOperationResponse,
254
+ flatResponse: unknown
255
+ ) => {
256
+ currentRawResponse = rawResponse;
257
+ providedCallback?.(rawResponse, flatResponse);
258
+ };
259
+ const updatedArgs = {
260
+ ...args,
261
+ options: {
262
+ ...args.options,
263
+ onResponse: callback
264
+ }
265
+ };
266
+ const flatResponse = await directSendOperation(updatedArgs, spec);
267
+ return {
268
+ flatResponse,
269
+ rawResponse: {
270
+ statusCode: currentRawResponse!.status,
271
+ body: currentRawResponse!.parsedBody,
272
+ headers: currentRawResponse!.headers.toJSON()
273
+ }
274
+ };
275
+ };
276
+
277
+ const lro = createLroSpec({
278
+ sendOperationFn,
279
+ args: { resourceGroupName, workspaceName, options },
280
+ spec: createAndUpdateOperationSpec
281
+ });
282
+ const poller = await createHttpPoller<
283
+ WorkspacesCreateAndUpdateResponse,
284
+ OperationState<WorkspacesCreateAndUpdateResponse>
285
+ >(lro, {
286
+ restoreFrom: options?.resumeFrom,
287
+ intervalInMs: options?.updateIntervalInMs,
288
+ resourceLocationConfig: "azure-async-operation"
289
+ });
290
+ await poller.poll();
291
+ return poller;
292
+ }
293
+
294
+ /**
295
+ * Create or update a Workspace.
296
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
297
+ * @param workspaceName The name of the Workspace.
298
+ * @param options The options parameters.
299
+ */
300
+ async beginCreateAndUpdateAndWait(
301
+ resourceGroupName: string,
302
+ workspaceName: string,
303
+ options?: WorkspacesCreateAndUpdateOptionalParams
304
+ ): Promise<WorkspacesCreateAndUpdateResponse> {
305
+ const poller = await this.beginCreateAndUpdate(
306
+ resourceGroupName,
307
+ workspaceName,
308
+ options
309
+ );
310
+ return poller.pollUntilDone();
311
+ }
312
+
313
+ /**
314
+ * Update a Workspace.
315
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
316
+ * @param workspaceName The name of the Workspace.
317
+ * @param options The options parameters.
318
+ */
319
+ update(
320
+ resourceGroupName: string,
321
+ workspaceName: string,
322
+ options?: WorkspacesUpdateOptionalParams
323
+ ): Promise<WorkspacesUpdateResponse> {
324
+ return this.client.sendOperationRequest(
325
+ { resourceGroupName, workspaceName, options },
326
+ updateOperationSpec
327
+ );
328
+ }
329
+
330
+ /**
331
+ * Delete a Workspace.
332
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
333
+ * @param workspaceName The name of the Workspace.
334
+ * @param options The options parameters.
335
+ */
336
+ async beginDelete(
337
+ resourceGroupName: string,
338
+ workspaceName: string,
339
+ options?: WorkspacesDeleteOptionalParams
340
+ ): Promise<SimplePollerLike<OperationState<void>, void>> {
341
+ const directSendOperation = async (
342
+ args: coreClient.OperationArguments,
343
+ spec: coreClient.OperationSpec
344
+ ): Promise<void> => {
345
+ return this.client.sendOperationRequest(args, spec);
346
+ };
347
+ const sendOperationFn = async (
348
+ args: coreClient.OperationArguments,
349
+ spec: coreClient.OperationSpec
350
+ ) => {
351
+ let currentRawResponse:
352
+ | coreClient.FullOperationResponse
353
+ | undefined = undefined;
354
+ const providedCallback = args.options?.onResponse;
355
+ const callback: coreClient.RawResponseCallback = (
356
+ rawResponse: coreClient.FullOperationResponse,
357
+ flatResponse: unknown
358
+ ) => {
359
+ currentRawResponse = rawResponse;
360
+ providedCallback?.(rawResponse, flatResponse);
361
+ };
362
+ const updatedArgs = {
363
+ ...args,
364
+ options: {
365
+ ...args.options,
366
+ onResponse: callback
367
+ }
368
+ };
369
+ const flatResponse = await directSendOperation(updatedArgs, spec);
370
+ return {
371
+ flatResponse,
372
+ rawResponse: {
373
+ statusCode: currentRawResponse!.status,
374
+ body: currentRawResponse!.parsedBody,
375
+ headers: currentRawResponse!.headers.toJSON()
376
+ }
377
+ };
378
+ };
379
+
380
+ const lro = createLroSpec({
381
+ sendOperationFn,
382
+ args: { resourceGroupName, workspaceName, options },
383
+ spec: deleteOperationSpec
384
+ });
385
+ const poller = await createHttpPoller<void, OperationState<void>>(lro, {
386
+ restoreFrom: options?.resumeFrom,
387
+ intervalInMs: options?.updateIntervalInMs,
388
+ resourceLocationConfig: "azure-async-operation"
389
+ });
390
+ await poller.poll();
391
+ return poller;
392
+ }
393
+
394
+ /**
395
+ * Delete a Workspace.
396
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
397
+ * @param workspaceName The name of the Workspace.
398
+ * @param options The options parameters.
399
+ */
400
+ async beginDeleteAndWait(
401
+ resourceGroupName: string,
402
+ workspaceName: string,
403
+ options?: WorkspacesDeleteOptionalParams
404
+ ): Promise<void> {
405
+ const poller = await this.beginDelete(
406
+ resourceGroupName,
407
+ workspaceName,
408
+ options
409
+ );
410
+ return poller.pollUntilDone();
411
+ }
412
+
413
+ /**
414
+ * ListBySubscriptionNext
415
+ * @param nextLink The nextLink from the previous successful call to the ListBySubscription method.
416
+ * @param options The options parameters.
417
+ */
418
+ private _listBySubscriptionNext(
419
+ nextLink: string,
420
+ options?: WorkspacesListBySubscriptionNextOptionalParams
421
+ ): Promise<WorkspacesListBySubscriptionNextResponse> {
422
+ return this.client.sendOperationRequest(
423
+ { nextLink, options },
424
+ listBySubscriptionNextOperationSpec
425
+ );
426
+ }
427
+
428
+ /**
429
+ * ListByResourceGroupNext
430
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
431
+ * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.
432
+ * @param options The options parameters.
433
+ */
434
+ private _listByResourceGroupNext(
435
+ resourceGroupName: string,
436
+ nextLink: string,
437
+ options?: WorkspacesListByResourceGroupNextOptionalParams
438
+ ): Promise<WorkspacesListByResourceGroupNextResponse> {
439
+ return this.client.sendOperationRequest(
440
+ { resourceGroupName, nextLink, options },
441
+ listByResourceGroupNextOperationSpec
442
+ );
443
+ }
444
+ }
445
+ // Operation Specifications
446
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
447
+
448
+ const listBySubscriptionOperationSpec: coreClient.OperationSpec = {
449
+ path: "/subscriptions/{subscriptionId}/providers/Microsoft.Easm/workspaces",
450
+ httpMethod: "GET",
451
+ responses: {
452
+ 200: {
453
+ bodyMapper: Mappers.WorkspaceResourceList
454
+ },
455
+ default: {
456
+ bodyMapper: Mappers.ErrorResponse
457
+ }
458
+ },
459
+ queryParameters: [Parameters.apiVersion],
460
+ urlParameters: [Parameters.$host, Parameters.subscriptionId],
461
+ headerParameters: [Parameters.accept],
462
+ serializer
463
+ };
464
+ const listByResourceGroupOperationSpec: coreClient.OperationSpec = {
465
+ path:
466
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Easm/workspaces",
467
+ httpMethod: "GET",
468
+ responses: {
469
+ 200: {
470
+ bodyMapper: Mappers.WorkspaceResourceList
471
+ },
472
+ default: {
473
+ bodyMapper: Mappers.ErrorResponse
474
+ }
475
+ },
476
+ queryParameters: [Parameters.apiVersion],
477
+ urlParameters: [
478
+ Parameters.$host,
479
+ Parameters.subscriptionId,
480
+ Parameters.resourceGroupName
481
+ ],
482
+ headerParameters: [Parameters.accept],
483
+ serializer
484
+ };
485
+ const getOperationSpec: coreClient.OperationSpec = {
486
+ path:
487
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Easm/workspaces/{workspaceName}",
488
+ httpMethod: "GET",
489
+ responses: {
490
+ 200: {
491
+ bodyMapper: Mappers.WorkspaceResource
492
+ },
493
+ default: {
494
+ bodyMapper: Mappers.ErrorResponse
495
+ }
496
+ },
497
+ queryParameters: [Parameters.apiVersion],
498
+ urlParameters: [
499
+ Parameters.$host,
500
+ Parameters.subscriptionId,
501
+ Parameters.resourceGroupName,
502
+ Parameters.workspaceName
503
+ ],
504
+ headerParameters: [Parameters.accept],
505
+ serializer
506
+ };
507
+ const createAndUpdateOperationSpec: coreClient.OperationSpec = {
508
+ path:
509
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Easm/workspaces/{workspaceName}",
510
+ httpMethod: "PUT",
511
+ responses: {
512
+ 200: {
513
+ bodyMapper: Mappers.WorkspaceResource
514
+ },
515
+ 201: {
516
+ bodyMapper: Mappers.WorkspaceResource
517
+ },
518
+ 202: {
519
+ bodyMapper: Mappers.WorkspaceResource
520
+ },
521
+ 204: {
522
+ bodyMapper: Mappers.WorkspaceResource
523
+ },
524
+ default: {
525
+ bodyMapper: Mappers.ErrorResponse
526
+ }
527
+ },
528
+ requestBody: Parameters.workspaceResource,
529
+ queryParameters: [Parameters.apiVersion],
530
+ urlParameters: [
531
+ Parameters.$host,
532
+ Parameters.subscriptionId,
533
+ Parameters.resourceGroupName,
534
+ Parameters.workspaceName
535
+ ],
536
+ headerParameters: [Parameters.accept, Parameters.contentType],
537
+ mediaType: "json",
538
+ serializer
539
+ };
540
+ const updateOperationSpec: coreClient.OperationSpec = {
541
+ path:
542
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Easm/workspaces/{workspaceName}",
543
+ httpMethod: "PATCH",
544
+ responses: {
545
+ 200: {
546
+ bodyMapper: Mappers.WorkspaceResource
547
+ },
548
+ default: {
549
+ bodyMapper: Mappers.ErrorResponse
550
+ }
551
+ },
552
+ requestBody: Parameters.workspacePatchResource,
553
+ queryParameters: [Parameters.apiVersion],
554
+ urlParameters: [
555
+ Parameters.$host,
556
+ Parameters.subscriptionId,
557
+ Parameters.resourceGroupName,
558
+ Parameters.workspaceName
559
+ ],
560
+ headerParameters: [Parameters.accept, Parameters.contentType],
561
+ mediaType: "json",
562
+ serializer
563
+ };
564
+ const deleteOperationSpec: coreClient.OperationSpec = {
565
+ path:
566
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Easm/workspaces/{workspaceName}",
567
+ httpMethod: "DELETE",
568
+ responses: {
569
+ 200: {},
570
+ 201: {},
571
+ 202: {},
572
+ 204: {},
573
+ default: {
574
+ bodyMapper: Mappers.ErrorResponse
575
+ }
576
+ },
577
+ queryParameters: [Parameters.apiVersion],
578
+ urlParameters: [
579
+ Parameters.$host,
580
+ Parameters.subscriptionId,
581
+ Parameters.resourceGroupName,
582
+ Parameters.workspaceName
583
+ ],
584
+ headerParameters: [Parameters.accept],
585
+ serializer
586
+ };
587
+ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = {
588
+ path: "{nextLink}",
589
+ httpMethod: "GET",
590
+ responses: {
591
+ 200: {
592
+ bodyMapper: Mappers.WorkspaceResourceList
593
+ },
594
+ default: {
595
+ bodyMapper: Mappers.ErrorResponse
596
+ }
597
+ },
598
+ urlParameters: [
599
+ Parameters.$host,
600
+ Parameters.subscriptionId,
601
+ Parameters.nextLink
602
+ ],
603
+ headerParameters: [Parameters.accept],
604
+ serializer
605
+ };
606
+ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {
607
+ path: "{nextLink}",
608
+ httpMethod: "GET",
609
+ responses: {
610
+ 200: {
611
+ bodyMapper: Mappers.WorkspaceResourceList
612
+ },
613
+ default: {
614
+ bodyMapper: Mappers.ErrorResponse
615
+ }
616
+ },
617
+ urlParameters: [
618
+ Parameters.$host,
619
+ Parameters.subscriptionId,
620
+ Parameters.resourceGroupName,
621
+ Parameters.nextLink
622
+ ],
623
+ headerParameters: [Parameters.accept],
624
+ serializer
625
+ };
@@ -0,0 +1,12 @@
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
+ export * from "./workspaces";
10
+ export * from "./labels";
11
+ export * from "./tasks";
12
+ export * from "./operations";