azure_mgmt_cdn 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/LICENSE.txt +21 -0
  4. data/Rakefile +5 -0
  5. data/azure_mgmt_cdn.gemspec +34 -0
  6. data/lib/azure_mgmt_cdn.rb +77 -0
  7. data/lib/azure_mgmt_cdn/cdn_management_client.rb +87 -0
  8. data/lib/azure_mgmt_cdn/custom_domains.rb +482 -0
  9. data/lib/azure_mgmt_cdn/endpoints.rb +940 -0
  10. data/lib/azure_mgmt_cdn/models/check_name_availability_input.rb +66 -0
  11. data/lib/azure_mgmt_cdn/models/check_name_availability_output.rb +75 -0
  12. data/lib/azure_mgmt_cdn/models/custom_domain.rb +82 -0
  13. data/lib/azure_mgmt_cdn/models/custom_domain_list_result.rb +77 -0
  14. data/lib/azure_mgmt_cdn/models/custom_domain_parameters.rb +62 -0
  15. data/lib/azure_mgmt_cdn/models/custom_domain_properties.rb +84 -0
  16. data/lib/azure_mgmt_cdn/models/custom_domain_properties_parameters.rb +56 -0
  17. data/lib/azure_mgmt_cdn/models/custom_domain_resource_state.rb +17 -0
  18. data/lib/azure_mgmt_cdn/models/deep_created_origin.rb +72 -0
  19. data/lib/azure_mgmt_cdn/models/deep_created_origin_properties.rb +78 -0
  20. data/lib/azure_mgmt_cdn/models/endpoint.rb +95 -0
  21. data/lib/azure_mgmt_cdn/models/endpoint_create_parameters.rb +82 -0
  22. data/lib/azure_mgmt_cdn/models/endpoint_list_result.rb +76 -0
  23. data/lib/azure_mgmt_cdn/models/endpoint_properties.rb +197 -0
  24. data/lib/azure_mgmt_cdn/models/endpoint_properties_create_parameters.rb +160 -0
  25. data/lib/azure_mgmt_cdn/models/endpoint_properties_update_parameters.rb +127 -0
  26. data/lib/azure_mgmt_cdn/models/endpoint_resource_state.rb +20 -0
  27. data/lib/azure_mgmt_cdn/models/endpoint_update_parameters.rb +72 -0
  28. data/lib/azure_mgmt_cdn/models/error_response.rb +65 -0
  29. data/lib/azure_mgmt_cdn/models/load_parameters.rb +58 -0
  30. data/lib/azure_mgmt_cdn/models/operation.rb +71 -0
  31. data/lib/azure_mgmt_cdn/models/operation_display.rb +75 -0
  32. data/lib/azure_mgmt_cdn/models/operation_list_result.rb +77 -0
  33. data/lib/azure_mgmt_cdn/models/origin.rb +83 -0
  34. data/lib/azure_mgmt_cdn/models/origin_list_result.rb +76 -0
  35. data/lib/azure_mgmt_cdn/models/origin_parameters.rb +62 -0
  36. data/lib/azure_mgmt_cdn/models/origin_properties.rb +106 -0
  37. data/lib/azure_mgmt_cdn/models/origin_properties_parameters.rb +78 -0
  38. data/lib/azure_mgmt_cdn/models/origin_resource_state.rb +17 -0
  39. data/lib/azure_mgmt_cdn/models/profile.rb +95 -0
  40. data/lib/azure_mgmt_cdn/models/profile_create_parameters.rb +82 -0
  41. data/lib/azure_mgmt_cdn/models/profile_list_result.rb +76 -0
  42. data/lib/azure_mgmt_cdn/models/profile_properties.rb +90 -0
  43. data/lib/azure_mgmt_cdn/models/profile_properties_create_parameters.rb +63 -0
  44. data/lib/azure_mgmt_cdn/models/profile_resource_state.rb +18 -0
  45. data/lib/azure_mgmt_cdn/models/profile_update_parameters.rb +57 -0
  46. data/lib/azure_mgmt_cdn/models/provisioning_state.rb +17 -0
  47. data/lib/azure_mgmt_cdn/models/purge_parameters.rb +58 -0
  48. data/lib/azure_mgmt_cdn/models/query_string_caching_behavior.rb +18 -0
  49. data/lib/azure_mgmt_cdn/models/sku.rb +60 -0
  50. data/lib/azure_mgmt_cdn/models/sku_name.rb +16 -0
  51. data/lib/azure_mgmt_cdn/models/sso_uri.rb +56 -0
  52. data/lib/azure_mgmt_cdn/models/tracked_resource.rb +85 -0
  53. data/lib/azure_mgmt_cdn/models/validate_custom_domain_input.rb +56 -0
  54. data/lib/azure_mgmt_cdn/models/validate_custom_domain_output.rb +75 -0
  55. data/lib/azure_mgmt_cdn/module_definition.rb +8 -0
  56. data/lib/azure_mgmt_cdn/name_availability.rb +101 -0
  57. data/lib/azure_mgmt_cdn/operations.rb +87 -0
  58. data/lib/azure_mgmt_cdn/origins.rb +533 -0
  59. data/lib/azure_mgmt_cdn/profiles.rb +607 -0
  60. data/lib/azure_mgmt_cdn/version.rb +8 -0
  61. metadata +172 -0
@@ -0,0 +1,940 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.16.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::CDN
7
+ #
8
+ # Use these APIs to manage Azure CDN resources through the Azure Resource
9
+ # Manager. You must make sure that requests made to these resources are
10
+ # secure. For more information, see <a
11
+ # href="https://msdn.microsoft.com/en-us/library/azure/dn790557.aspx">Authenticating
12
+ # Azure Resource Manager requests.</a>
13
+ #
14
+ class Endpoints
15
+ include Azure::ARM::CDN::Models
16
+ include MsRestAzure
17
+
18
+ #
19
+ # Creates and initializes a new instance of the Endpoints class.
20
+ # @param client service class for accessing basic functionality.
21
+ #
22
+ def initialize(client)
23
+ @client = client
24
+ end
25
+
26
+ # @return reference to the CdnManagementClient
27
+ attr_reader :client
28
+
29
+ #
30
+ # Lists existing CDN endpoints within a profile
31
+ #
32
+ # @param profile_name [String] Name of the CDN profile within the resource
33
+ # group
34
+ # @param resource_group_name [String] Name of the resource group within the
35
+ # Azure subscription
36
+ # @param [Hash{String => String}] The hash of custom headers need to be
37
+ # applied to HTTP request.
38
+ #
39
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
40
+ # response.
41
+ #
42
+ def list_by_profile(profile_name, resource_group_name, custom_headers = nil)
43
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
44
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
45
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
46
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
47
+ request_headers = {}
48
+
49
+ # Set Headers
50
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
51
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
52
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints'
53
+ options = {
54
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
55
+ path_params: {'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
56
+ query_params: {'api-version' => @client.api_version},
57
+ headers: request_headers.merge(custom_headers || {})
58
+ }
59
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :get, options)
60
+ promise = request.run_promise do |req|
61
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
62
+ end
63
+
64
+ promise = promise.then do |http_response|
65
+ status_code = http_response.status
66
+ response_content = http_response.body
67
+ unless status_code == 200
68
+ error_model = JSON.load(response_content)
69
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
70
+ end
71
+
72
+ # Create Result
73
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
74
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
75
+ # Deserialize Response
76
+ if status_code == 200
77
+ begin
78
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
79
+ unless parsed_response.nil?
80
+ parsed_response = EndpointListResult.deserialize_object(parsed_response)
81
+ end
82
+ result.body = parsed_response
83
+ rescue Exception => e
84
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
85
+ end
86
+ end
87
+
88
+ result
89
+ end
90
+
91
+ promise.execute
92
+ end
93
+
94
+ #
95
+ # Gets an existing CDN endpoint with the specified parameters
96
+ #
97
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
98
+ # @param profile_name [String] Name of the CDN profile within the resource
99
+ # group
100
+ # @param resource_group_name [String] Name of the resource group within the
101
+ # Azure subscription
102
+ # @param [Hash{String => String}] The hash of custom headers need to be
103
+ # applied to HTTP request.
104
+ #
105
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
106
+ # response.
107
+ #
108
+ def get(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
109
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
110
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
111
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
112
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
113
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
114
+ request_headers = {}
115
+
116
+ # Set Headers
117
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
118
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
119
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}'
120
+ options = {
121
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
122
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
123
+ query_params: {'api-version' => @client.api_version},
124
+ headers: request_headers.merge(custom_headers || {})
125
+ }
126
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :get, options)
127
+ promise = request.run_promise do |req|
128
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
129
+ end
130
+
131
+ promise = promise.then do |http_response|
132
+ status_code = http_response.status
133
+ response_content = http_response.body
134
+ unless status_code == 200
135
+ error_model = JSON.load(response_content)
136
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
137
+ end
138
+
139
+ # Create Result
140
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
141
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
142
+ # Deserialize Response
143
+ if status_code == 200
144
+ begin
145
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
146
+ unless parsed_response.nil?
147
+ parsed_response = Endpoint.deserialize_object(parsed_response)
148
+ end
149
+ result.body = parsed_response
150
+ rescue Exception => e
151
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
152
+ end
153
+ end
154
+
155
+ result
156
+ end
157
+
158
+ promise.execute
159
+ end
160
+
161
+ #
162
+ # Creates a new CDN endpoint with the specified parameters
163
+ #
164
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
165
+ # @param endpoint_properties [EndpointCreateParameters] Endpoint properties
166
+ # @param profile_name [String] Name of the CDN profile within the resource
167
+ # group
168
+ # @param resource_group_name [String] Name of the resource group within the
169
+ # Azure subscription
170
+ # @param @client.subscription_id [String] Azure Subscription ID
171
+ # @param @client.api_version [String] Version of the API to be used with the
172
+ # client request, current version is 2015-06-01
173
+ # @param @client.accept_language [String] Gets or sets the preferred language
174
+ # for the response.
175
+ #
176
+ # @return [Concurrent::Promise] promise which provides async access to http
177
+ # response.
178
+ #
179
+ def create(endpoint_name, endpoint_properties, profile_name, resource_group_name, custom_headers = nil)
180
+ # Send request
181
+ promise = begin_create(endpoint_name, endpoint_properties, profile_name, resource_group_name, custom_headers)
182
+
183
+ promise = promise.then do |response|
184
+ # Defining deserialization method.
185
+ deserialize_method = lambda do |parsed_response|
186
+ unless parsed_response.nil?
187
+ parsed_response = Endpoint.deserialize_object(parsed_response)
188
+ end
189
+ end
190
+
191
+ # Waiting for response.
192
+ @client.get_put_operation_result(response, deserialize_method)
193
+ end
194
+
195
+ promise
196
+ end
197
+
198
+ #
199
+ # Creates a new CDN endpoint with the specified parameters
200
+ #
201
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
202
+ # @param endpoint_properties [EndpointCreateParameters] Endpoint properties
203
+ # @param profile_name [String] Name of the CDN profile within the resource
204
+ # group
205
+ # @param resource_group_name [String] Name of the resource group within the
206
+ # Azure subscription
207
+ # @param [Hash{String => String}] The hash of custom headers need to be
208
+ # applied to HTTP request.
209
+ #
210
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
211
+ # response.
212
+ #
213
+ def begin_create(endpoint_name, endpoint_properties, profile_name, resource_group_name, custom_headers = nil)
214
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
215
+ fail ArgumentError, 'endpoint_properties is nil' if endpoint_properties.nil?
216
+ endpoint_properties.validate unless endpoint_properties.nil?
217
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
218
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
219
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
220
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
221
+ request_headers = {}
222
+
223
+ # Set Headers
224
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
225
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
226
+
227
+ # Serialize Request
228
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
229
+ unless endpoint_properties.nil?
230
+ endpoint_properties = EndpointCreateParameters.serialize_object(endpoint_properties)
231
+ end
232
+ request_content = JSON.generate(endpoint_properties, quirks_mode: true)
233
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}'
234
+ options = {
235
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
236
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
237
+ query_params: {'api-version' => @client.api_version},
238
+ body: request_content,
239
+ headers: request_headers.merge(custom_headers || {})
240
+ }
241
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :put, options)
242
+ promise = request.run_promise do |req|
243
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
244
+ end
245
+
246
+ promise = promise.then do |http_response|
247
+ status_code = http_response.status
248
+ response_content = http_response.body
249
+ unless status_code == 201 || status_code == 202
250
+ error_model = JSON.load(response_content)
251
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
252
+ end
253
+
254
+ # Create Result
255
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
256
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
257
+ # Deserialize Response
258
+ if status_code == 201
259
+ begin
260
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
261
+ unless parsed_response.nil?
262
+ parsed_response = Endpoint.deserialize_object(parsed_response)
263
+ end
264
+ result.body = parsed_response
265
+ rescue Exception => e
266
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
267
+ end
268
+ end
269
+ # Deserialize Response
270
+ if status_code == 202
271
+ begin
272
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
273
+ unless parsed_response.nil?
274
+ parsed_response = Endpoint.deserialize_object(parsed_response)
275
+ end
276
+ result.body = parsed_response
277
+ rescue Exception => e
278
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
279
+ end
280
+ end
281
+
282
+ result
283
+ end
284
+
285
+ promise.execute
286
+ end
287
+
288
+ #
289
+ # Updates an existing CDN endpoint with the specified parameters. Only tags
290
+ # and OriginHostHeader can be updated after creating an endpoint. To update
291
+ # origins, use the Update Origin operation. To update custom domains, use the
292
+ # Update Custom Domain operation.
293
+ #
294
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
295
+ # @param endpoint_properties [EndpointUpdateParameters] Endpoint properties
296
+ # @param profile_name [String] Name of the CDN profile within the resource
297
+ # group
298
+ # @param resource_group_name [String] Name of the resource group within the
299
+ # Azure subscription
300
+ # @param @client.subscription_id [String] Azure Subscription ID
301
+ # @param @client.api_version [String] Version of the API to be used with the
302
+ # client request, current version is 2015-06-01
303
+ # @param @client.accept_language [String] Gets or sets the preferred language
304
+ # for the response.
305
+ #
306
+ # @return [Concurrent::Promise] promise which provides async access to http
307
+ # response.
308
+ #
309
+ def update(endpoint_name, endpoint_properties, profile_name, resource_group_name, custom_headers = nil)
310
+ # Send request
311
+ promise = begin_update(endpoint_name, endpoint_properties, profile_name, resource_group_name, custom_headers)
312
+
313
+ promise = promise.then do |response|
314
+ # Defining deserialization method.
315
+ deserialize_method = lambda do |parsed_response|
316
+ unless parsed_response.nil?
317
+ parsed_response = Endpoint.deserialize_object(parsed_response)
318
+ end
319
+ end
320
+
321
+ # Waiting for response.
322
+ @client.get_put_operation_result(response, deserialize_method)
323
+ end
324
+
325
+ promise
326
+ end
327
+
328
+ #
329
+ # Updates an existing CDN endpoint with the specified parameters. Only tags
330
+ # and OriginHostHeader can be updated after creating an endpoint. To update
331
+ # origins, use the Update Origin operation. To update custom domains, use the
332
+ # Update Custom Domain operation.
333
+ #
334
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
335
+ # @param endpoint_properties [EndpointUpdateParameters] Endpoint properties
336
+ # @param profile_name [String] Name of the CDN profile within the resource
337
+ # group
338
+ # @param resource_group_name [String] Name of the resource group within the
339
+ # Azure subscription
340
+ # @param [Hash{String => String}] The hash of custom headers need to be
341
+ # applied to HTTP request.
342
+ #
343
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
344
+ # response.
345
+ #
346
+ def begin_update(endpoint_name, endpoint_properties, profile_name, resource_group_name, custom_headers = nil)
347
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
348
+ fail ArgumentError, 'endpoint_properties is nil' if endpoint_properties.nil?
349
+ endpoint_properties.validate unless endpoint_properties.nil?
350
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
351
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
352
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
353
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
354
+ request_headers = {}
355
+
356
+ # Set Headers
357
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
358
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
359
+
360
+ # Serialize Request
361
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
362
+ unless endpoint_properties.nil?
363
+ endpoint_properties = EndpointUpdateParameters.serialize_object(endpoint_properties)
364
+ end
365
+ request_content = JSON.generate(endpoint_properties, quirks_mode: true)
366
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}'
367
+ options = {
368
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
369
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
370
+ query_params: {'api-version' => @client.api_version},
371
+ body: request_content,
372
+ headers: request_headers.merge(custom_headers || {})
373
+ }
374
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :patch, options)
375
+ promise = request.run_promise do |req|
376
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
377
+ end
378
+
379
+ promise = promise.then do |http_response|
380
+ status_code = http_response.status
381
+ response_content = http_response.body
382
+ unless status_code == 200 || status_code == 202
383
+ error_model = JSON.load(response_content)
384
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
385
+ end
386
+
387
+ # Create Result
388
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
389
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
390
+ # Deserialize Response
391
+ if status_code == 200
392
+ begin
393
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
394
+ unless parsed_response.nil?
395
+ parsed_response = Endpoint.deserialize_object(parsed_response)
396
+ end
397
+ result.body = parsed_response
398
+ rescue Exception => e
399
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
400
+ end
401
+ end
402
+ # Deserialize Response
403
+ if status_code == 202
404
+ begin
405
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
406
+ unless parsed_response.nil?
407
+ parsed_response = Endpoint.deserialize_object(parsed_response)
408
+ end
409
+ result.body = parsed_response
410
+ rescue Exception => e
411
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
412
+ end
413
+ end
414
+
415
+ result
416
+ end
417
+
418
+ promise.execute
419
+ end
420
+
421
+ #
422
+ # deletes an existing CDN endpoint with the specified parameters
423
+ #
424
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
425
+ # @param profile_name [String] Name of the CDN profile within the resource
426
+ # group
427
+ # @param resource_group_name [String] Name of the resource group within the
428
+ # Azure subscription
429
+ # @return [Concurrent::Promise] promise which provides async access to http
430
+ # response.
431
+ #
432
+ def delete_if_exists(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
433
+ # Send request
434
+ promise = begin_delete_if_exists(endpoint_name, profile_name, resource_group_name, custom_headers)
435
+
436
+ promise = promise.then do |response|
437
+ # Defining deserialization method.
438
+ deserialize_method = lambda do |parsed_response|
439
+ end
440
+
441
+ # Waiting for response.
442
+ @client.get_post_or_delete_operation_result(response, deserialize_method)
443
+ end
444
+
445
+ promise
446
+ end
447
+
448
+ #
449
+ # deletes an existing CDN endpoint with the specified parameters
450
+ #
451
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
452
+ # @param profile_name [String] Name of the CDN profile within the resource
453
+ # group
454
+ # @param resource_group_name [String] Name of the resource group within the
455
+ # Azure subscription
456
+ # @param [Hash{String => String}] The hash of custom headers need to be
457
+ # applied to HTTP request.
458
+ #
459
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
460
+ # response.
461
+ #
462
+ def begin_delete_if_exists(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
463
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
464
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
465
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
466
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
467
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
468
+ request_headers = {}
469
+
470
+ # Set Headers
471
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
472
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
473
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}'
474
+ options = {
475
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
476
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
477
+ query_params: {'api-version' => @client.api_version},
478
+ headers: request_headers.merge(custom_headers || {})
479
+ }
480
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :delete, options)
481
+ promise = request.run_promise do |req|
482
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
483
+ end
484
+
485
+ promise = promise.then do |http_response|
486
+ status_code = http_response.status
487
+ response_content = http_response.body
488
+ unless status_code == 202 || status_code == 204
489
+ error_model = JSON.load(response_content)
490
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
491
+ end
492
+
493
+ # Create Result
494
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
495
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
496
+
497
+ result
498
+ end
499
+
500
+ promise.execute
501
+ end
502
+
503
+ #
504
+ # Starts an existing stopped CDN endpoint
505
+ #
506
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
507
+ # @param profile_name [String] Name of the CDN profile within the resource
508
+ # group
509
+ # @param resource_group_name [String] Name of the resource group within the
510
+ # Azure subscription
511
+ # @return [Concurrent::Promise] promise which provides async access to http
512
+ # response.
513
+ #
514
+ def start(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
515
+ # Send request
516
+ promise = begin_start(endpoint_name, profile_name, resource_group_name, custom_headers)
517
+
518
+ promise = promise.then do |response|
519
+ # Defining deserialization method.
520
+ deserialize_method = lambda do |parsed_response|
521
+ end
522
+
523
+ # Waiting for response.
524
+ @client.get_post_or_delete_operation_result(response, deserialize_method)
525
+ end
526
+
527
+ promise
528
+ end
529
+
530
+ #
531
+ # Starts an existing stopped CDN endpoint
532
+ #
533
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
534
+ # @param profile_name [String] Name of the CDN profile within the resource
535
+ # group
536
+ # @param resource_group_name [String] Name of the resource group within the
537
+ # Azure subscription
538
+ # @param [Hash{String => String}] The hash of custom headers need to be
539
+ # applied to HTTP request.
540
+ #
541
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
542
+ # response.
543
+ #
544
+ def begin_start(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
545
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
546
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
547
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
548
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
549
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
550
+ request_headers = {}
551
+
552
+ # Set Headers
553
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
554
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
555
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/start'
556
+ options = {
557
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
558
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
559
+ query_params: {'api-version' => @client.api_version},
560
+ headers: request_headers.merge(custom_headers || {})
561
+ }
562
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :post, options)
563
+ promise = request.run_promise do |req|
564
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
565
+ end
566
+
567
+ promise = promise.then do |http_response|
568
+ status_code = http_response.status
569
+ response_content = http_response.body
570
+ unless status_code == 202
571
+ error_model = JSON.load(response_content)
572
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
573
+ end
574
+
575
+ # Create Result
576
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
577
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
578
+
579
+ result
580
+ end
581
+
582
+ promise.execute
583
+ end
584
+
585
+ #
586
+ # Stops an existing running CDN endpoint
587
+ #
588
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
589
+ # @param profile_name [String] Name of the CDN profile within the resource
590
+ # group
591
+ # @param resource_group_name [String] Name of the resource group within the
592
+ # Azure subscription
593
+ # @return [Concurrent::Promise] promise which provides async access to http
594
+ # response.
595
+ #
596
+ def stop(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
597
+ # Send request
598
+ promise = begin_stop(endpoint_name, profile_name, resource_group_name, custom_headers)
599
+
600
+ promise = promise.then do |response|
601
+ # Defining deserialization method.
602
+ deserialize_method = lambda do |parsed_response|
603
+ end
604
+
605
+ # Waiting for response.
606
+ @client.get_post_or_delete_operation_result(response, deserialize_method)
607
+ end
608
+
609
+ promise
610
+ end
611
+
612
+ #
613
+ # Stops an existing running CDN endpoint
614
+ #
615
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
616
+ # @param profile_name [String] Name of the CDN profile within the resource
617
+ # group
618
+ # @param resource_group_name [String] Name of the resource group within the
619
+ # Azure subscription
620
+ # @param [Hash{String => String}] The hash of custom headers need to be
621
+ # applied to HTTP request.
622
+ #
623
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
624
+ # response.
625
+ #
626
+ def begin_stop(endpoint_name, profile_name, resource_group_name, custom_headers = nil)
627
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
628
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
629
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
630
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
631
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
632
+ request_headers = {}
633
+
634
+ # Set Headers
635
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
636
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
637
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/stop'
638
+ options = {
639
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
640
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
641
+ query_params: {'api-version' => @client.api_version},
642
+ headers: request_headers.merge(custom_headers || {})
643
+ }
644
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :post, options)
645
+ promise = request.run_promise do |req|
646
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
647
+ end
648
+
649
+ promise = promise.then do |http_response|
650
+ status_code = http_response.status
651
+ response_content = http_response.body
652
+ unless status_code == 202
653
+ error_model = JSON.load(response_content)
654
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
655
+ end
656
+
657
+ # Create Result
658
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
659
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
660
+
661
+ result
662
+ end
663
+
664
+ promise.execute
665
+ end
666
+
667
+ #
668
+ # Forcibly purges CDN endpoint content
669
+ #
670
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
671
+ # @param content_file_paths [PurgeParameters] The path to the content to be
672
+ # purged. Path can describe a file or directory.
673
+ # @param profile_name [String] Name of the CDN profile within the resource
674
+ # group
675
+ # @param resource_group_name [String] Name of the resource group within the
676
+ # Azure subscription
677
+ # @return [Concurrent::Promise] promise which provides async access to http
678
+ # response.
679
+ #
680
+ def purge_content(endpoint_name, content_file_paths, profile_name, resource_group_name, custom_headers = nil)
681
+ # Send request
682
+ promise = begin_purge_content(endpoint_name, content_file_paths, profile_name, resource_group_name, custom_headers)
683
+
684
+ promise = promise.then do |response|
685
+ # Defining deserialization method.
686
+ deserialize_method = lambda do |parsed_response|
687
+ end
688
+
689
+ # Waiting for response.
690
+ @client.get_post_or_delete_operation_result(response, deserialize_method)
691
+ end
692
+
693
+ promise
694
+ end
695
+
696
+ #
697
+ # Forcibly purges CDN endpoint content
698
+ #
699
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
700
+ # @param content_file_paths [PurgeParameters] The path to the content to be
701
+ # purged. Path can describe a file or directory.
702
+ # @param profile_name [String] Name of the CDN profile within the resource
703
+ # group
704
+ # @param resource_group_name [String] Name of the resource group within the
705
+ # Azure subscription
706
+ # @param [Hash{String => String}] The hash of custom headers need to be
707
+ # applied to HTTP request.
708
+ #
709
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
710
+ # response.
711
+ #
712
+ def begin_purge_content(endpoint_name, content_file_paths, profile_name, resource_group_name, custom_headers = nil)
713
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
714
+ fail ArgumentError, 'content_file_paths is nil' if content_file_paths.nil?
715
+ content_file_paths.validate unless content_file_paths.nil?
716
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
717
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
718
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
719
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
720
+ request_headers = {}
721
+
722
+ # Set Headers
723
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
724
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
725
+
726
+ # Serialize Request
727
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
728
+ unless content_file_paths.nil?
729
+ content_file_paths = PurgeParameters.serialize_object(content_file_paths)
730
+ end
731
+ request_content = JSON.generate(content_file_paths, quirks_mode: true)
732
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/purge'
733
+ options = {
734
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
735
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
736
+ query_params: {'api-version' => @client.api_version},
737
+ body: request_content,
738
+ headers: request_headers.merge(custom_headers || {})
739
+ }
740
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :post, options)
741
+ promise = request.run_promise do |req|
742
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
743
+ end
744
+
745
+ promise = promise.then do |http_response|
746
+ status_code = http_response.status
747
+ response_content = http_response.body
748
+ unless status_code == 202
749
+ error_model = JSON.load(response_content)
750
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
751
+ end
752
+
753
+ # Create Result
754
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
755
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
756
+
757
+ result
758
+ end
759
+
760
+ promise.execute
761
+ end
762
+
763
+ #
764
+ # Forcibly pre-loads CDN endpoint content
765
+ #
766
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
767
+ # @param content_file_paths [LoadParameters] The path to the content to be
768
+ # loaded. Path should describe a file.
769
+ # @param profile_name [String] Name of the CDN profile within the resource
770
+ # group
771
+ # @param resource_group_name [String] Name of the resource group within the
772
+ # Azure subscription
773
+ # @return [Concurrent::Promise] promise which provides async access to http
774
+ # response.
775
+ #
776
+ def load_content(endpoint_name, content_file_paths, profile_name, resource_group_name, custom_headers = nil)
777
+ # Send request
778
+ promise = begin_load_content(endpoint_name, content_file_paths, profile_name, resource_group_name, custom_headers)
779
+
780
+ promise = promise.then do |response|
781
+ # Defining deserialization method.
782
+ deserialize_method = lambda do |parsed_response|
783
+ end
784
+
785
+ # Waiting for response.
786
+ @client.get_post_or_delete_operation_result(response, deserialize_method)
787
+ end
788
+
789
+ promise
790
+ end
791
+
792
+ #
793
+ # Forcibly pre-loads CDN endpoint content
794
+ #
795
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
796
+ # @param content_file_paths [LoadParameters] The path to the content to be
797
+ # loaded. Path should describe a file.
798
+ # @param profile_name [String] Name of the CDN profile within the resource
799
+ # group
800
+ # @param resource_group_name [String] Name of the resource group within the
801
+ # Azure subscription
802
+ # @param [Hash{String => String}] The hash of custom headers need to be
803
+ # applied to HTTP request.
804
+ #
805
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
806
+ # response.
807
+ #
808
+ def begin_load_content(endpoint_name, content_file_paths, profile_name, resource_group_name, custom_headers = nil)
809
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
810
+ fail ArgumentError, 'content_file_paths is nil' if content_file_paths.nil?
811
+ content_file_paths.validate unless content_file_paths.nil?
812
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
813
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
814
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
815
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
816
+ request_headers = {}
817
+
818
+ # Set Headers
819
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
820
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
821
+
822
+ # Serialize Request
823
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
824
+ unless content_file_paths.nil?
825
+ content_file_paths = LoadParameters.serialize_object(content_file_paths)
826
+ end
827
+ request_content = JSON.generate(content_file_paths, quirks_mode: true)
828
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/load'
829
+ options = {
830
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
831
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
832
+ query_params: {'api-version' => @client.api_version},
833
+ body: request_content,
834
+ headers: request_headers.merge(custom_headers || {})
835
+ }
836
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :post, options)
837
+ promise = request.run_promise do |req|
838
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
839
+ end
840
+
841
+ promise = promise.then do |http_response|
842
+ status_code = http_response.status
843
+ response_content = http_response.body
844
+ unless status_code == 202
845
+ error_model = JSON.load(response_content)
846
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
847
+ end
848
+
849
+ # Create Result
850
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
851
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
852
+
853
+ result
854
+ end
855
+
856
+ promise.execute
857
+ end
858
+
859
+ #
860
+ # Validates a Custom Domain mapping to ensure it maps to the correct CNAME in
861
+ # DNS
862
+ #
863
+ # @param endpoint_name [String] Name of the endpoint within the CDN profile
864
+ # @param custom_domain_properties [ValidateCustomDomainInput] Custom domain to
865
+ # validate
866
+ # @param profile_name [String] Name of the CDN profile within the resource
867
+ # group
868
+ # @param resource_group_name [String] Name of the resource group within the
869
+ # Azure subscription
870
+ # @param [Hash{String => String}] The hash of custom headers need to be
871
+ # applied to HTTP request.
872
+ #
873
+ # @return [Concurrent::Promise] Promise object which allows to get HTTP
874
+ # response.
875
+ #
876
+ def validate_custom_domain(endpoint_name, custom_domain_properties, profile_name, resource_group_name, custom_headers = nil)
877
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
878
+ fail ArgumentError, 'custom_domain_properties is nil' if custom_domain_properties.nil?
879
+ custom_domain_properties.validate unless custom_domain_properties.nil?
880
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
881
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
882
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
883
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
884
+ request_headers = {}
885
+
886
+ # Set Headers
887
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
888
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
889
+
890
+ # Serialize Request
891
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
892
+ unless custom_domain_properties.nil?
893
+ custom_domain_properties = ValidateCustomDomainInput.serialize_object(custom_domain_properties)
894
+ end
895
+ request_content = JSON.generate(custom_domain_properties, quirks_mode: true)
896
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/validateCustomDomain'
897
+ options = {
898
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
899
+ path_params: {'endpointName' => endpoint_name,'profileName' => profile_name,'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
900
+ query_params: {'api-version' => @client.api_version},
901
+ body: request_content,
902
+ headers: request_headers.merge(custom_headers || {})
903
+ }
904
+ request = MsRest::HttpOperationRequest.new(@base_url || @client.base_url, path_template, :post, options)
905
+ promise = request.run_promise do |req|
906
+ @client.credentials.sign_request(req) unless @client.credentials.nil?
907
+ end
908
+
909
+ promise = promise.then do |http_response|
910
+ status_code = http_response.status
911
+ response_content = http_response.body
912
+ unless status_code == 200
913
+ error_model = JSON.load(response_content)
914
+ fail MsRest::HttpOperationError.new(request, http_response, error_model)
915
+ end
916
+
917
+ # Create Result
918
+ result = MsRestAzure::AzureOperationResponse.new(request, http_response)
919
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
920
+ # Deserialize Response
921
+ if status_code == 200
922
+ begin
923
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
924
+ unless parsed_response.nil?
925
+ parsed_response = ValidateCustomDomainOutput.deserialize_object(parsed_response)
926
+ end
927
+ result.body = parsed_response
928
+ rescue Exception => e
929
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
930
+ end
931
+ end
932
+
933
+ result
934
+ end
935
+
936
+ promise.execute
937
+ end
938
+
939
+ end
940
+ end