azure_mgmt_redis 0.13.0 → 0.14.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 (33) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generated/azure_mgmt_redis.rb +17 -7
  3. data/lib/generated/azure_mgmt_redis/firewall_rules.rb +525 -0
  4. data/lib/generated/azure_mgmt_redis/models/export_rdbparameters.rb +0 -1
  5. data/lib/generated/azure_mgmt_redis/models/import_rdbparameters.rb +0 -1
  6. data/lib/generated/azure_mgmt_redis/models/operation.rb +55 -0
  7. data/lib/generated/azure_mgmt_redis/models/operation_display.rb +75 -0
  8. data/lib/generated/azure_mgmt_redis/models/operation_list_result.rb +98 -0
  9. data/lib/generated/azure_mgmt_redis/models/proxy_resource.rb +59 -0
  10. data/lib/generated/azure_mgmt_redis/models/redis_access_keys.rb +0 -1
  11. data/lib/generated/azure_mgmt_redis/models/redis_create_parameters.rb +8 -9
  12. data/lib/generated/azure_mgmt_redis/models/redis_firewall_rule.rb +79 -0
  13. data/lib/generated/azure_mgmt_redis/models/redis_firewall_rule_list_result.rb +96 -0
  14. data/lib/generated/azure_mgmt_redis/models/redis_force_reboot_response.rb +0 -1
  15. data/lib/generated/azure_mgmt_redis/models/redis_linked_server.rb +0 -1
  16. data/lib/generated/azure_mgmt_redis/models/redis_linked_server_create_parameters.rb +0 -1
  17. data/lib/generated/azure_mgmt_redis/models/redis_linked_server_list.rb +0 -1
  18. data/lib/generated/azure_mgmt_redis/models/redis_linked_server_with_properties.rb +0 -1
  19. data/lib/generated/azure_mgmt_redis/models/redis_linked_server_with_properties_list.rb +0 -1
  20. data/lib/generated/azure_mgmt_redis/models/redis_list_result.rb +1 -0
  21. data/lib/generated/azure_mgmt_redis/models/redis_patch_schedule.rb +0 -1
  22. data/lib/generated/azure_mgmt_redis/models/redis_reboot_parameters.rb +0 -1
  23. data/lib/generated/azure_mgmt_redis/models/redis_regenerate_key_parameters.rb +0 -1
  24. data/lib/generated/azure_mgmt_redis/models/redis_resource.rb +8 -9
  25. data/lib/generated/azure_mgmt_redis/models/redis_update_parameters.rb +0 -1
  26. data/lib/generated/azure_mgmt_redis/models/resource.rb +67 -0
  27. data/lib/generated/azure_mgmt_redis/models/schedule_entry.rb +0 -1
  28. data/lib/generated/azure_mgmt_redis/models/sku.rb +0 -1
  29. data/lib/generated/azure_mgmt_redis/models/tracked_resource.rb +85 -0
  30. data/lib/generated/azure_mgmt_redis/operations.rb +220 -0
  31. data/lib/generated/azure_mgmt_redis/redis_management_client.rb +8 -0
  32. data/lib/generated/azure_mgmt_redis/version.rb +1 -1
  33. metadata +12 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 74abe2041bd97ed72c409c8a5281f49714e108c9
4
- data.tar.gz: 9915dc1848e6a676477c8dd82436421d33419e08
3
+ metadata.gz: 7e28f2546c4d2d3987faf644f04af04b9ec3c1a5
4
+ data.tar.gz: 339518b732cfaa51f79433e334a2f9f09a2ad83b
5
5
  SHA512:
6
- metadata.gz: 13fe9565e706a8f8a1ee070b1e60e37a992fd9120e64df6e13b4b86e7b66e802b7536bc2e26cf54fe9e0a981d09590d7a3240460d3aaac3a1e330c9d345a734a
7
- data.tar.gz: 0b25d6d4b977111d3cebf9fd8930ab4a9f74906571baa783a766bc8c7efe48b90336f38bee84d06cf0aa6184fbd8abd6a1e546c544edbb5e5eb2f9d33e023cbc
6
+ metadata.gz: 9181b79899a52de69ac55116e3a2e3ddab7ce60c8a3d2f20b4320efa3cbeafba0bb9d7a5358a80bc935fd24f551ee64890bb88111d1b080f691a03c74b8b1b8e
7
+ data.tar.gz: f6703a6f15f20ebb373e5182ac2c12335b386dae45d1af319e8481967baa6b3a4a81d03a9a56d6966eb1ed746106db087b9780cdc354fb2ef6420b8e9e8a6090
@@ -20,29 +20,39 @@ require 'generated/azure_mgmt_redis/module_definition'
20
20
  require 'ms_rest_azure'
21
21
 
22
22
  module Azure::ARM::Redis
23
+ autoload :Operations, 'generated/azure_mgmt_redis/operations.rb'
23
24
  autoload :Redis, 'generated/azure_mgmt_redis/redis.rb'
25
+ autoload :FirewallRules, 'generated/azure_mgmt_redis/firewall_rules.rb'
24
26
  autoload :PatchSchedules, 'generated/azure_mgmt_redis/patch_schedules.rb'
25
27
  autoload :RedisLinkedServerOperations, 'generated/azure_mgmt_redis/redis_linked_server_operations.rb'
26
28
  autoload :RedisManagementClient, 'generated/azure_mgmt_redis/redis_management_client.rb'
27
29
 
28
30
  module Models
31
+ autoload :RedisListResult, 'generated/azure_mgmt_redis/models/redis_list_result.rb'
29
32
  autoload :RedisRegenerateKeyParameters, 'generated/azure_mgmt_redis/models/redis_regenerate_key_parameters.rb'
30
- autoload :Sku, 'generated/azure_mgmt_redis/models/sku.rb'
31
33
  autoload :RedisRebootParameters, 'generated/azure_mgmt_redis/models/redis_reboot_parameters.rb'
32
- autoload :ExportRDBParameters, 'generated/azure_mgmt_redis/models/export_rdbparameters.rb'
34
+ autoload :Sku, 'generated/azure_mgmt_redis/models/sku.rb'
35
+ autoload :Resource, 'generated/azure_mgmt_redis/models/resource.rb'
33
36
  autoload :RedisUpdateParameters, 'generated/azure_mgmt_redis/models/redis_update_parameters.rb'
34
- autoload :ImportRDBParameters, 'generated/azure_mgmt_redis/models/import_rdbparameters.rb'
37
+ autoload :RedisLinkedServerCreateParameters, 'generated/azure_mgmt_redis/models/redis_linked_server_create_parameters.rb'
38
+ autoload :Operation, 'generated/azure_mgmt_redis/models/operation.rb'
39
+ autoload :ExportRDBParameters, 'generated/azure_mgmt_redis/models/export_rdbparameters.rb'
35
40
  autoload :RedisLinkedServer, 'generated/azure_mgmt_redis/models/redis_linked_server.rb'
41
+ autoload :ImportRDBParameters, 'generated/azure_mgmt_redis/models/import_rdbparameters.rb'
42
+ autoload :OperationDisplay, 'generated/azure_mgmt_redis/models/operation_display.rb'
36
43
  autoload :ScheduleEntry, 'generated/azure_mgmt_redis/models/schedule_entry.rb'
37
- autoload :RedisListResult, 'generated/azure_mgmt_redis/models/redis_list_result.rb'
38
- autoload :RedisPatchSchedule, 'generated/azure_mgmt_redis/models/redis_patch_schedule.rb'
39
- autoload :RedisLinkedServerCreateParameters, 'generated/azure_mgmt_redis/models/redis_linked_server_create_parameters.rb'
40
44
  autoload :RedisAccessKeys, 'generated/azure_mgmt_redis/models/redis_access_keys.rb'
45
+ autoload :RedisPatchSchedule, 'generated/azure_mgmt_redis/models/redis_patch_schedule.rb'
46
+ autoload :RedisLinkedServerList, 'generated/azure_mgmt_redis/models/redis_linked_server_list.rb'
41
47
  autoload :RedisForceRebootResponse, 'generated/azure_mgmt_redis/models/redis_force_reboot_response.rb'
48
+ autoload :RedisFirewallRuleListResult, 'generated/azure_mgmt_redis/models/redis_firewall_rule_list_result.rb'
42
49
  autoload :RedisLinkedServerWithProperties, 'generated/azure_mgmt_redis/models/redis_linked_server_with_properties.rb'
43
- autoload :RedisLinkedServerList, 'generated/azure_mgmt_redis/models/redis_linked_server_list.rb'
50
+ autoload :OperationListResult, 'generated/azure_mgmt_redis/models/operation_list_result.rb'
44
51
  autoload :RedisLinkedServerWithPropertiesList, 'generated/azure_mgmt_redis/models/redis_linked_server_with_properties_list.rb'
52
+ autoload :ProxyResource, 'generated/azure_mgmt_redis/models/proxy_resource.rb'
53
+ autoload :TrackedResource, 'generated/azure_mgmt_redis/models/tracked_resource.rb'
45
54
  autoload :RedisCreateParameters, 'generated/azure_mgmt_redis/models/redis_create_parameters.rb'
55
+ autoload :RedisFirewallRule, 'generated/azure_mgmt_redis/models/redis_firewall_rule.rb'
46
56
  autoload :RedisResource, 'generated/azure_mgmt_redis/models/redis_resource.rb'
47
57
  autoload :SkuName, 'generated/azure_mgmt_redis/models/sku_name.rb'
48
58
  autoload :SkuFamily, 'generated/azure_mgmt_redis/models/sku_family.rb'
@@ -0,0 +1,525 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Redis
7
+ #
8
+ # REST API for Azure Redis Cache Service.
9
+ #
10
+ class FirewallRules
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the FirewallRules class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [RedisManagementClient] reference to the RedisManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Gets all firewall rules in the specified redis cache.
26
+ #
27
+ # @param resource_group_name [String] The name of the resource group.
28
+ # @param cache_name [String] The name of the Redis cache.
29
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
30
+ # will be added to the HTTP request.
31
+ #
32
+ # @return [Array<RedisFirewallRule>] operation results.
33
+ #
34
+ def list_by_redis_resource(resource_group_name, cache_name, custom_headers = nil)
35
+ first_page = list_by_redis_resource_as_lazy(resource_group_name, cache_name, custom_headers)
36
+ first_page.get_all_items
37
+ end
38
+
39
+ #
40
+ # Gets all firewall rules in the specified redis cache.
41
+ #
42
+ # @param resource_group_name [String] The name of the resource group.
43
+ # @param cache_name [String] The name of the Redis cache.
44
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
45
+ # will be added to the HTTP request.
46
+ #
47
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
48
+ #
49
+ def list_by_redis_resource_with_http_info(resource_group_name, cache_name, custom_headers = nil)
50
+ list_by_redis_resource_async(resource_group_name, cache_name, custom_headers).value!
51
+ end
52
+
53
+ #
54
+ # Gets all firewall rules in the specified redis cache.
55
+ #
56
+ # @param resource_group_name [String] The name of the resource group.
57
+ # @param cache_name [String] The name of the Redis cache.
58
+ # @param [Hash{String => String}] A hash of custom headers that will be added
59
+ # to the HTTP request.
60
+ #
61
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
62
+ #
63
+ def list_by_redis_resource_async(resource_group_name, cache_name, custom_headers = nil)
64
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
65
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
66
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
67
+ fail ArgumentError, 'cache_name is nil' if cache_name.nil?
68
+
69
+
70
+ request_headers = {}
71
+
72
+ # Set Headers
73
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
74
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
75
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{cacheName}/firewallRules'
76
+
77
+ request_url = @base_url || @client.base_url
78
+
79
+ options = {
80
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
81
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'cacheName' => cache_name},
82
+ query_params: {'api-version' => @client.api_version},
83
+ headers: request_headers.merge(custom_headers || {}),
84
+ base_url: request_url
85
+ }
86
+ promise = @client.make_request_async(:get, path_template, options)
87
+
88
+ promise = promise.then do |result|
89
+ http_response = result.response
90
+ status_code = http_response.status
91
+ response_content = http_response.body
92
+ unless status_code == 200
93
+ error_model = JSON.load(response_content)
94
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
95
+ end
96
+
97
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
98
+ # Deserialize Response
99
+ if status_code == 200
100
+ begin
101
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
102
+ result_mapper = Azure::ARM::Redis::Models::RedisFirewallRuleListResult.mapper()
103
+ result.body = @client.deserialize(result_mapper, parsed_response)
104
+ rescue Exception => e
105
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
106
+ end
107
+ end
108
+
109
+ result
110
+ end
111
+
112
+ promise.execute
113
+ end
114
+
115
+ #
116
+ # Create or update a redis cache firewall rule
117
+ #
118
+ # @param resource_group_name [String] The name of the resource group.
119
+ # @param cache_name [String] The name of the Redis cache.
120
+ # @param rule_name [String] The name of the firewall rule.
121
+ # @param parameters [RedisFirewallRule] Parameters supplied to the create or
122
+ # update redis firewall rule operation.
123
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
124
+ # will be added to the HTTP request.
125
+ #
126
+ # @return [RedisFirewallRule] operation results.
127
+ #
128
+ def create_or_update(resource_group_name, cache_name, rule_name, parameters, custom_headers = nil)
129
+ response = create_or_update_async(resource_group_name, cache_name, rule_name, parameters, custom_headers).value!
130
+ response.body unless response.nil?
131
+ end
132
+
133
+ #
134
+ # Create or update a redis cache firewall rule
135
+ #
136
+ # @param resource_group_name [String] The name of the resource group.
137
+ # @param cache_name [String] The name of the Redis cache.
138
+ # @param rule_name [String] The name of the firewall rule.
139
+ # @param parameters [RedisFirewallRule] Parameters supplied to the create or
140
+ # update redis firewall rule operation.
141
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
142
+ # will be added to the HTTP request.
143
+ #
144
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
145
+ #
146
+ def create_or_update_with_http_info(resource_group_name, cache_name, rule_name, parameters, custom_headers = nil)
147
+ create_or_update_async(resource_group_name, cache_name, rule_name, parameters, custom_headers).value!
148
+ end
149
+
150
+ #
151
+ # Create or update a redis cache firewall rule
152
+ #
153
+ # @param resource_group_name [String] The name of the resource group.
154
+ # @param cache_name [String] The name of the Redis cache.
155
+ # @param rule_name [String] The name of the firewall rule.
156
+ # @param parameters [RedisFirewallRule] Parameters supplied to the create or
157
+ # update redis firewall rule operation.
158
+ # @param [Hash{String => String}] A hash of custom headers that will be added
159
+ # to the HTTP request.
160
+ #
161
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
162
+ #
163
+ def create_or_update_async(resource_group_name, cache_name, rule_name, parameters, custom_headers = nil)
164
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
165
+ fail ArgumentError, 'cache_name is nil' if cache_name.nil?
166
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
167
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
168
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
169
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
170
+
171
+
172
+ request_headers = {}
173
+
174
+ # Set Headers
175
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
176
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
177
+
178
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
179
+
180
+ # Serialize Request
181
+ request_mapper = Azure::ARM::Redis::Models::RedisFirewallRule.mapper()
182
+ request_content = @client.serialize(request_mapper, parameters)
183
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
184
+
185
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{cacheName}/firewallRules/{ruleName}'
186
+
187
+ request_url = @base_url || @client.base_url
188
+
189
+ options = {
190
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
191
+ path_params: {'resourceGroupName' => resource_group_name,'cacheName' => cache_name,'ruleName' => rule_name,'subscriptionId' => @client.subscription_id},
192
+ query_params: {'api-version' => @client.api_version},
193
+ body: request_content,
194
+ headers: request_headers.merge(custom_headers || {}),
195
+ base_url: request_url
196
+ }
197
+ promise = @client.make_request_async(:put, path_template, options)
198
+
199
+ promise = promise.then do |result|
200
+ http_response = result.response
201
+ status_code = http_response.status
202
+ response_content = http_response.body
203
+ unless status_code == 200 || status_code == 201
204
+ error_model = JSON.load(response_content)
205
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
206
+ end
207
+
208
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
209
+ # Deserialize Response
210
+ if status_code == 200
211
+ begin
212
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
213
+ result_mapper = Azure::ARM::Redis::Models::RedisFirewallRule.mapper()
214
+ result.body = @client.deserialize(result_mapper, parsed_response)
215
+ rescue Exception => e
216
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
217
+ end
218
+ end
219
+ # Deserialize Response
220
+ if status_code == 201
221
+ begin
222
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
223
+ result_mapper = Azure::ARM::Redis::Models::RedisFirewallRule.mapper()
224
+ result.body = @client.deserialize(result_mapper, parsed_response)
225
+ rescue Exception => e
226
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
227
+ end
228
+ end
229
+
230
+ result
231
+ end
232
+
233
+ promise.execute
234
+ end
235
+
236
+ #
237
+ # Gets a single firewall rule in a specified redis cache.
238
+ #
239
+ # @param resource_group_name [String] The name of the resource group.
240
+ # @param cache_name [String] The name of the Redis cache.
241
+ # @param rule_name [String] The name of the firewall rule.
242
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
243
+ # will be added to the HTTP request.
244
+ #
245
+ # @return [RedisFirewallRule] operation results.
246
+ #
247
+ def get(resource_group_name, cache_name, rule_name, custom_headers = nil)
248
+ response = get_async(resource_group_name, cache_name, rule_name, custom_headers).value!
249
+ response.body unless response.nil?
250
+ end
251
+
252
+ #
253
+ # Gets a single firewall rule in a specified redis cache.
254
+ #
255
+ # @param resource_group_name [String] The name of the resource group.
256
+ # @param cache_name [String] The name of the Redis cache.
257
+ # @param rule_name [String] The name of the firewall rule.
258
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
259
+ # will be added to the HTTP request.
260
+ #
261
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
262
+ #
263
+ def get_with_http_info(resource_group_name, cache_name, rule_name, custom_headers = nil)
264
+ get_async(resource_group_name, cache_name, rule_name, custom_headers).value!
265
+ end
266
+
267
+ #
268
+ # Gets a single firewall rule in a specified redis cache.
269
+ #
270
+ # @param resource_group_name [String] The name of the resource group.
271
+ # @param cache_name [String] The name of the Redis cache.
272
+ # @param rule_name [String] The name of the firewall rule.
273
+ # @param [Hash{String => String}] A hash of custom headers that will be added
274
+ # to the HTTP request.
275
+ #
276
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
277
+ #
278
+ def get_async(resource_group_name, cache_name, rule_name, custom_headers = nil)
279
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
280
+ fail ArgumentError, 'cache_name is nil' if cache_name.nil?
281
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
282
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
283
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
284
+
285
+
286
+ request_headers = {}
287
+
288
+ # Set Headers
289
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
290
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
291
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{cacheName}/firewallRules/{ruleName}'
292
+
293
+ request_url = @base_url || @client.base_url
294
+
295
+ options = {
296
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
297
+ path_params: {'resourceGroupName' => resource_group_name,'cacheName' => cache_name,'ruleName' => rule_name,'subscriptionId' => @client.subscription_id},
298
+ query_params: {'api-version' => @client.api_version},
299
+ headers: request_headers.merge(custom_headers || {}),
300
+ base_url: request_url
301
+ }
302
+ promise = @client.make_request_async(:get, path_template, options)
303
+
304
+ promise = promise.then do |result|
305
+ http_response = result.response
306
+ status_code = http_response.status
307
+ response_content = http_response.body
308
+ unless status_code == 200
309
+ error_model = JSON.load(response_content)
310
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
311
+ end
312
+
313
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
314
+ # Deserialize Response
315
+ if status_code == 200
316
+ begin
317
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
318
+ result_mapper = Azure::ARM::Redis::Models::RedisFirewallRule.mapper()
319
+ result.body = @client.deserialize(result_mapper, parsed_response)
320
+ rescue Exception => e
321
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
322
+ end
323
+ end
324
+
325
+ result
326
+ end
327
+
328
+ promise.execute
329
+ end
330
+
331
+ #
332
+ # Deletes a single firewall rule in a specified redis cache.
333
+ #
334
+ # @param resource_group_name [String] The name of the resource group.
335
+ # @param cache_name [String] The name of the Redis cache.
336
+ # @param rule_name [String] The name of the firewall rule.
337
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
338
+ # will be added to the HTTP request.
339
+ #
340
+ #
341
+ def delete(resource_group_name, cache_name, rule_name, custom_headers = nil)
342
+ response = delete_async(resource_group_name, cache_name, rule_name, custom_headers).value!
343
+ nil
344
+ end
345
+
346
+ #
347
+ # Deletes a single firewall rule in a specified redis cache.
348
+ #
349
+ # @param resource_group_name [String] The name of the resource group.
350
+ # @param cache_name [String] The name of the Redis cache.
351
+ # @param rule_name [String] The name of the firewall rule.
352
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
353
+ # will be added to the HTTP request.
354
+ #
355
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
356
+ #
357
+ def delete_with_http_info(resource_group_name, cache_name, rule_name, custom_headers = nil)
358
+ delete_async(resource_group_name, cache_name, rule_name, custom_headers).value!
359
+ end
360
+
361
+ #
362
+ # Deletes a single firewall rule in a specified redis cache.
363
+ #
364
+ # @param resource_group_name [String] The name of the resource group.
365
+ # @param cache_name [String] The name of the Redis cache.
366
+ # @param rule_name [String] The name of the firewall rule.
367
+ # @param [Hash{String => String}] A hash of custom headers that will be added
368
+ # to the HTTP request.
369
+ #
370
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
371
+ #
372
+ def delete_async(resource_group_name, cache_name, rule_name, custom_headers = nil)
373
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
374
+ fail ArgumentError, 'cache_name is nil' if cache_name.nil?
375
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
376
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
377
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
378
+
379
+
380
+ request_headers = {}
381
+
382
+ # Set Headers
383
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
384
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
385
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{cacheName}/firewallRules/{ruleName}'
386
+
387
+ request_url = @base_url || @client.base_url
388
+
389
+ options = {
390
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
391
+ path_params: {'resourceGroupName' => resource_group_name,'cacheName' => cache_name,'ruleName' => rule_name,'subscriptionId' => @client.subscription_id},
392
+ query_params: {'api-version' => @client.api_version},
393
+ headers: request_headers.merge(custom_headers || {}),
394
+ base_url: request_url
395
+ }
396
+ promise = @client.make_request_async(:delete, path_template, options)
397
+
398
+ promise = promise.then do |result|
399
+ http_response = result.response
400
+ status_code = http_response.status
401
+ response_content = http_response.body
402
+ unless status_code == 200 || status_code == 204
403
+ error_model = JSON.load(response_content)
404
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
405
+ end
406
+
407
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
408
+
409
+ result
410
+ end
411
+
412
+ promise.execute
413
+ end
414
+
415
+ #
416
+ # Gets all firewall rules in the specified redis cache.
417
+ #
418
+ # @param next_page_link [String] The NextLink from the previous successful call
419
+ # to List operation.
420
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
421
+ # will be added to the HTTP request.
422
+ #
423
+ # @return [RedisFirewallRuleListResult] operation results.
424
+ #
425
+ def list_by_redis_resource_next(next_page_link, custom_headers = nil)
426
+ response = list_by_redis_resource_next_async(next_page_link, custom_headers).value!
427
+ response.body unless response.nil?
428
+ end
429
+
430
+ #
431
+ # Gets all firewall rules in the specified redis cache.
432
+ #
433
+ # @param next_page_link [String] The NextLink from the previous successful call
434
+ # to List operation.
435
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
436
+ # will be added to the HTTP request.
437
+ #
438
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
439
+ #
440
+ def list_by_redis_resource_next_with_http_info(next_page_link, custom_headers = nil)
441
+ list_by_redis_resource_next_async(next_page_link, custom_headers).value!
442
+ end
443
+
444
+ #
445
+ # Gets all firewall rules in the specified redis cache.
446
+ #
447
+ # @param next_page_link [String] The NextLink from the previous successful call
448
+ # to List operation.
449
+ # @param [Hash{String => String}] A hash of custom headers that will be added
450
+ # to the HTTP request.
451
+ #
452
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
453
+ #
454
+ def list_by_redis_resource_next_async(next_page_link, custom_headers = nil)
455
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
456
+
457
+
458
+ request_headers = {}
459
+
460
+ # Set Headers
461
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
462
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
463
+ path_template = '{nextLink}'
464
+
465
+ request_url = @base_url || @client.base_url
466
+
467
+ options = {
468
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
469
+ skip_encoding_path_params: {'nextLink' => next_page_link},
470
+ headers: request_headers.merge(custom_headers || {}),
471
+ base_url: request_url
472
+ }
473
+ promise = @client.make_request_async(:get, path_template, options)
474
+
475
+ promise = promise.then do |result|
476
+ http_response = result.response
477
+ status_code = http_response.status
478
+ response_content = http_response.body
479
+ unless status_code == 200
480
+ error_model = JSON.load(response_content)
481
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
482
+ end
483
+
484
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
485
+ # Deserialize Response
486
+ if status_code == 200
487
+ begin
488
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
489
+ result_mapper = Azure::ARM::Redis::Models::RedisFirewallRuleListResult.mapper()
490
+ result.body = @client.deserialize(result_mapper, parsed_response)
491
+ rescue Exception => e
492
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
493
+ end
494
+ end
495
+
496
+ result
497
+ end
498
+
499
+ promise.execute
500
+ end
501
+
502
+ #
503
+ # Gets all firewall rules in the specified redis cache.
504
+ #
505
+ # @param resource_group_name [String] The name of the resource group.
506
+ # @param cache_name [String] The name of the Redis cache.
507
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
508
+ # will be added to the HTTP request.
509
+ #
510
+ # @return [RedisFirewallRuleListResult] which provide lazy access to pages of
511
+ # the response.
512
+ #
513
+ def list_by_redis_resource_as_lazy(resource_group_name, cache_name, custom_headers = nil)
514
+ response = list_by_redis_resource_async(resource_group_name, cache_name, custom_headers).value!
515
+ unless response.nil?
516
+ page = response.body
517
+ page.next_method = Proc.new do |next_page_link|
518
+ list_by_redis_resource_next_async(next_page_link, custom_headers)
519
+ end
520
+ page
521
+ end
522
+ end
523
+
524
+ end
525
+ end