@azure/arm-chaos 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 (204) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/LICENSE +21 -0
  3. package/README.md +109 -0
  4. package/dist/index.js +3725 -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/capabilitiesCreateOrUpdateSample.d.ts +2 -0
  9. package/dist-esm/samples-dev/capabilitiesCreateOrUpdateSample.d.ts.map +1 -0
  10. package/dist-esm/samples-dev/capabilitiesCreateOrUpdateSample.js +36 -0
  11. package/dist-esm/samples-dev/capabilitiesCreateOrUpdateSample.js.map +1 -0
  12. package/dist-esm/samples-dev/capabilitiesDeleteSample.d.ts +2 -0
  13. package/dist-esm/samples-dev/capabilitiesDeleteSample.d.ts.map +1 -0
  14. package/dist-esm/samples-dev/capabilitiesDeleteSample.js +35 -0
  15. package/dist-esm/samples-dev/capabilitiesDeleteSample.js.map +1 -0
  16. package/dist-esm/samples-dev/capabilitiesGetSample.d.ts +2 -0
  17. package/dist-esm/samples-dev/capabilitiesGetSample.d.ts.map +1 -0
  18. package/dist-esm/samples-dev/capabilitiesGetSample.js +35 -0
  19. package/dist-esm/samples-dev/capabilitiesGetSample.js.map +1 -0
  20. package/dist-esm/samples-dev/capabilitiesListSample.d.ts +2 -0
  21. package/dist-esm/samples-dev/capabilitiesListSample.d.ts.map +1 -0
  22. package/dist-esm/samples-dev/capabilitiesListSample.js +48 -0
  23. package/dist-esm/samples-dev/capabilitiesListSample.js.map +1 -0
  24. package/dist-esm/samples-dev/capabilityTypesGetSample.d.ts +2 -0
  25. package/dist-esm/samples-dev/capabilityTypesGetSample.d.ts.map +1 -0
  26. package/dist-esm/samples-dev/capabilityTypesGetSample.js +32 -0
  27. package/dist-esm/samples-dev/capabilityTypesGetSample.js.map +1 -0
  28. package/dist-esm/samples-dev/capabilityTypesListSample.d.ts +2 -0
  29. package/dist-esm/samples-dev/capabilityTypesListSample.d.ts.map +1 -0
  30. package/dist-esm/samples-dev/capabilityTypesListSample.js +45 -0
  31. package/dist-esm/samples-dev/capabilityTypesListSample.js.map +1 -0
  32. package/dist-esm/samples-dev/experimentsCancelSample.d.ts +2 -0
  33. package/dist-esm/samples-dev/experimentsCancelSample.d.ts.map +1 -0
  34. package/dist-esm/samples-dev/experimentsCancelSample.js +31 -0
  35. package/dist-esm/samples-dev/experimentsCancelSample.js.map +1 -0
  36. package/dist-esm/samples-dev/experimentsCreateOrUpdateSample.d.ts +2 -0
  37. package/dist-esm/samples-dev/experimentsCreateOrUpdateSample.d.ts.map +1 -0
  38. package/dist-esm/samples-dev/experimentsCreateOrUpdateSample.js +66 -0
  39. package/dist-esm/samples-dev/experimentsCreateOrUpdateSample.js.map +1 -0
  40. package/dist-esm/samples-dev/experimentsDeleteSample.d.ts +2 -0
  41. package/dist-esm/samples-dev/experimentsDeleteSample.d.ts.map +1 -0
  42. package/dist-esm/samples-dev/experimentsDeleteSample.js +31 -0
  43. package/dist-esm/samples-dev/experimentsDeleteSample.js.map +1 -0
  44. package/dist-esm/samples-dev/experimentsGetExecutionDetailsSample.d.ts +2 -0
  45. package/dist-esm/samples-dev/experimentsGetExecutionDetailsSample.d.ts.map +1 -0
  46. package/dist-esm/samples-dev/experimentsGetExecutionDetailsSample.js +32 -0
  47. package/dist-esm/samples-dev/experimentsGetExecutionDetailsSample.js.map +1 -0
  48. package/dist-esm/samples-dev/experimentsGetSample.d.ts +2 -0
  49. package/dist-esm/samples-dev/experimentsGetSample.d.ts.map +1 -0
  50. package/dist-esm/samples-dev/experimentsGetSample.js +31 -0
  51. package/dist-esm/samples-dev/experimentsGetSample.js.map +1 -0
  52. package/dist-esm/samples-dev/experimentsGetStatusSample.d.ts +2 -0
  53. package/dist-esm/samples-dev/experimentsGetStatusSample.d.ts.map +1 -0
  54. package/dist-esm/samples-dev/experimentsGetStatusSample.js +32 -0
  55. package/dist-esm/samples-dev/experimentsGetStatusSample.js.map +1 -0
  56. package/dist-esm/samples-dev/experimentsListAllSample.d.ts +2 -0
  57. package/dist-esm/samples-dev/experimentsListAllSample.d.ts.map +1 -0
  58. package/dist-esm/samples-dev/experimentsListAllSample.js +45 -0
  59. package/dist-esm/samples-dev/experimentsListAllSample.js.map +1 -0
  60. package/dist-esm/samples-dev/experimentsListAllStatusesSample.d.ts +2 -0
  61. package/dist-esm/samples-dev/experimentsListAllStatusesSample.d.ts.map +1 -0
  62. package/dist-esm/samples-dev/experimentsListAllStatusesSample.js +45 -0
  63. package/dist-esm/samples-dev/experimentsListAllStatusesSample.js.map +1 -0
  64. package/dist-esm/samples-dev/experimentsListExecutionDetailsSample.d.ts +2 -0
  65. package/dist-esm/samples-dev/experimentsListExecutionDetailsSample.d.ts.map +1 -0
  66. package/dist-esm/samples-dev/experimentsListExecutionDetailsSample.js +45 -0
  67. package/dist-esm/samples-dev/experimentsListExecutionDetailsSample.js.map +1 -0
  68. package/dist-esm/samples-dev/experimentsListSample.d.ts +2 -0
  69. package/dist-esm/samples-dev/experimentsListSample.d.ts.map +1 -0
  70. package/dist-esm/samples-dev/experimentsListSample.js +46 -0
  71. package/dist-esm/samples-dev/experimentsListSample.js.map +1 -0
  72. package/dist-esm/samples-dev/experimentsStartSample.d.ts +2 -0
  73. package/dist-esm/samples-dev/experimentsStartSample.d.ts.map +1 -0
  74. package/dist-esm/samples-dev/experimentsStartSample.js +31 -0
  75. package/dist-esm/samples-dev/experimentsStartSample.js.map +1 -0
  76. package/dist-esm/samples-dev/targetTypesGetSample.d.ts +2 -0
  77. package/dist-esm/samples-dev/targetTypesGetSample.d.ts.map +1 -0
  78. package/dist-esm/samples-dev/targetTypesGetSample.js +31 -0
  79. package/dist-esm/samples-dev/targetTypesGetSample.js.map +1 -0
  80. package/dist-esm/samples-dev/targetTypesListSample.d.ts +2 -0
  81. package/dist-esm/samples-dev/targetTypesListSample.d.ts.map +1 -0
  82. package/dist-esm/samples-dev/targetTypesListSample.js +46 -0
  83. package/dist-esm/samples-dev/targetTypesListSample.js.map +1 -0
  84. package/dist-esm/samples-dev/targetsCreateOrUpdateSample.d.ts +2 -0
  85. package/dist-esm/samples-dev/targetsCreateOrUpdateSample.d.ts.map +1 -0
  86. package/dist-esm/samples-dev/targetsCreateOrUpdateSample.js +41 -0
  87. package/dist-esm/samples-dev/targetsCreateOrUpdateSample.js.map +1 -0
  88. package/dist-esm/samples-dev/targetsDeleteSample.d.ts +2 -0
  89. package/dist-esm/samples-dev/targetsDeleteSample.d.ts.map +1 -0
  90. package/dist-esm/samples-dev/targetsDeleteSample.js +34 -0
  91. package/dist-esm/samples-dev/targetsDeleteSample.js.map +1 -0
  92. package/dist-esm/samples-dev/targetsGetSample.d.ts +2 -0
  93. package/dist-esm/samples-dev/targetsGetSample.d.ts.map +1 -0
  94. package/dist-esm/samples-dev/targetsGetSample.js +34 -0
  95. package/dist-esm/samples-dev/targetsGetSample.js.map +1 -0
  96. package/dist-esm/samples-dev/targetsListSample.d.ts +2 -0
  97. package/dist-esm/samples-dev/targetsListSample.d.ts.map +1 -0
  98. package/dist-esm/samples-dev/targetsListSample.js +49 -0
  99. package/dist-esm/samples-dev/targetsListSample.js.map +1 -0
  100. package/dist-esm/src/chaosManagementClient.d.ts +25 -0
  101. package/dist-esm/src/chaosManagementClient.d.ts.map +1 -0
  102. package/dist-esm/src/chaosManagementClient.js +108 -0
  103. package/dist-esm/src/chaosManagementClient.js.map +1 -0
  104. package/dist-esm/src/index.d.ts +5 -0
  105. package/dist-esm/src/index.d.ts.map +1 -0
  106. package/dist-esm/src/index.js +12 -0
  107. package/dist-esm/src/index.js.map +1 -0
  108. package/dist-esm/src/models/index.d.ts +980 -0
  109. package/dist-esm/src/models/index.d.ts.map +1 -0
  110. package/dist-esm/src/models/index.js +36 -0
  111. package/dist-esm/src/models/index.js.map +1 -0
  112. package/dist-esm/src/models/mappers.d.ts +50 -0
  113. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  114. package/dist-esm/src/models/mappers.js +1530 -0
  115. package/dist-esm/src/models/mappers.js.map +1 -0
  116. package/dist-esm/src/models/parameters.d.ts +25 -0
  117. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  118. package/dist-esm/src/models/parameters.js +264 -0
  119. package/dist-esm/src/models/parameters.js.map +1 -0
  120. package/dist-esm/src/operations/capabilities.d.ts +81 -0
  121. package/dist-esm/src/operations/capabilities.d.ts.map +1 -0
  122. package/dist-esm/src/operations/capabilities.js +308 -0
  123. package/dist-esm/src/operations/capabilities.js.map +1 -0
  124. package/dist-esm/src/operations/capabilityTypes.d.ts +46 -0
  125. package/dist-esm/src/operations/capabilityTypes.d.ts.map +1 -0
  126. package/dist-esm/src/operations/capabilityTypes.js +169 -0
  127. package/dist-esm/src/operations/capabilityTypes.js.map +1 -0
  128. package/dist-esm/src/operations/experiments.d.ts +153 -0
  129. package/dist-esm/src/operations/experiments.d.ts.map +1 -0
  130. package/dist-esm/src/operations/experiments.js +687 -0
  131. package/dist-esm/src/operations/experiments.js.map +1 -0
  132. package/dist-esm/src/operations/index.d.ts +7 -0
  133. package/dist-esm/src/operations/index.d.ts.map +1 -0
  134. package/dist-esm/src/operations/index.js +14 -0
  135. package/dist-esm/src/operations/index.js.map +1 -0
  136. package/dist-esm/src/operations/operations.d.ts +32 -0
  137. package/dist-esm/src/operations/operations.d.ts.map +1 -0
  138. package/dist-esm/src/operations/operations.js +120 -0
  139. package/dist-esm/src/operations/operations.js.map +1 -0
  140. package/dist-esm/src/operations/targetTypes.d.ts +42 -0
  141. package/dist-esm/src/operations/targetTypes.d.ts.map +1 -0
  142. package/dist-esm/src/operations/targetTypes.js +162 -0
  143. package/dist-esm/src/operations/targetTypes.js.map +1 -0
  144. package/dist-esm/src/operations/targets.d.ts +75 -0
  145. package/dist-esm/src/operations/targets.d.ts.map +1 -0
  146. package/dist-esm/src/operations/targets.js +292 -0
  147. package/dist-esm/src/operations/targets.js.map +1 -0
  148. package/dist-esm/src/operationsInterfaces/capabilities.d.ts +50 -0
  149. package/dist-esm/src/operationsInterfaces/capabilities.d.ts.map +1 -0
  150. package/dist-esm/src/operationsInterfaces/capabilities.js +9 -0
  151. package/dist-esm/src/operationsInterfaces/capabilities.js.map +1 -0
  152. package/dist-esm/src/operationsInterfaces/capabilityTypes.d.ts +21 -0
  153. package/dist-esm/src/operationsInterfaces/capabilityTypes.d.ts.map +1 -0
  154. package/dist-esm/src/operationsInterfaces/capabilityTypes.js +9 -0
  155. package/dist-esm/src/operationsInterfaces/capabilityTypes.js.map +1 -0
  156. package/dist-esm/src/operationsInterfaces/experiments.d.ts +83 -0
  157. package/dist-esm/src/operationsInterfaces/experiments.d.ts.map +1 -0
  158. package/dist-esm/src/operationsInterfaces/experiments.js +9 -0
  159. package/dist-esm/src/operationsInterfaces/experiments.js.map +1 -0
  160. package/dist-esm/src/operationsInterfaces/index.d.ts +7 -0
  161. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  162. package/dist-esm/src/operationsInterfaces/index.js +14 -0
  163. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  164. package/dist-esm/src/operationsInterfaces/operations.d.ts +11 -0
  165. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -0
  166. package/dist-esm/src/operationsInterfaces/operations.js +9 -0
  167. package/dist-esm/src/operationsInterfaces/operations.js.map +1 -0
  168. package/dist-esm/src/operationsInterfaces/targetTypes.d.ts +19 -0
  169. package/dist-esm/src/operationsInterfaces/targetTypes.d.ts.map +1 -0
  170. package/dist-esm/src/operationsInterfaces/targetTypes.js +9 -0
  171. package/dist-esm/src/operationsInterfaces/targetTypes.js.map +1 -0
  172. package/dist-esm/src/operationsInterfaces/targets.d.ts +46 -0
  173. package/dist-esm/src/operationsInterfaces/targets.d.ts.map +1 -0
  174. package/dist-esm/src/operationsInterfaces/targets.js +9 -0
  175. package/dist-esm/src/operationsInterfaces/targets.js.map +1 -0
  176. package/dist-esm/test/chaos_examples.spec.d.ts +4 -0
  177. package/dist-esm/test/chaos_examples.spec.d.ts.map +1 -0
  178. package/dist-esm/test/chaos_examples.spec.js +261 -0
  179. package/dist-esm/test/chaos_examples.spec.js.map +1 -0
  180. package/package.json +120 -0
  181. package/review/arm-chaos.api.md +682 -0
  182. package/rollup.config.js +122 -0
  183. package/src/chaosManagementClient.ts +165 -0
  184. package/src/index.ts +12 -0
  185. package/src/models/index.ts +1111 -0
  186. package/src/models/mappers.ts +1640 -0
  187. package/src/models/parameters.ts +302 -0
  188. package/src/operations/capabilities.ts +435 -0
  189. package/src/operations/capabilityTypes.ts +221 -0
  190. package/src/operations/experiments.ts +892 -0
  191. package/src/operations/index.ts +14 -0
  192. package/src/operations/operations.ts +137 -0
  193. package/src/operations/targetTypes.ts +199 -0
  194. package/src/operations/targets.ts +406 -0
  195. package/src/operationsInterfaces/capabilities.ts +99 -0
  196. package/src/operationsInterfaces/capabilityTypes.ts +44 -0
  197. package/src/operationsInterfaces/experiments.ts +157 -0
  198. package/src/operationsInterfaces/index.ts +14 -0
  199. package/src/operationsInterfaces/operations.ts +22 -0
  200. package/src/operationsInterfaces/targetTypes.ts +40 -0
  201. package/src/operationsInterfaces/targets.ts +91 -0
  202. package/tsconfig.json +33 -0
  203. package/types/arm-chaos.d.ts +1337 -0
  204. package/types/tsdoc-metadata.json +11 -0
@@ -0,0 +1,435 @@
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 { Capabilities } 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 { ChaosManagementClient } from "../chaosManagementClient";
15
+ import {
16
+ Capability,
17
+ CapabilitiesListNextOptionalParams,
18
+ CapabilitiesListOptionalParams,
19
+ CapabilitiesListResponse,
20
+ CapabilitiesGetOptionalParams,
21
+ CapabilitiesGetResponse,
22
+ CapabilitiesDeleteOptionalParams,
23
+ CapabilitiesCreateOrUpdateOptionalParams,
24
+ CapabilitiesCreateOrUpdateResponse,
25
+ CapabilitiesListNextResponse
26
+ } from "../models";
27
+
28
+ /// <reference lib="esnext.asynciterable" />
29
+ /** Class containing Capabilities operations. */
30
+ export class CapabilitiesImpl implements Capabilities {
31
+ private readonly client: ChaosManagementClient;
32
+
33
+ /**
34
+ * Initialize a new instance of the class Capabilities class.
35
+ * @param client Reference to the service client
36
+ */
37
+ constructor(client: ChaosManagementClient) {
38
+ this.client = client;
39
+ }
40
+
41
+ /**
42
+ * Get a list of Capability resources that extend a Target resource..
43
+ * @param resourceGroupName String that represents an Azure resource group.
44
+ * @param parentProviderNamespace String that represents a resource provider namespace.
45
+ * @param parentResourceType String that represents a resource type.
46
+ * @param parentResourceName String that represents a resource name.
47
+ * @param targetName String that represents a Target resource name.
48
+ * @param options The options parameters.
49
+ */
50
+ public list(
51
+ resourceGroupName: string,
52
+ parentProviderNamespace: string,
53
+ parentResourceType: string,
54
+ parentResourceName: string,
55
+ targetName: string,
56
+ options?: CapabilitiesListOptionalParams
57
+ ): PagedAsyncIterableIterator<Capability> {
58
+ const iter = this.listPagingAll(
59
+ resourceGroupName,
60
+ parentProviderNamespace,
61
+ parentResourceType,
62
+ parentResourceName,
63
+ targetName,
64
+ options
65
+ );
66
+ return {
67
+ next() {
68
+ return iter.next();
69
+ },
70
+ [Symbol.asyncIterator]() {
71
+ return this;
72
+ },
73
+ byPage: () => {
74
+ return this.listPagingPage(
75
+ resourceGroupName,
76
+ parentProviderNamespace,
77
+ parentResourceType,
78
+ parentResourceName,
79
+ targetName,
80
+ options
81
+ );
82
+ }
83
+ };
84
+ }
85
+
86
+ private async *listPagingPage(
87
+ resourceGroupName: string,
88
+ parentProviderNamespace: string,
89
+ parentResourceType: string,
90
+ parentResourceName: string,
91
+ targetName: string,
92
+ options?: CapabilitiesListOptionalParams
93
+ ): AsyncIterableIterator<Capability[]> {
94
+ let result = await this._list(
95
+ resourceGroupName,
96
+ parentProviderNamespace,
97
+ parentResourceType,
98
+ parentResourceName,
99
+ targetName,
100
+ options
101
+ );
102
+ yield result.value || [];
103
+ let continuationToken = result.nextLink;
104
+ while (continuationToken) {
105
+ result = await this._listNext(
106
+ resourceGroupName,
107
+ parentProviderNamespace,
108
+ parentResourceType,
109
+ parentResourceName,
110
+ targetName,
111
+ continuationToken,
112
+ options
113
+ );
114
+ continuationToken = result.nextLink;
115
+ yield result.value || [];
116
+ }
117
+ }
118
+
119
+ private async *listPagingAll(
120
+ resourceGroupName: string,
121
+ parentProviderNamespace: string,
122
+ parentResourceType: string,
123
+ parentResourceName: string,
124
+ targetName: string,
125
+ options?: CapabilitiesListOptionalParams
126
+ ): AsyncIterableIterator<Capability> {
127
+ for await (const page of this.listPagingPage(
128
+ resourceGroupName,
129
+ parentProviderNamespace,
130
+ parentResourceType,
131
+ parentResourceName,
132
+ targetName,
133
+ options
134
+ )) {
135
+ yield* page;
136
+ }
137
+ }
138
+
139
+ /**
140
+ * Get a list of Capability resources that extend a Target resource..
141
+ * @param resourceGroupName String that represents an Azure resource group.
142
+ * @param parentProviderNamespace String that represents a resource provider namespace.
143
+ * @param parentResourceType String that represents a resource type.
144
+ * @param parentResourceName String that represents a resource name.
145
+ * @param targetName String that represents a Target resource name.
146
+ * @param options The options parameters.
147
+ */
148
+ private _list(
149
+ resourceGroupName: string,
150
+ parentProviderNamespace: string,
151
+ parentResourceType: string,
152
+ parentResourceName: string,
153
+ targetName: string,
154
+ options?: CapabilitiesListOptionalParams
155
+ ): Promise<CapabilitiesListResponse> {
156
+ return this.client.sendOperationRequest(
157
+ {
158
+ resourceGroupName,
159
+ parentProviderNamespace,
160
+ parentResourceType,
161
+ parentResourceName,
162
+ targetName,
163
+ options
164
+ },
165
+ listOperationSpec
166
+ );
167
+ }
168
+
169
+ /**
170
+ * Get a Capability resource that extends a Target resource.
171
+ * @param resourceGroupName String that represents an Azure resource group.
172
+ * @param parentProviderNamespace String that represents a resource provider namespace.
173
+ * @param parentResourceType String that represents a resource type.
174
+ * @param parentResourceName String that represents a resource name.
175
+ * @param targetName String that represents a Target resource name.
176
+ * @param capabilityName String that represents a Capability resource name.
177
+ * @param options The options parameters.
178
+ */
179
+ get(
180
+ resourceGroupName: string,
181
+ parentProviderNamespace: string,
182
+ parentResourceType: string,
183
+ parentResourceName: string,
184
+ targetName: string,
185
+ capabilityName: string,
186
+ options?: CapabilitiesGetOptionalParams
187
+ ): Promise<CapabilitiesGetResponse> {
188
+ return this.client.sendOperationRequest(
189
+ {
190
+ resourceGroupName,
191
+ parentProviderNamespace,
192
+ parentResourceType,
193
+ parentResourceName,
194
+ targetName,
195
+ capabilityName,
196
+ options
197
+ },
198
+ getOperationSpec
199
+ );
200
+ }
201
+
202
+ /**
203
+ * Delete a Capability that extends a Target resource.
204
+ * @param resourceGroupName String that represents an Azure resource group.
205
+ * @param parentProviderNamespace String that represents a resource provider namespace.
206
+ * @param parentResourceType String that represents a resource type.
207
+ * @param parentResourceName String that represents a resource name.
208
+ * @param targetName String that represents a Target resource name.
209
+ * @param capabilityName String that represents a Capability resource name.
210
+ * @param options The options parameters.
211
+ */
212
+ delete(
213
+ resourceGroupName: string,
214
+ parentProviderNamespace: string,
215
+ parentResourceType: string,
216
+ parentResourceName: string,
217
+ targetName: string,
218
+ capabilityName: string,
219
+ options?: CapabilitiesDeleteOptionalParams
220
+ ): Promise<void> {
221
+ return this.client.sendOperationRequest(
222
+ {
223
+ resourceGroupName,
224
+ parentProviderNamespace,
225
+ parentResourceType,
226
+ parentResourceName,
227
+ targetName,
228
+ capabilityName,
229
+ options
230
+ },
231
+ deleteOperationSpec
232
+ );
233
+ }
234
+
235
+ /**
236
+ * Create or update a Capability resource that extends a Target resource.
237
+ * @param resourceGroupName String that represents an Azure resource group.
238
+ * @param parentProviderNamespace String that represents a resource provider namespace.
239
+ * @param parentResourceType String that represents a resource type.
240
+ * @param parentResourceName String that represents a resource name.
241
+ * @param targetName String that represents a Target resource name.
242
+ * @param capabilityName String that represents a Capability resource name.
243
+ * @param capability Capability resource to be created or updated.
244
+ * @param options The options parameters.
245
+ */
246
+ createOrUpdate(
247
+ resourceGroupName: string,
248
+ parentProviderNamespace: string,
249
+ parentResourceType: string,
250
+ parentResourceName: string,
251
+ targetName: string,
252
+ capabilityName: string,
253
+ capability: Capability,
254
+ options?: CapabilitiesCreateOrUpdateOptionalParams
255
+ ): Promise<CapabilitiesCreateOrUpdateResponse> {
256
+ return this.client.sendOperationRequest(
257
+ {
258
+ resourceGroupName,
259
+ parentProviderNamespace,
260
+ parentResourceType,
261
+ parentResourceName,
262
+ targetName,
263
+ capabilityName,
264
+ capability,
265
+ options
266
+ },
267
+ createOrUpdateOperationSpec
268
+ );
269
+ }
270
+
271
+ /**
272
+ * ListNext
273
+ * @param resourceGroupName String that represents an Azure resource group.
274
+ * @param parentProviderNamespace String that represents a resource provider namespace.
275
+ * @param parentResourceType String that represents a resource type.
276
+ * @param parentResourceName String that represents a resource name.
277
+ * @param targetName String that represents a Target resource name.
278
+ * @param nextLink The nextLink from the previous successful call to the List method.
279
+ * @param options The options parameters.
280
+ */
281
+ private _listNext(
282
+ resourceGroupName: string,
283
+ parentProviderNamespace: string,
284
+ parentResourceType: string,
285
+ parentResourceName: string,
286
+ targetName: string,
287
+ nextLink: string,
288
+ options?: CapabilitiesListNextOptionalParams
289
+ ): Promise<CapabilitiesListNextResponse> {
290
+ return this.client.sendOperationRequest(
291
+ {
292
+ resourceGroupName,
293
+ parentProviderNamespace,
294
+ parentResourceType,
295
+ parentResourceName,
296
+ targetName,
297
+ nextLink,
298
+ options
299
+ },
300
+ listNextOperationSpec
301
+ );
302
+ }
303
+ }
304
+ // Operation Specifications
305
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
306
+
307
+ const listOperationSpec: coreClient.OperationSpec = {
308
+ path:
309
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities",
310
+ httpMethod: "GET",
311
+ responses: {
312
+ 200: {
313
+ bodyMapper: Mappers.CapabilityListResult
314
+ },
315
+ default: {
316
+ bodyMapper: Mappers.ErrorResponse
317
+ }
318
+ },
319
+ queryParameters: [Parameters.apiVersion, Parameters.continuationToken],
320
+ urlParameters: [
321
+ Parameters.$host,
322
+ Parameters.subscriptionId,
323
+ Parameters.resourceGroupName,
324
+ Parameters.parentProviderNamespace,
325
+ Parameters.parentResourceType,
326
+ Parameters.parentResourceName,
327
+ Parameters.targetName
328
+ ],
329
+ headerParameters: [Parameters.accept],
330
+ serializer
331
+ };
332
+ const getOperationSpec: coreClient.OperationSpec = {
333
+ path:
334
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities/{capabilityName}",
335
+ httpMethod: "GET",
336
+ responses: {
337
+ 200: {
338
+ bodyMapper: Mappers.Capability
339
+ },
340
+ default: {
341
+ bodyMapper: Mappers.ErrorResponse
342
+ }
343
+ },
344
+ queryParameters: [Parameters.apiVersion],
345
+ urlParameters: [
346
+ Parameters.$host,
347
+ Parameters.subscriptionId,
348
+ Parameters.resourceGroupName,
349
+ Parameters.parentProviderNamespace,
350
+ Parameters.parentResourceType,
351
+ Parameters.parentResourceName,
352
+ Parameters.targetName,
353
+ Parameters.capabilityName
354
+ ],
355
+ headerParameters: [Parameters.accept],
356
+ serializer
357
+ };
358
+ const deleteOperationSpec: coreClient.OperationSpec = {
359
+ path:
360
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities/{capabilityName}",
361
+ httpMethod: "DELETE",
362
+ responses: {
363
+ 200: {},
364
+ 204: {},
365
+ default: {
366
+ bodyMapper: Mappers.ErrorResponse
367
+ }
368
+ },
369
+ queryParameters: [Parameters.apiVersion],
370
+ urlParameters: [
371
+ Parameters.$host,
372
+ Parameters.subscriptionId,
373
+ Parameters.resourceGroupName,
374
+ Parameters.parentProviderNamespace,
375
+ Parameters.parentResourceType,
376
+ Parameters.parentResourceName,
377
+ Parameters.targetName,
378
+ Parameters.capabilityName
379
+ ],
380
+ headerParameters: [Parameters.accept],
381
+ serializer
382
+ };
383
+ const createOrUpdateOperationSpec: coreClient.OperationSpec = {
384
+ path:
385
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities/{capabilityName}",
386
+ httpMethod: "PUT",
387
+ responses: {
388
+ 200: {
389
+ bodyMapper: Mappers.Capability
390
+ },
391
+ default: {
392
+ bodyMapper: Mappers.ErrorResponse
393
+ }
394
+ },
395
+ requestBody: Parameters.capability,
396
+ queryParameters: [Parameters.apiVersion],
397
+ urlParameters: [
398
+ Parameters.$host,
399
+ Parameters.subscriptionId,
400
+ Parameters.resourceGroupName,
401
+ Parameters.parentProviderNamespace,
402
+ Parameters.parentResourceType,
403
+ Parameters.parentResourceName,
404
+ Parameters.targetName,
405
+ Parameters.capabilityName
406
+ ],
407
+ headerParameters: [Parameters.accept, Parameters.contentType],
408
+ mediaType: "json",
409
+ serializer
410
+ };
411
+ const listNextOperationSpec: coreClient.OperationSpec = {
412
+ path: "{nextLink}",
413
+ httpMethod: "GET",
414
+ responses: {
415
+ 200: {
416
+ bodyMapper: Mappers.CapabilityListResult
417
+ },
418
+ default: {
419
+ bodyMapper: Mappers.ErrorResponse
420
+ }
421
+ },
422
+ queryParameters: [Parameters.apiVersion, Parameters.continuationToken],
423
+ urlParameters: [
424
+ Parameters.$host,
425
+ Parameters.subscriptionId,
426
+ Parameters.resourceGroupName,
427
+ Parameters.parentProviderNamespace,
428
+ Parameters.parentResourceType,
429
+ Parameters.parentResourceName,
430
+ Parameters.targetName,
431
+ Parameters.nextLink
432
+ ],
433
+ headerParameters: [Parameters.accept],
434
+ serializer
435
+ };
@@ -0,0 +1,221 @@
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 { CapabilityTypes } 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 { ChaosManagementClient } from "../chaosManagementClient";
15
+ import {
16
+ CapabilityType,
17
+ CapabilityTypesListNextOptionalParams,
18
+ CapabilityTypesListOptionalParams,
19
+ CapabilityTypesListResponse,
20
+ CapabilityTypesGetOptionalParams,
21
+ CapabilityTypesGetResponse,
22
+ CapabilityTypesListNextResponse
23
+ } from "../models";
24
+
25
+ /// <reference lib="esnext.asynciterable" />
26
+ /** Class containing CapabilityTypes operations. */
27
+ export class CapabilityTypesImpl implements CapabilityTypes {
28
+ private readonly client: ChaosManagementClient;
29
+
30
+ /**
31
+ * Initialize a new instance of the class CapabilityTypes class.
32
+ * @param client Reference to the service client
33
+ */
34
+ constructor(client: ChaosManagementClient) {
35
+ this.client = client;
36
+ }
37
+
38
+ /**
39
+ * Get a list of Capability Type resources for given Target Type and location.
40
+ * @param locationName String that represents a Location resource name.
41
+ * @param targetTypeName String that represents a Target Type resource name.
42
+ * @param options The options parameters.
43
+ */
44
+ public list(
45
+ locationName: string,
46
+ targetTypeName: string,
47
+ options?: CapabilityTypesListOptionalParams
48
+ ): PagedAsyncIterableIterator<CapabilityType> {
49
+ const iter = this.listPagingAll(locationName, targetTypeName, options);
50
+ return {
51
+ next() {
52
+ return iter.next();
53
+ },
54
+ [Symbol.asyncIterator]() {
55
+ return this;
56
+ },
57
+ byPage: () => {
58
+ return this.listPagingPage(locationName, targetTypeName, options);
59
+ }
60
+ };
61
+ }
62
+
63
+ private async *listPagingPage(
64
+ locationName: string,
65
+ targetTypeName: string,
66
+ options?: CapabilityTypesListOptionalParams
67
+ ): AsyncIterableIterator<CapabilityType[]> {
68
+ let result = await this._list(locationName, targetTypeName, options);
69
+ yield result.value || [];
70
+ let continuationToken = result.nextLink;
71
+ while (continuationToken) {
72
+ result = await this._listNext(
73
+ locationName,
74
+ targetTypeName,
75
+ continuationToken,
76
+ options
77
+ );
78
+ continuationToken = result.nextLink;
79
+ yield result.value || [];
80
+ }
81
+ }
82
+
83
+ private async *listPagingAll(
84
+ locationName: string,
85
+ targetTypeName: string,
86
+ options?: CapabilityTypesListOptionalParams
87
+ ): AsyncIterableIterator<CapabilityType> {
88
+ for await (const page of this.listPagingPage(
89
+ locationName,
90
+ targetTypeName,
91
+ options
92
+ )) {
93
+ yield* page;
94
+ }
95
+ }
96
+
97
+ /**
98
+ * Get a list of Capability Type resources for given Target Type and location.
99
+ * @param locationName String that represents a Location resource name.
100
+ * @param targetTypeName String that represents a Target Type resource name.
101
+ * @param options The options parameters.
102
+ */
103
+ private _list(
104
+ locationName: string,
105
+ targetTypeName: string,
106
+ options?: CapabilityTypesListOptionalParams
107
+ ): Promise<CapabilityTypesListResponse> {
108
+ return this.client.sendOperationRequest(
109
+ { locationName, targetTypeName, options },
110
+ listOperationSpec
111
+ );
112
+ }
113
+
114
+ /**
115
+ * Get a Capability Type resource for given Target Type and location.
116
+ * @param locationName String that represents a Location resource name.
117
+ * @param targetTypeName String that represents a Target Type resource name.
118
+ * @param capabilityTypeName String that represents a Capability Type resource name.
119
+ * @param options The options parameters.
120
+ */
121
+ get(
122
+ locationName: string,
123
+ targetTypeName: string,
124
+ capabilityTypeName: string,
125
+ options?: CapabilityTypesGetOptionalParams
126
+ ): Promise<CapabilityTypesGetResponse> {
127
+ return this.client.sendOperationRequest(
128
+ { locationName, targetTypeName, capabilityTypeName, options },
129
+ getOperationSpec
130
+ );
131
+ }
132
+
133
+ /**
134
+ * ListNext
135
+ * @param locationName String that represents a Location resource name.
136
+ * @param targetTypeName String that represents a Target Type resource name.
137
+ * @param nextLink The nextLink from the previous successful call to the List method.
138
+ * @param options The options parameters.
139
+ */
140
+ private _listNext(
141
+ locationName: string,
142
+ targetTypeName: string,
143
+ nextLink: string,
144
+ options?: CapabilityTypesListNextOptionalParams
145
+ ): Promise<CapabilityTypesListNextResponse> {
146
+ return this.client.sendOperationRequest(
147
+ { locationName, targetTypeName, nextLink, options },
148
+ listNextOperationSpec
149
+ );
150
+ }
151
+ }
152
+ // Operation Specifications
153
+ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
154
+
155
+ const listOperationSpec: coreClient.OperationSpec = {
156
+ path:
157
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetTypeName}/capabilityTypes",
158
+ httpMethod: "GET",
159
+ responses: {
160
+ 200: {
161
+ bodyMapper: Mappers.CapabilityTypeListResult
162
+ },
163
+ default: {
164
+ bodyMapper: Mappers.ErrorResponse
165
+ }
166
+ },
167
+ queryParameters: [Parameters.apiVersion, Parameters.continuationToken],
168
+ urlParameters: [
169
+ Parameters.$host,
170
+ Parameters.subscriptionId,
171
+ Parameters.locationName,
172
+ Parameters.targetTypeName
173
+ ],
174
+ headerParameters: [Parameters.accept],
175
+ serializer
176
+ };
177
+ const getOperationSpec: coreClient.OperationSpec = {
178
+ path:
179
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{locationName}/targetTypes/{targetTypeName}/capabilityTypes/{capabilityTypeName}",
180
+ httpMethod: "GET",
181
+ responses: {
182
+ 200: {
183
+ bodyMapper: Mappers.CapabilityType
184
+ },
185
+ default: {
186
+ bodyMapper: Mappers.ErrorResponse
187
+ }
188
+ },
189
+ queryParameters: [Parameters.apiVersion],
190
+ urlParameters: [
191
+ Parameters.$host,
192
+ Parameters.subscriptionId,
193
+ Parameters.locationName,
194
+ Parameters.targetTypeName,
195
+ Parameters.capabilityTypeName
196
+ ],
197
+ headerParameters: [Parameters.accept],
198
+ serializer
199
+ };
200
+ const listNextOperationSpec: coreClient.OperationSpec = {
201
+ path: "{nextLink}",
202
+ httpMethod: "GET",
203
+ responses: {
204
+ 200: {
205
+ bodyMapper: Mappers.CapabilityTypeListResult
206
+ },
207
+ default: {
208
+ bodyMapper: Mappers.ErrorResponse
209
+ }
210
+ },
211
+ queryParameters: [Parameters.apiVersion, Parameters.continuationToken],
212
+ urlParameters: [
213
+ Parameters.$host,
214
+ Parameters.subscriptionId,
215
+ Parameters.nextLink,
216
+ Parameters.locationName,
217
+ Parameters.targetTypeName
218
+ ],
219
+ headerParameters: [Parameters.accept],
220
+ serializer
221
+ };