azure_mgmt_redis 0.10.0 → 0.11.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.
- checksums.yaml +4 -4
- data/lib/generated/azure_mgmt_redis.rb +13 -6
- data/lib/generated/azure_mgmt_redis/models/day_of_week.rb +1 -1
- data/lib/generated/azure_mgmt_redis/models/export_rdbparameters.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/import_rdbparameters.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/reboot_type.rb +1 -1
- data/lib/generated/azure_mgmt_redis/models/redis_access_keys.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_create_parameters.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_force_reboot_response.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_key_type.rb +1 -1
- data/lib/generated/azure_mgmt_redis/models/redis_linked_server.rb +46 -0
- data/lib/generated/azure_mgmt_redis/models/redis_linked_server_create_parameters.rb +67 -0
- data/lib/generated/azure_mgmt_redis/models/redis_linked_server_list.rb +54 -0
- data/lib/generated/azure_mgmt_redis/models/redis_linked_server_with_properties.rb +112 -0
- data/lib/generated/azure_mgmt_redis/models/redis_linked_server_with_properties_list.rb +54 -0
- data/lib/generated/azure_mgmt_redis/models/redis_list_result.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_patch_schedule.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_reboot_parameters.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_regenerate_key_parameters.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/redis_resource.rb +15 -1
- data/lib/generated/azure_mgmt_redis/models/redis_update_parameters.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/replication_role.rb +16 -0
- data/lib/generated/azure_mgmt_redis/models/schedule_entry.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/sku.rb +2 -1
- data/lib/generated/azure_mgmt_redis/models/sku_family.rb +1 -1
- data/lib/generated/azure_mgmt_redis/models/sku_name.rb +1 -1
- data/lib/generated/azure_mgmt_redis/module_definition.rb +1 -1
- data/lib/generated/azure_mgmt_redis/patch_schedules.rb +12 -13
- data/lib/generated/azure_mgmt_redis/redis.rb +48 -49
- data/lib/generated/azure_mgmt_redis/redis_linked_server_operations.rb +478 -0
- data/lib/generated/azure_mgmt_redis/redis_management_client.rb +6 -2
- data/lib/generated/azure_mgmt_redis/version.rb +2 -2
- metadata +11 -4
@@ -0,0 +1,478 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
# Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
|
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 RedisLinkedServerOperations
|
11
|
+
include MsRestAzure
|
12
|
+
|
13
|
+
#
|
14
|
+
# Creates and initializes a new instance of the RedisLinkedServerOperations 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
|
+
# Adds a linked server to the Redis cache (requires Premium SKU).
|
26
|
+
#
|
27
|
+
# @param resource_group_name [String] The name of the resource group.
|
28
|
+
# @param name [String] The name of the Redis cache.
|
29
|
+
# @param linked_server_name [String] The name of the linked server that is
|
30
|
+
# being added to the Redis cache.
|
31
|
+
# @param parameters [RedisLinkedServerCreateParameters] Parameters supplied to
|
32
|
+
# the Create Linked server operation.
|
33
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
34
|
+
# will be added to the HTTP request.
|
35
|
+
#
|
36
|
+
# @return [RedisLinkedServerWithProperties] operation results.
|
37
|
+
#
|
38
|
+
def create(resource_group_name, name, linked_server_name, parameters, custom_headers = nil)
|
39
|
+
response = create_async(resource_group_name, name, linked_server_name, parameters, custom_headers).value!
|
40
|
+
response.body unless response.nil?
|
41
|
+
end
|
42
|
+
|
43
|
+
#
|
44
|
+
# @param resource_group_name [String] The name of the resource group.
|
45
|
+
# @param name [String] The name of the Redis cache.
|
46
|
+
# @param linked_server_name [String] The name of the linked server that is
|
47
|
+
# being added to the Redis cache.
|
48
|
+
# @param parameters [RedisLinkedServerCreateParameters] Parameters supplied to
|
49
|
+
# the Create Linked server operation.
|
50
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
51
|
+
# will be added to the HTTP request.
|
52
|
+
#
|
53
|
+
# @return [Concurrent::Promise] promise which provides async access to http
|
54
|
+
# response.
|
55
|
+
#
|
56
|
+
def create_async(resource_group_name, name, linked_server_name, parameters, custom_headers = nil)
|
57
|
+
# Send request
|
58
|
+
promise = begin_create_async(resource_group_name, name, linked_server_name, parameters, custom_headers)
|
59
|
+
|
60
|
+
promise = promise.then do |response|
|
61
|
+
# Defining deserialization method.
|
62
|
+
deserialize_method = lambda do |parsed_response|
|
63
|
+
result_mapper = Azure::ARM::Redis::Models::RedisLinkedServerWithProperties.mapper()
|
64
|
+
parsed_response = @client.deserialize(result_mapper, parsed_response)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Waiting for response.
|
68
|
+
@client.get_long_running_operation_result(response, deserialize_method)
|
69
|
+
end
|
70
|
+
|
71
|
+
promise
|
72
|
+
end
|
73
|
+
|
74
|
+
#
|
75
|
+
# Deletes the linked server from a redis cache (requires Premium SKU).
|
76
|
+
#
|
77
|
+
# @param resource_group_name [String] The name of the resource group.
|
78
|
+
# @param name [String] The name of the redis cache.
|
79
|
+
# @param linked_server_name [String] The name of the linked server that is
|
80
|
+
# being added to the Redis cache.
|
81
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
82
|
+
# will be added to the HTTP request.
|
83
|
+
#
|
84
|
+
#
|
85
|
+
def delete(resource_group_name, name, linked_server_name, custom_headers = nil)
|
86
|
+
response = delete_async(resource_group_name, name, linked_server_name, custom_headers).value!
|
87
|
+
nil
|
88
|
+
end
|
89
|
+
|
90
|
+
#
|
91
|
+
# Deletes the linked server from a redis cache (requires Premium SKU).
|
92
|
+
#
|
93
|
+
# @param resource_group_name [String] The name of the resource group.
|
94
|
+
# @param name [String] The name of the redis cache.
|
95
|
+
# @param linked_server_name [String] The name of the linked server that is
|
96
|
+
# being added to the Redis cache.
|
97
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
98
|
+
# will be added to the HTTP request.
|
99
|
+
#
|
100
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
101
|
+
#
|
102
|
+
def delete_with_http_info(resource_group_name, name, linked_server_name, custom_headers = nil)
|
103
|
+
delete_async(resource_group_name, name, linked_server_name, custom_headers).value!
|
104
|
+
end
|
105
|
+
|
106
|
+
#
|
107
|
+
# Deletes the linked server from a redis cache (requires Premium SKU).
|
108
|
+
#
|
109
|
+
# @param resource_group_name [String] The name of the resource group.
|
110
|
+
# @param name [String] The name of the redis cache.
|
111
|
+
# @param linked_server_name [String] The name of the linked server that is
|
112
|
+
# being added to the Redis cache.
|
113
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
114
|
+
# to the HTTP request.
|
115
|
+
#
|
116
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
117
|
+
#
|
118
|
+
def delete_async(resource_group_name, name, linked_server_name, custom_headers = nil)
|
119
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
120
|
+
fail ArgumentError, 'name is nil' if name.nil?
|
121
|
+
fail ArgumentError, 'linked_server_name is nil' if linked_server_name.nil?
|
122
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
123
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
124
|
+
|
125
|
+
|
126
|
+
request_headers = {}
|
127
|
+
|
128
|
+
# Set Headers
|
129
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
130
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
131
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/linkedServers/{linkedServerName}'
|
132
|
+
|
133
|
+
request_url = @base_url || @client.base_url
|
134
|
+
|
135
|
+
options = {
|
136
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
137
|
+
path_params: {'resourceGroupName' => resource_group_name,'name' => name,'linkedServerName' => linked_server_name,'subscriptionId' => @client.subscription_id},
|
138
|
+
query_params: {'api-version' => @client.api_version},
|
139
|
+
headers: request_headers.merge(custom_headers || {}),
|
140
|
+
base_url: request_url
|
141
|
+
}
|
142
|
+
promise = @client.make_request_async(:delete, path_template, options)
|
143
|
+
|
144
|
+
promise = promise.then do |result|
|
145
|
+
http_response = result.response
|
146
|
+
status_code = http_response.status
|
147
|
+
response_content = http_response.body
|
148
|
+
unless status_code == 200
|
149
|
+
error_model = JSON.load(response_content)
|
150
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
151
|
+
end
|
152
|
+
|
153
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
154
|
+
|
155
|
+
result
|
156
|
+
end
|
157
|
+
|
158
|
+
promise.execute
|
159
|
+
end
|
160
|
+
|
161
|
+
#
|
162
|
+
# Gets the detailed information about a linked server of a redis cache
|
163
|
+
# (requires Premium SKU).
|
164
|
+
#
|
165
|
+
# @param resource_group_name [String] The name of the resource group.
|
166
|
+
# @param name [String] The name of the redis cache.
|
167
|
+
# @param linked_server_name [String] The name of the linked server.
|
168
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
169
|
+
# will be added to the HTTP request.
|
170
|
+
#
|
171
|
+
# @return [RedisLinkedServerWithProperties] operation results.
|
172
|
+
#
|
173
|
+
def get(resource_group_name, name, linked_server_name, custom_headers = nil)
|
174
|
+
response = get_async(resource_group_name, name, linked_server_name, custom_headers).value!
|
175
|
+
response.body unless response.nil?
|
176
|
+
end
|
177
|
+
|
178
|
+
#
|
179
|
+
# Gets the detailed information about a linked server of a redis cache
|
180
|
+
# (requires Premium SKU).
|
181
|
+
#
|
182
|
+
# @param resource_group_name [String] The name of the resource group.
|
183
|
+
# @param name [String] The name of the redis cache.
|
184
|
+
# @param linked_server_name [String] The name of the linked server.
|
185
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
186
|
+
# will be added to the HTTP request.
|
187
|
+
#
|
188
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
189
|
+
#
|
190
|
+
def get_with_http_info(resource_group_name, name, linked_server_name, custom_headers = nil)
|
191
|
+
get_async(resource_group_name, name, linked_server_name, custom_headers).value!
|
192
|
+
end
|
193
|
+
|
194
|
+
#
|
195
|
+
# Gets the detailed information about a linked server of a redis cache
|
196
|
+
# (requires Premium SKU).
|
197
|
+
#
|
198
|
+
# @param resource_group_name [String] The name of the resource group.
|
199
|
+
# @param name [String] The name of the redis cache.
|
200
|
+
# @param linked_server_name [String] The name of the linked server.
|
201
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
202
|
+
# to the HTTP request.
|
203
|
+
#
|
204
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
205
|
+
#
|
206
|
+
def get_async(resource_group_name, name, linked_server_name, custom_headers = nil)
|
207
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
208
|
+
fail ArgumentError, 'name is nil' if name.nil?
|
209
|
+
fail ArgumentError, 'linked_server_name is nil' if linked_server_name.nil?
|
210
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
211
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
212
|
+
|
213
|
+
|
214
|
+
request_headers = {}
|
215
|
+
|
216
|
+
# Set Headers
|
217
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
218
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
219
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/linkedServers/{linkedServerName}'
|
220
|
+
|
221
|
+
request_url = @base_url || @client.base_url
|
222
|
+
|
223
|
+
options = {
|
224
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
225
|
+
path_params: {'resourceGroupName' => resource_group_name,'name' => name,'linkedServerName' => linked_server_name,'subscriptionId' => @client.subscription_id},
|
226
|
+
query_params: {'api-version' => @client.api_version},
|
227
|
+
headers: request_headers.merge(custom_headers || {}),
|
228
|
+
base_url: request_url
|
229
|
+
}
|
230
|
+
promise = @client.make_request_async(:get, path_template, options)
|
231
|
+
|
232
|
+
promise = promise.then do |result|
|
233
|
+
http_response = result.response
|
234
|
+
status_code = http_response.status
|
235
|
+
response_content = http_response.body
|
236
|
+
unless status_code == 200
|
237
|
+
error_model = JSON.load(response_content)
|
238
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
239
|
+
end
|
240
|
+
|
241
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
242
|
+
# Deserialize Response
|
243
|
+
if status_code == 200
|
244
|
+
begin
|
245
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
246
|
+
result_mapper = Azure::ARM::Redis::Models::RedisLinkedServerWithProperties.mapper()
|
247
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
248
|
+
rescue Exception => e
|
249
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
250
|
+
end
|
251
|
+
end
|
252
|
+
|
253
|
+
result
|
254
|
+
end
|
255
|
+
|
256
|
+
promise.execute
|
257
|
+
end
|
258
|
+
|
259
|
+
#
|
260
|
+
# Gets the list of linked servers associated with this redis cache (requires
|
261
|
+
# Premium SKU).
|
262
|
+
#
|
263
|
+
# @param resource_group_name [String] The name of the resource group.
|
264
|
+
# @param name [String] The name of the redis cache.
|
265
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
266
|
+
# will be added to the HTTP request.
|
267
|
+
#
|
268
|
+
# @return [RedisLinkedServerWithPropertiesList] operation results.
|
269
|
+
#
|
270
|
+
def list(resource_group_name, name, custom_headers = nil)
|
271
|
+
response = list_async(resource_group_name, name, custom_headers).value!
|
272
|
+
response.body unless response.nil?
|
273
|
+
end
|
274
|
+
|
275
|
+
#
|
276
|
+
# Gets the list of linked servers associated with this redis cache (requires
|
277
|
+
# Premium SKU).
|
278
|
+
#
|
279
|
+
# @param resource_group_name [String] The name of the resource group.
|
280
|
+
# @param name [String] The name of the redis cache.
|
281
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
282
|
+
# will be added to the HTTP request.
|
283
|
+
#
|
284
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
285
|
+
#
|
286
|
+
def list_with_http_info(resource_group_name, name, custom_headers = nil)
|
287
|
+
list_async(resource_group_name, name, custom_headers).value!
|
288
|
+
end
|
289
|
+
|
290
|
+
#
|
291
|
+
# Gets the list of linked servers associated with this redis cache (requires
|
292
|
+
# Premium SKU).
|
293
|
+
#
|
294
|
+
# @param resource_group_name [String] The name of the resource group.
|
295
|
+
# @param name [String] The name of the redis cache.
|
296
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
297
|
+
# to the HTTP request.
|
298
|
+
#
|
299
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
300
|
+
#
|
301
|
+
def list_async(resource_group_name, name, custom_headers = nil)
|
302
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
303
|
+
fail ArgumentError, 'name is nil' if name.nil?
|
304
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
305
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
306
|
+
|
307
|
+
|
308
|
+
request_headers = {}
|
309
|
+
|
310
|
+
# Set Headers
|
311
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
312
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
313
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/linkedServers'
|
314
|
+
|
315
|
+
request_url = @base_url || @client.base_url
|
316
|
+
|
317
|
+
options = {
|
318
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
319
|
+
path_params: {'resourceGroupName' => resource_group_name,'name' => name,'subscriptionId' => @client.subscription_id},
|
320
|
+
query_params: {'api-version' => @client.api_version},
|
321
|
+
headers: request_headers.merge(custom_headers || {}),
|
322
|
+
base_url: request_url
|
323
|
+
}
|
324
|
+
promise = @client.make_request_async(:get, path_template, options)
|
325
|
+
|
326
|
+
promise = promise.then do |result|
|
327
|
+
http_response = result.response
|
328
|
+
status_code = http_response.status
|
329
|
+
response_content = http_response.body
|
330
|
+
unless status_code == 200
|
331
|
+
error_model = JSON.load(response_content)
|
332
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
333
|
+
end
|
334
|
+
|
335
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
336
|
+
# Deserialize Response
|
337
|
+
if status_code == 200
|
338
|
+
begin
|
339
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
340
|
+
result_mapper = Azure::ARM::Redis::Models::RedisLinkedServerWithPropertiesList.mapper()
|
341
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
342
|
+
rescue Exception => e
|
343
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
344
|
+
end
|
345
|
+
end
|
346
|
+
|
347
|
+
result
|
348
|
+
end
|
349
|
+
|
350
|
+
promise.execute
|
351
|
+
end
|
352
|
+
|
353
|
+
#
|
354
|
+
# Adds a linked server to the Redis cache (requires Premium SKU).
|
355
|
+
#
|
356
|
+
# @param resource_group_name [String] The name of the resource group.
|
357
|
+
# @param name [String] The name of the Redis cache.
|
358
|
+
# @param linked_server_name [String] The name of the linked server that is
|
359
|
+
# being added to the Redis cache.
|
360
|
+
# @param parameters [RedisLinkedServerCreateParameters] Parameters supplied to
|
361
|
+
# the Create Linked server operation.
|
362
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
363
|
+
# will be added to the HTTP request.
|
364
|
+
#
|
365
|
+
# @return [RedisLinkedServerWithProperties] operation results.
|
366
|
+
#
|
367
|
+
def begin_create(resource_group_name, name, linked_server_name, parameters, custom_headers = nil)
|
368
|
+
response = begin_create_async(resource_group_name, name, linked_server_name, parameters, custom_headers).value!
|
369
|
+
response.body unless response.nil?
|
370
|
+
end
|
371
|
+
|
372
|
+
#
|
373
|
+
# Adds a linked server to the Redis cache (requires Premium SKU).
|
374
|
+
#
|
375
|
+
# @param resource_group_name [String] The name of the resource group.
|
376
|
+
# @param name [String] The name of the Redis cache.
|
377
|
+
# @param linked_server_name [String] The name of the linked server that is
|
378
|
+
# being added to the Redis cache.
|
379
|
+
# @param parameters [RedisLinkedServerCreateParameters] Parameters supplied to
|
380
|
+
# the Create Linked server operation.
|
381
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
382
|
+
# will be added to the HTTP request.
|
383
|
+
#
|
384
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
385
|
+
#
|
386
|
+
def begin_create_with_http_info(resource_group_name, name, linked_server_name, parameters, custom_headers = nil)
|
387
|
+
begin_create_async(resource_group_name, name, linked_server_name, parameters, custom_headers).value!
|
388
|
+
end
|
389
|
+
|
390
|
+
#
|
391
|
+
# Adds a linked server to the Redis cache (requires Premium SKU).
|
392
|
+
#
|
393
|
+
# @param resource_group_name [String] The name of the resource group.
|
394
|
+
# @param name [String] The name of the Redis cache.
|
395
|
+
# @param linked_server_name [String] The name of the linked server that is
|
396
|
+
# being added to the Redis cache.
|
397
|
+
# @param parameters [RedisLinkedServerCreateParameters] Parameters supplied to
|
398
|
+
# the Create Linked server operation.
|
399
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
400
|
+
# to the HTTP request.
|
401
|
+
#
|
402
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
403
|
+
#
|
404
|
+
def begin_create_async(resource_group_name, name, linked_server_name, parameters, custom_headers = nil)
|
405
|
+
fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
|
406
|
+
fail ArgumentError, 'name is nil' if name.nil?
|
407
|
+
fail ArgumentError, 'linked_server_name is nil' if linked_server_name.nil?
|
408
|
+
fail ArgumentError, 'parameters is nil' if parameters.nil?
|
409
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
410
|
+
fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
|
411
|
+
|
412
|
+
|
413
|
+
request_headers = {}
|
414
|
+
|
415
|
+
# Set Headers
|
416
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
417
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
418
|
+
|
419
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
420
|
+
|
421
|
+
# Serialize Request
|
422
|
+
request_mapper = Azure::ARM::Redis::Models::RedisLinkedServerCreateParameters.mapper()
|
423
|
+
request_content = @client.serialize(request_mapper, parameters)
|
424
|
+
request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
|
425
|
+
|
426
|
+
path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/Redis/{name}/linkedServers/{linkedServerName}'
|
427
|
+
|
428
|
+
request_url = @base_url || @client.base_url
|
429
|
+
|
430
|
+
options = {
|
431
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
432
|
+
path_params: {'resourceGroupName' => resource_group_name,'name' => name,'linkedServerName' => linked_server_name,'subscriptionId' => @client.subscription_id},
|
433
|
+
query_params: {'api-version' => @client.api_version},
|
434
|
+
body: request_content,
|
435
|
+
headers: request_headers.merge(custom_headers || {}),
|
436
|
+
base_url: request_url
|
437
|
+
}
|
438
|
+
promise = @client.make_request_async(:put, path_template, options)
|
439
|
+
|
440
|
+
promise = promise.then do |result|
|
441
|
+
http_response = result.response
|
442
|
+
status_code = http_response.status
|
443
|
+
response_content = http_response.body
|
444
|
+
unless status_code == 200 || status_code == 201
|
445
|
+
error_model = JSON.load(response_content)
|
446
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
447
|
+
end
|
448
|
+
|
449
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
450
|
+
# Deserialize Response
|
451
|
+
if status_code == 200
|
452
|
+
begin
|
453
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
454
|
+
result_mapper = Azure::ARM::Redis::Models::RedisLinkedServerWithProperties.mapper()
|
455
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
456
|
+
rescue Exception => e
|
457
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
458
|
+
end
|
459
|
+
end
|
460
|
+
# Deserialize Response
|
461
|
+
if status_code == 201
|
462
|
+
begin
|
463
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
464
|
+
result_mapper = Azure::ARM::Redis::Models::RedisLinkedServerWithProperties.mapper()
|
465
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
466
|
+
rescue Exception => e
|
467
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
468
|
+
end
|
469
|
+
end
|
470
|
+
|
471
|
+
result
|
472
|
+
end
|
473
|
+
|
474
|
+
promise.execute
|
475
|
+
end
|
476
|
+
|
477
|
+
end
|
478
|
+
end
|