azure_mgmt_sql 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generated/azure_mgmt_sql.rb +63 -6
  3. data/lib/generated/azure_mgmt_sql/databases.rb +2170 -0
  4. data/lib/generated/azure_mgmt_sql/elastic_pools.rb +950 -0
  5. data/lib/generated/azure_mgmt_sql/models/column.rb +90 -0
  6. data/lib/generated/azure_mgmt_sql/models/create_mode.rb +21 -0
  7. data/lib/generated/azure_mgmt_sql/models/database.rb +366 -0
  8. data/lib/generated/azure_mgmt_sql/models/database_editions.rb +22 -0
  9. data/lib/generated/azure_mgmt_sql/models/database_list_result.rb +53 -0
  10. data/lib/generated/azure_mgmt_sql/models/database_metric.rb +100 -0
  11. data/lib/generated/azure_mgmt_sql/models/database_metric_list_result.rb +53 -0
  12. data/lib/generated/azure_mgmt_sql/models/elastic_pool.rb +158 -0
  13. data/lib/generated/azure_mgmt_sql/models/elastic_pool_activity.rb +257 -0
  14. data/lib/generated/azure_mgmt_sql/models/elastic_pool_activity_list_result.rb +54 -0
  15. data/lib/generated/azure_mgmt_sql/models/elastic_pool_database_activity.rb +249 -0
  16. data/lib/generated/azure_mgmt_sql/models/elastic_pool_database_activity_list_result.rb +54 -0
  17. data/lib/generated/azure_mgmt_sql/models/elastic_pool_editions.rb +17 -0
  18. data/lib/generated/azure_mgmt_sql/models/elastic_pool_list_result.rb +53 -0
  19. data/lib/generated/azure_mgmt_sql/models/{state.rb → elastic_pool_state.rb} +5 -5
  20. data/lib/generated/azure_mgmt_sql/models/operation_impact.rb +80 -0
  21. data/lib/generated/azure_mgmt_sql/models/recommended_database_properties.rb +68 -0
  22. data/lib/generated/azure_mgmt_sql/models/recommended_elastic_pool.rb +216 -0
  23. data/lib/generated/azure_mgmt_sql/models/recommended_elastic_pool_list_metrics_result.rb +54 -0
  24. data/lib/generated/azure_mgmt_sql/models/recommended_elastic_pool_list_result.rb +54 -0
  25. data/lib/generated/azure_mgmt_sql/models/recommended_elastic_pool_metric.rb +65 -0
  26. data/lib/generated/azure_mgmt_sql/models/recommended_index.rb +260 -0
  27. data/lib/generated/azure_mgmt_sql/models/recommended_index_actions.rb +17 -0
  28. data/lib/generated/azure_mgmt_sql/models/recommended_index_states.rb +25 -0
  29. data/lib/generated/azure_mgmt_sql/models/recommended_index_types.rb +18 -0
  30. data/lib/generated/azure_mgmt_sql/models/replication_link.rb +149 -0
  31. data/lib/generated/azure_mgmt_sql/models/replication_link_list_result.rb +54 -0
  32. data/lib/generated/azure_mgmt_sql/models/replication_role.rb +19 -0
  33. data/lib/generated/azure_mgmt_sql/models/replication_state.rb +18 -0
  34. data/lib/generated/azure_mgmt_sql/models/restore_point.rb +117 -0
  35. data/lib/generated/azure_mgmt_sql/models/restore_point_list_result.rb +54 -0
  36. data/lib/generated/azure_mgmt_sql/models/restore_point_types.rb +16 -0
  37. data/lib/generated/azure_mgmt_sql/models/schema.rb +98 -0
  38. data/lib/generated/azure_mgmt_sql/models/{server_security_alert_policy.rb → server.rb} +32 -37
  39. data/lib/generated/azure_mgmt_sql/models/server_firewall_rule.rb +95 -0
  40. data/lib/generated/azure_mgmt_sql/models/server_firewall_rule_list_result.rb +53 -0
  41. data/lib/generated/azure_mgmt_sql/models/server_list_result.rb +52 -0
  42. data/lib/generated/azure_mgmt_sql/models/server_metric.rb +100 -0
  43. data/lib/generated/azure_mgmt_sql/models/server_metric_list_result.rb +53 -0
  44. data/lib/generated/azure_mgmt_sql/models/server_version.rb +16 -0
  45. data/lib/generated/azure_mgmt_sql/models/service_objective.rb +107 -0
  46. data/lib/generated/azure_mgmt_sql/models/service_objective_list_result.rb +54 -0
  47. data/lib/generated/azure_mgmt_sql/models/service_objective_name.rb +22 -0
  48. data/lib/generated/azure_mgmt_sql/models/service_tier_advisor.rb +282 -0
  49. data/lib/generated/azure_mgmt_sql/models/service_tier_advisor_list_result.rb +53 -0
  50. data/lib/generated/azure_mgmt_sql/models/slo_usage_metric.rb +111 -0
  51. data/lib/generated/azure_mgmt_sql/models/sql_sub_resource.rb +56 -0
  52. data/lib/generated/azure_mgmt_sql/models/table.rb +131 -0
  53. data/lib/generated/azure_mgmt_sql/models/table_type.rb +16 -0
  54. data/lib/generated/azure_mgmt_sql/models/target_database_editions.rb +20 -0
  55. data/lib/generated/azure_mgmt_sql/models/target_elastic_pool_editions.rb +17 -0
  56. data/lib/generated/azure_mgmt_sql/models/transparent_data_encryption.rb +63 -0
  57. data/lib/generated/azure_mgmt_sql/models/transparent_data_encryption_activity.rb +74 -0
  58. data/lib/generated/azure_mgmt_sql/models/transparent_data_encryption_activity_list_result.rb +55 -0
  59. data/lib/generated/azure_mgmt_sql/models/transparent_data_encryption_activity_states.rb +16 -0
  60. data/lib/generated/azure_mgmt_sql/models/{email_account_admins.rb → transparent_data_encryption_states.rb} +3 -3
  61. data/lib/generated/azure_mgmt_sql/models/upgrade_hint.rb +99 -0
  62. data/lib/generated/azure_mgmt_sql/models/upgrade_recommended_elastic_pool_properties.rb +132 -0
  63. data/lib/generated/azure_mgmt_sql/module_definition.rb +1 -1
  64. data/lib/generated/azure_mgmt_sql/recommended_elastic_pools.rb +555 -0
  65. data/lib/generated/azure_mgmt_sql/servers.rb +1233 -0
  66. data/lib/generated/azure_mgmt_sql/sql_management_client.rb +31 -10
  67. data/lib/generated/azure_mgmt_sql/version.rb +2 -2
  68. metadata +66 -9
  69. data/lib/generated/azure_mgmt_sql/models/server_security_alert_policy_create_or_update_parameters.rb +0 -85
  70. data/lib/generated/azure_mgmt_sql/security_alert_policy.rb +0 -296
@@ -0,0 +1,1233 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.0.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::SQL
7
+ #
8
+ # The Azure SQL Database management API provides a RESTful set of web
9
+ # services that interact with Azure SQL Database services to manage your
10
+ # databases. The API enables you to create, retrieve, update, and delete
11
+ # databases.
12
+ #
13
+ class Servers
14
+ include Azure::ARM::SQL::Models
15
+ include MsRestAzure
16
+
17
+ #
18
+ # Creates and initializes a new instance of the Servers class.
19
+ # @param client service class for accessing basic functionality.
20
+ #
21
+ def initialize(client)
22
+ @client = client
23
+ end
24
+
25
+ # @return [SqlManagementClient] reference to the SqlManagementClient
26
+ attr_reader :client
27
+
28
+ #
29
+ # Creates or updates an Azure SQL server firewall rule.
30
+ #
31
+ # @param resource_group_name [String] The name of the resource group that
32
+ # contains the resource. You can obtain this value from the Azure Resource
33
+ # Manager API or the portal.
34
+ # @param server_name [String] The name of the Azure SQL server.
35
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
36
+ # rule.
37
+ # @param parameters [ServerFirewallRule] The required parameters for creating
38
+ # or updating a firewall rule.
39
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
40
+ # will be added to the HTTP request.
41
+ #
42
+ # @return [ServerFirewallRule] operation results.
43
+ #
44
+ def create_or_update_firewall_rule(resource_group_name, server_name, firewall_rule_name, parameters, custom_headers = nil)
45
+ response = create_or_update_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, parameters, custom_headers).value!
46
+ response.body unless response.nil?
47
+ end
48
+
49
+ #
50
+ # Creates or updates an Azure SQL server firewall rule.
51
+ #
52
+ # @param resource_group_name [String] The name of the resource group that
53
+ # contains the resource. You can obtain this value from the Azure Resource
54
+ # Manager API or the portal.
55
+ # @param server_name [String] The name of the Azure SQL server.
56
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
57
+ # rule.
58
+ # @param parameters [ServerFirewallRule] The required parameters for creating
59
+ # or updating a firewall rule.
60
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
61
+ # will be added to the HTTP request.
62
+ #
63
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
64
+ #
65
+ def create_or_update_firewall_rule_with_http_info(resource_group_name, server_name, firewall_rule_name, parameters, custom_headers = nil)
66
+ create_or_update_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, parameters, custom_headers).value!
67
+ end
68
+
69
+ #
70
+ # Creates or updates an Azure SQL server firewall rule.
71
+ #
72
+ # @param resource_group_name [String] The name of the resource group that
73
+ # contains the resource. You can obtain this value from the Azure Resource
74
+ # Manager API or the portal.
75
+ # @param server_name [String] The name of the Azure SQL server.
76
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
77
+ # rule.
78
+ # @param parameters [ServerFirewallRule] The required parameters for creating
79
+ # or updating a firewall rule.
80
+ # @param [Hash{String => String}] A hash of custom headers that will be added
81
+ # to the HTTP request.
82
+ #
83
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
84
+ #
85
+ def create_or_update_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, parameters, custom_headers = nil)
86
+ api_version = '2014-04-01'
87
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
88
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
89
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
90
+ fail ArgumentError, 'firewall_rule_name is nil' if firewall_rule_name.nil?
91
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
92
+
93
+
94
+ request_headers = {}
95
+
96
+ # Set Headers
97
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
98
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
99
+
100
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
101
+
102
+ # Serialize Request
103
+ request_mapper = ServerFirewallRule.mapper()
104
+ request_content = @client.serialize(request_mapper, parameters, 'parameters')
105
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
106
+
107
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/firewallRules/{firewallRuleName}'
108
+
109
+ request_url = @base_url || @client.base_url
110
+
111
+ options = {
112
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
113
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name,'firewallRuleName' => firewall_rule_name},
114
+ query_params: {'api-version' => api_version},
115
+ body: request_content,
116
+ headers: request_headers.merge(custom_headers || {}),
117
+ base_url: request_url
118
+ }
119
+ promise = @client.make_request_async(:put, path_template, options)
120
+
121
+ promise = promise.then do |result|
122
+ http_response = result.response
123
+ status_code = http_response.status
124
+ response_content = http_response.body
125
+ unless status_code == 200 || status_code == 201
126
+ error_model = JSON.load(response_content)
127
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
128
+ end
129
+
130
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
131
+ # Deserialize Response
132
+ if status_code == 200
133
+ begin
134
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
135
+ result_mapper = ServerFirewallRule.mapper()
136
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
137
+ rescue Exception => e
138
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
139
+ end
140
+ end
141
+ # Deserialize Response
142
+ if status_code == 201
143
+ begin
144
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
145
+ result_mapper = ServerFirewallRule.mapper()
146
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
147
+ rescue Exception => e
148
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
149
+ end
150
+ end
151
+
152
+ result
153
+ end
154
+
155
+ promise.execute
156
+ end
157
+
158
+ #
159
+ # Deletes an Azure SQL server firewall rule.
160
+ #
161
+ # @param resource_group_name [String] The name of the resource group that
162
+ # contains the resource. You can obtain this value from the Azure Resource
163
+ # Manager API or the portal.
164
+ # @param server_name [String] The name of the Azure SQL server.
165
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
166
+ # rule.
167
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
168
+ # will be added to the HTTP request.
169
+ #
170
+ #
171
+ def delete_firewall_rule(resource_group_name, server_name, firewall_rule_name, custom_headers = nil)
172
+ response = delete_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, custom_headers).value!
173
+ nil
174
+ end
175
+
176
+ #
177
+ # Deletes an Azure SQL server firewall rule.
178
+ #
179
+ # @param resource_group_name [String] The name of the resource group that
180
+ # contains the resource. You can obtain this value from the Azure Resource
181
+ # Manager API or the portal.
182
+ # @param server_name [String] The name of the Azure SQL server.
183
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
184
+ # rule.
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 delete_firewall_rule_with_http_info(resource_group_name, server_name, firewall_rule_name, custom_headers = nil)
191
+ delete_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, custom_headers).value!
192
+ end
193
+
194
+ #
195
+ # Deletes an Azure SQL server firewall rule.
196
+ #
197
+ # @param resource_group_name [String] The name of the resource group that
198
+ # contains the resource. You can obtain this value from the Azure Resource
199
+ # Manager API or the portal.
200
+ # @param server_name [String] The name of the Azure SQL server.
201
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
202
+ # rule.
203
+ # @param [Hash{String => String}] A hash of custom headers that will be added
204
+ # to the HTTP request.
205
+ #
206
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
207
+ #
208
+ def delete_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, custom_headers = nil)
209
+ api_version = '2014-04-01'
210
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
211
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
212
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
213
+ fail ArgumentError, 'firewall_rule_name is nil' if firewall_rule_name.nil?
214
+
215
+
216
+ request_headers = {}
217
+
218
+ # Set Headers
219
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
220
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
221
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/firewallRules/{firewallRuleName}'
222
+
223
+ request_url = @base_url || @client.base_url
224
+
225
+ options = {
226
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
227
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name,'firewallRuleName' => firewall_rule_name},
228
+ query_params: {'api-version' => api_version},
229
+ headers: request_headers.merge(custom_headers || {}),
230
+ base_url: request_url
231
+ }
232
+ promise = @client.make_request_async(:delete, path_template, options)
233
+
234
+ promise = promise.then do |result|
235
+ http_response = result.response
236
+ status_code = http_response.status
237
+ response_content = http_response.body
238
+ unless status_code == 200 || status_code == 204
239
+ error_model = JSON.load(response_content)
240
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
241
+ end
242
+
243
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
244
+
245
+ result
246
+ end
247
+
248
+ promise.execute
249
+ end
250
+
251
+ #
252
+ # Returns an Azure SQL server firewall rule.
253
+ #
254
+ # @param resource_group_name [String] The name of the resource group that
255
+ # contains the resource. You can obtain this value from the Azure Resource
256
+ # Manager API or the portal.
257
+ # @param server_name [String] The name of the Azure SQL server.
258
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
259
+ # rule.
260
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
261
+ # will be added to the HTTP request.
262
+ #
263
+ # @return [ServerFirewallRule] operation results.
264
+ #
265
+ def get_firewall_rule(resource_group_name, server_name, firewall_rule_name, custom_headers = nil)
266
+ response = get_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, custom_headers).value!
267
+ response.body unless response.nil?
268
+ end
269
+
270
+ #
271
+ # Returns an Azure SQL server firewall rule.
272
+ #
273
+ # @param resource_group_name [String] The name of the resource group that
274
+ # contains the resource. You can obtain this value from the Azure Resource
275
+ # Manager API or the portal.
276
+ # @param server_name [String] The name of the Azure SQL server.
277
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
278
+ # rule.
279
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
280
+ # will be added to the HTTP request.
281
+ #
282
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
283
+ #
284
+ def get_firewall_rule_with_http_info(resource_group_name, server_name, firewall_rule_name, custom_headers = nil)
285
+ get_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, custom_headers).value!
286
+ end
287
+
288
+ #
289
+ # Returns an Azure SQL server firewall rule.
290
+ #
291
+ # @param resource_group_name [String] The name of the resource group that
292
+ # contains the resource. You can obtain this value from the Azure Resource
293
+ # Manager API or the portal.
294
+ # @param server_name [String] The name of the Azure SQL server.
295
+ # @param firewall_rule_name [String] The name of the Azure SQL server firewall
296
+ # rule.
297
+ # @param [Hash{String => String}] A hash of custom headers that will be added
298
+ # to the HTTP request.
299
+ #
300
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
301
+ #
302
+ def get_firewall_rule_async(resource_group_name, server_name, firewall_rule_name, custom_headers = nil)
303
+ api_version = '2014-04-01'
304
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
305
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
306
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
307
+ fail ArgumentError, 'firewall_rule_name is nil' if firewall_rule_name.nil?
308
+
309
+
310
+ request_headers = {}
311
+
312
+ # Set Headers
313
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
314
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
315
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/firewallRules/{firewallRuleName}'
316
+
317
+ request_url = @base_url || @client.base_url
318
+
319
+ options = {
320
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
321
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name,'firewallRuleName' => firewall_rule_name},
322
+ query_params: {'api-version' => api_version},
323
+ headers: request_headers.merge(custom_headers || {}),
324
+ base_url: request_url
325
+ }
326
+ promise = @client.make_request_async(:get, path_template, options)
327
+
328
+ promise = promise.then do |result|
329
+ http_response = result.response
330
+ status_code = http_response.status
331
+ response_content = http_response.body
332
+ unless status_code == 200
333
+ error_model = JSON.load(response_content)
334
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
335
+ end
336
+
337
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
338
+ # Deserialize Response
339
+ if status_code == 200
340
+ begin
341
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
342
+ result_mapper = ServerFirewallRule.mapper()
343
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
344
+ rescue Exception => e
345
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
346
+ end
347
+ end
348
+
349
+ result
350
+ end
351
+
352
+ promise.execute
353
+ end
354
+
355
+ #
356
+ # Returns a list of Azure SQL server firewall rules.
357
+ #
358
+ # @param resource_group_name [String] The name of the resource group that
359
+ # contains the resource. You can obtain this value from the Azure Resource
360
+ # Manager API or the portal.
361
+ # @param server_name [String] The name of the Azure SQL server.
362
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
363
+ # will be added to the HTTP request.
364
+ #
365
+ # @return [ServerFirewallRuleListResult] operation results.
366
+ #
367
+ def list_firewall_rules(resource_group_name, server_name, custom_headers = nil)
368
+ response = list_firewall_rules_async(resource_group_name, server_name, custom_headers).value!
369
+ response.body unless response.nil?
370
+ end
371
+
372
+ #
373
+ # Returns a list of Azure SQL server firewall rules.
374
+ #
375
+ # @param resource_group_name [String] The name of the resource group that
376
+ # contains the resource. You can obtain this value from the Azure Resource
377
+ # Manager API or the portal.
378
+ # @param server_name [String] The name of the Azure SQL server.
379
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
380
+ # will be added to the HTTP request.
381
+ #
382
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
383
+ #
384
+ def list_firewall_rules_with_http_info(resource_group_name, server_name, custom_headers = nil)
385
+ list_firewall_rules_async(resource_group_name, server_name, custom_headers).value!
386
+ end
387
+
388
+ #
389
+ # Returns a list of Azure SQL server firewall rules.
390
+ #
391
+ # @param resource_group_name [String] The name of the resource group that
392
+ # contains the resource. You can obtain this value from the Azure Resource
393
+ # Manager API or the portal.
394
+ # @param server_name [String] The name of the Azure SQL server.
395
+ # @param [Hash{String => String}] A hash of custom headers that will be added
396
+ # to the HTTP request.
397
+ #
398
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
399
+ #
400
+ def list_firewall_rules_async(resource_group_name, server_name, custom_headers = nil)
401
+ api_version = '2014-04-01'
402
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
403
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
404
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
405
+
406
+
407
+ request_headers = {}
408
+
409
+ # Set Headers
410
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
411
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
412
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/firewallRules'
413
+
414
+ request_url = @base_url || @client.base_url
415
+
416
+ options = {
417
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
418
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name},
419
+ query_params: {'api-version' => api_version},
420
+ headers: request_headers.merge(custom_headers || {}),
421
+ base_url: request_url
422
+ }
423
+ promise = @client.make_request_async(:get, path_template, options)
424
+
425
+ promise = promise.then do |result|
426
+ http_response = result.response
427
+ status_code = http_response.status
428
+ response_content = http_response.body
429
+ unless status_code == 200
430
+ error_model = JSON.load(response_content)
431
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
432
+ end
433
+
434
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
435
+ # Deserialize Response
436
+ if status_code == 200
437
+ begin
438
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
439
+ result_mapper = ServerFirewallRuleListResult.mapper()
440
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
441
+ rescue Exception => e
442
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
443
+ end
444
+ end
445
+
446
+ result
447
+ end
448
+
449
+ promise.execute
450
+ end
451
+
452
+ #
453
+ # Returns information about an Azure SQL server.
454
+ #
455
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
456
+ # will be added to the HTTP request.
457
+ #
458
+ # @return [ServerListResult] operation results.
459
+ #
460
+ def list(custom_headers = nil)
461
+ response = list_async(custom_headers).value!
462
+ response.body unless response.nil?
463
+ end
464
+
465
+ #
466
+ # Returns information about an Azure SQL server.
467
+ #
468
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
469
+ # will be added to the HTTP request.
470
+ #
471
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
472
+ #
473
+ def list_with_http_info(custom_headers = nil)
474
+ list_async(custom_headers).value!
475
+ end
476
+
477
+ #
478
+ # Returns information about an Azure SQL server.
479
+ #
480
+ # @param [Hash{String => String}] A hash of custom headers that will be added
481
+ # to the HTTP request.
482
+ #
483
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
484
+ #
485
+ def list_async(custom_headers = nil)
486
+ api_version = '2014-04-01'
487
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
488
+
489
+
490
+ request_headers = {}
491
+
492
+ # Set Headers
493
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
494
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
495
+ path_template = '/subscriptions/{subscriptionId}/providers/Microsoft.Sql/servers'
496
+
497
+ request_url = @base_url || @client.base_url
498
+
499
+ options = {
500
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
501
+ path_params: {'subscriptionId' => @client.subscription_id},
502
+ query_params: {'api-version' => api_version},
503
+ headers: request_headers.merge(custom_headers || {}),
504
+ base_url: request_url
505
+ }
506
+ promise = @client.make_request_async(:get, path_template, options)
507
+
508
+ promise = promise.then do |result|
509
+ http_response = result.response
510
+ status_code = http_response.status
511
+ response_content = http_response.body
512
+ unless status_code == 200
513
+ error_model = JSON.load(response_content)
514
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
515
+ end
516
+
517
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
518
+ # Deserialize Response
519
+ if status_code == 200
520
+ begin
521
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
522
+ result_mapper = ServerListResult.mapper()
523
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
524
+ rescue Exception => e
525
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
526
+ end
527
+ end
528
+
529
+ result
530
+ end
531
+
532
+ promise.execute
533
+ end
534
+
535
+ #
536
+ # Creates a new Azure SQL server.
537
+ #
538
+ # @param resource_group_name [String] The name of the resource group that
539
+ # contains the resource. You can obtain this value from the Azure Resource
540
+ # Manager API or the portal.
541
+ # @param server_name [String] The name of the Azure SQL server.
542
+ # @param parameters [Server] The required parameters for creating or updating a
543
+ # server.
544
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
545
+ # will be added to the HTTP request.
546
+ #
547
+ # @return [Server] operation results.
548
+ #
549
+ def create_or_update(resource_group_name, server_name, parameters, custom_headers = nil)
550
+ response = create_or_update_async(resource_group_name, server_name, parameters, custom_headers).value!
551
+ response.body unless response.nil?
552
+ end
553
+
554
+ #
555
+ # Creates a new Azure SQL server.
556
+ #
557
+ # @param resource_group_name [String] The name of the resource group that
558
+ # contains the resource. You can obtain this value from the Azure Resource
559
+ # Manager API or the portal.
560
+ # @param server_name [String] The name of the Azure SQL server.
561
+ # @param parameters [Server] The required parameters for creating or updating a
562
+ # server.
563
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
564
+ # will be added to the HTTP request.
565
+ #
566
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
567
+ #
568
+ def create_or_update_with_http_info(resource_group_name, server_name, parameters, custom_headers = nil)
569
+ create_or_update_async(resource_group_name, server_name, parameters, custom_headers).value!
570
+ end
571
+
572
+ #
573
+ # Creates a new Azure SQL server.
574
+ #
575
+ # @param resource_group_name [String] The name of the resource group that
576
+ # contains the resource. You can obtain this value from the Azure Resource
577
+ # Manager API or the portal.
578
+ # @param server_name [String] The name of the Azure SQL server.
579
+ # @param parameters [Server] The required parameters for creating or updating a
580
+ # server.
581
+ # @param [Hash{String => String}] A hash of custom headers that will be added
582
+ # to the HTTP request.
583
+ #
584
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
585
+ #
586
+ def create_or_update_async(resource_group_name, server_name, parameters, custom_headers = nil)
587
+ api_version = '2014-04-01'
588
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
589
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
590
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
591
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
592
+
593
+
594
+ request_headers = {}
595
+
596
+ # Set Headers
597
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
598
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
599
+
600
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
601
+
602
+ # Serialize Request
603
+ request_mapper = Server.mapper()
604
+ request_content = @client.serialize(request_mapper, parameters, 'parameters')
605
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
606
+
607
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}'
608
+
609
+ request_url = @base_url || @client.base_url
610
+
611
+ options = {
612
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
613
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name},
614
+ query_params: {'api-version' => api_version},
615
+ body: request_content,
616
+ headers: request_headers.merge(custom_headers || {}),
617
+ base_url: request_url
618
+ }
619
+ promise = @client.make_request_async(:put, path_template, options)
620
+
621
+ promise = promise.then do |result|
622
+ http_response = result.response
623
+ status_code = http_response.status
624
+ response_content = http_response.body
625
+ unless status_code == 200 || status_code == 201
626
+ error_model = JSON.load(response_content)
627
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
628
+ end
629
+
630
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
631
+ # Deserialize Response
632
+ if status_code == 200
633
+ begin
634
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
635
+ result_mapper = Server.mapper()
636
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
637
+ rescue Exception => e
638
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
639
+ end
640
+ end
641
+ # Deserialize Response
642
+ if status_code == 201
643
+ begin
644
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
645
+ result_mapper = Server.mapper()
646
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
647
+ rescue Exception => e
648
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
649
+ end
650
+ end
651
+
652
+ result
653
+ end
654
+
655
+ promise.execute
656
+ end
657
+
658
+ #
659
+ # Deletes a SQL server.
660
+ #
661
+ # @param resource_group_name [String] The name of the resource group that
662
+ # contains the resource. You can obtain this value from the Azure Resource
663
+ # Manager API or the portal.
664
+ # @param server_name [String] The name of the Azure SQL server.
665
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
666
+ # will be added to the HTTP request.
667
+ #
668
+ #
669
+ def delete(resource_group_name, server_name, custom_headers = nil)
670
+ response = delete_async(resource_group_name, server_name, custom_headers).value!
671
+ nil
672
+ end
673
+
674
+ #
675
+ # Deletes a SQL server.
676
+ #
677
+ # @param resource_group_name [String] The name of the resource group that
678
+ # contains the resource. You can obtain this value from the Azure Resource
679
+ # Manager API or the portal.
680
+ # @param server_name [String] The name of the Azure SQL server.
681
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
682
+ # will be added to the HTTP request.
683
+ #
684
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
685
+ #
686
+ def delete_with_http_info(resource_group_name, server_name, custom_headers = nil)
687
+ delete_async(resource_group_name, server_name, custom_headers).value!
688
+ end
689
+
690
+ #
691
+ # Deletes a SQL server.
692
+ #
693
+ # @param resource_group_name [String] The name of the resource group that
694
+ # contains the resource. You can obtain this value from the Azure Resource
695
+ # Manager API or the portal.
696
+ # @param server_name [String] The name of the Azure SQL server.
697
+ # @param [Hash{String => String}] A hash of custom headers that will be added
698
+ # to the HTTP request.
699
+ #
700
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
701
+ #
702
+ def delete_async(resource_group_name, server_name, custom_headers = nil)
703
+ api_version = '2014-04-01'
704
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
705
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
706
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
707
+
708
+
709
+ request_headers = {}
710
+
711
+ # Set Headers
712
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
713
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
714
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}'
715
+
716
+ request_url = @base_url || @client.base_url
717
+
718
+ options = {
719
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
720
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name},
721
+ query_params: {'api-version' => api_version},
722
+ headers: request_headers.merge(custom_headers || {}),
723
+ base_url: request_url
724
+ }
725
+ promise = @client.make_request_async(:delete, path_template, options)
726
+
727
+ promise = promise.then do |result|
728
+ http_response = result.response
729
+ status_code = http_response.status
730
+ response_content = http_response.body
731
+ unless status_code == 200 || status_code == 204
732
+ error_model = JSON.load(response_content)
733
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
734
+ end
735
+
736
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
737
+
738
+ result
739
+ end
740
+
741
+ promise.execute
742
+ end
743
+
744
+ #
745
+ # Gets information about an Azure SQL server.
746
+ #
747
+ # @param resource_group_name [String] The name of the resource group that
748
+ # contains the resource. You can obtain this value from the Azure Resource
749
+ # Manager API or the portal.
750
+ # @param server_name [String] The name of the Azure SQL server.
751
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
752
+ # will be added to the HTTP request.
753
+ #
754
+ # @return [Server] operation results.
755
+ #
756
+ def get_by_resource_group(resource_group_name, server_name, custom_headers = nil)
757
+ response = get_by_resource_group_async(resource_group_name, server_name, custom_headers).value!
758
+ response.body unless response.nil?
759
+ end
760
+
761
+ #
762
+ # Gets information about an Azure SQL server.
763
+ #
764
+ # @param resource_group_name [String] The name of the resource group that
765
+ # contains the resource. You can obtain this value from the Azure Resource
766
+ # Manager API or the portal.
767
+ # @param server_name [String] The name of the Azure SQL server.
768
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
769
+ # will be added to the HTTP request.
770
+ #
771
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
772
+ #
773
+ def get_by_resource_group_with_http_info(resource_group_name, server_name, custom_headers = nil)
774
+ get_by_resource_group_async(resource_group_name, server_name, custom_headers).value!
775
+ end
776
+
777
+ #
778
+ # Gets information about an Azure SQL server.
779
+ #
780
+ # @param resource_group_name [String] The name of the resource group that
781
+ # contains the resource. You can obtain this value from the Azure Resource
782
+ # Manager API or the portal.
783
+ # @param server_name [String] The name of the Azure SQL server.
784
+ # @param [Hash{String => String}] A hash of custom headers that will be added
785
+ # to the HTTP request.
786
+ #
787
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
788
+ #
789
+ def get_by_resource_group_async(resource_group_name, server_name, custom_headers = nil)
790
+ api_version = '2014-04-01'
791
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
792
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
793
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
794
+
795
+
796
+ request_headers = {}
797
+
798
+ # Set Headers
799
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
800
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
801
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}'
802
+
803
+ request_url = @base_url || @client.base_url
804
+
805
+ options = {
806
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
807
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name},
808
+ query_params: {'api-version' => api_version},
809
+ headers: request_headers.merge(custom_headers || {}),
810
+ base_url: request_url
811
+ }
812
+ promise = @client.make_request_async(:get, path_template, options)
813
+
814
+ promise = promise.then do |result|
815
+ http_response = result.response
816
+ status_code = http_response.status
817
+ response_content = http_response.body
818
+ unless status_code == 200
819
+ error_model = JSON.load(response_content)
820
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
821
+ end
822
+
823
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
824
+ # Deserialize Response
825
+ if status_code == 200
826
+ begin
827
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
828
+ result_mapper = Server.mapper()
829
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
830
+ rescue Exception => e
831
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
832
+ end
833
+ end
834
+
835
+ result
836
+ end
837
+
838
+ promise.execute
839
+ end
840
+
841
+ #
842
+ # Returns information about an Azure SQL server.
843
+ #
844
+ # @param resource_group_name [String] The name of the resource group that
845
+ # contains the resource. You can obtain this value from the Azure Resource
846
+ # Manager API or the portal.
847
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
848
+ # will be added to the HTTP request.
849
+ #
850
+ # @return [ServerListResult] operation results.
851
+ #
852
+ def list_by_resource_group(resource_group_name, custom_headers = nil)
853
+ response = list_by_resource_group_async(resource_group_name, custom_headers).value!
854
+ response.body unless response.nil?
855
+ end
856
+
857
+ #
858
+ # Returns information about an Azure SQL server.
859
+ #
860
+ # @param resource_group_name [String] The name of the resource group that
861
+ # contains the resource. You can obtain this value from the Azure Resource
862
+ # Manager API or the portal.
863
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
864
+ # will be added to the HTTP request.
865
+ #
866
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
867
+ #
868
+ def list_by_resource_group_with_http_info(resource_group_name, custom_headers = nil)
869
+ list_by_resource_group_async(resource_group_name, custom_headers).value!
870
+ end
871
+
872
+ #
873
+ # Returns information about an Azure SQL server.
874
+ #
875
+ # @param resource_group_name [String] The name of the resource group that
876
+ # contains the resource. You can obtain this value from the Azure Resource
877
+ # Manager API or the portal.
878
+ # @param [Hash{String => String}] A hash of custom headers that will be added
879
+ # to the HTTP request.
880
+ #
881
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
882
+ #
883
+ def list_by_resource_group_async(resource_group_name, custom_headers = nil)
884
+ api_version = '2014-04-01'
885
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
886
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
887
+
888
+
889
+ request_headers = {}
890
+
891
+ # Set Headers
892
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
893
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
894
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers'
895
+
896
+ request_url = @base_url || @client.base_url
897
+
898
+ options = {
899
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
900
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name},
901
+ query_params: {'api-version' => api_version},
902
+ headers: request_headers.merge(custom_headers || {}),
903
+ base_url: request_url
904
+ }
905
+ promise = @client.make_request_async(:get, path_template, options)
906
+
907
+ promise = promise.then do |result|
908
+ http_response = result.response
909
+ status_code = http_response.status
910
+ response_content = http_response.body
911
+ unless status_code == 200
912
+ error_model = JSON.load(response_content)
913
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
914
+ end
915
+
916
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
917
+ # Deserialize Response
918
+ if status_code == 200
919
+ begin
920
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
921
+ result_mapper = ServerListResult.mapper()
922
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
923
+ rescue Exception => e
924
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
925
+ end
926
+ end
927
+
928
+ result
929
+ end
930
+
931
+ promise.execute
932
+ end
933
+
934
+ #
935
+ # Returns information about Azure SQL server usage.
936
+ #
937
+ # @param resource_group_name [String] The name of the resource group that
938
+ # contains the resource. You can obtain this value from the Azure Resource
939
+ # Manager API or the portal.
940
+ # @param server_name [String] The name of the Azure SQL server.
941
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
942
+ # will be added to the HTTP request.
943
+ #
944
+ # @return [ServerMetricListResult] operation results.
945
+ #
946
+ def list_usages(resource_group_name, server_name, custom_headers = nil)
947
+ response = list_usages_async(resource_group_name, server_name, custom_headers).value!
948
+ response.body unless response.nil?
949
+ end
950
+
951
+ #
952
+ # Returns information about Azure SQL server usage.
953
+ #
954
+ # @param resource_group_name [String] The name of the resource group that
955
+ # contains the resource. You can obtain this value from the Azure Resource
956
+ # Manager API or the portal.
957
+ # @param server_name [String] The name of the Azure SQL server.
958
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
959
+ # will be added to the HTTP request.
960
+ #
961
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
962
+ #
963
+ def list_usages_with_http_info(resource_group_name, server_name, custom_headers = nil)
964
+ list_usages_async(resource_group_name, server_name, custom_headers).value!
965
+ end
966
+
967
+ #
968
+ # Returns information about Azure SQL server usage.
969
+ #
970
+ # @param resource_group_name [String] The name of the resource group that
971
+ # contains the resource. You can obtain this value from the Azure Resource
972
+ # Manager API or the portal.
973
+ # @param server_name [String] The name of the Azure SQL server.
974
+ # @param [Hash{String => String}] A hash of custom headers that will be added
975
+ # to the HTTP request.
976
+ #
977
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
978
+ #
979
+ def list_usages_async(resource_group_name, server_name, custom_headers = nil)
980
+ api_version = '2014-04-01'
981
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
982
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
983
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
984
+
985
+
986
+ request_headers = {}
987
+
988
+ # Set Headers
989
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
990
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
991
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/usages'
992
+
993
+ request_url = @base_url || @client.base_url
994
+
995
+ options = {
996
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
997
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name},
998
+ query_params: {'api-version' => api_version},
999
+ headers: request_headers.merge(custom_headers || {}),
1000
+ base_url: request_url
1001
+ }
1002
+ promise = @client.make_request_async(:get, path_template, options)
1003
+
1004
+ promise = promise.then do |result|
1005
+ http_response = result.response
1006
+ status_code = http_response.status
1007
+ response_content = http_response.body
1008
+ unless status_code == 200
1009
+ error_model = JSON.load(response_content)
1010
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1011
+ end
1012
+
1013
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1014
+ # Deserialize Response
1015
+ if status_code == 200
1016
+ begin
1017
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1018
+ result_mapper = ServerMetricListResult.mapper()
1019
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
1020
+ rescue Exception => e
1021
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1022
+ end
1023
+ end
1024
+
1025
+ result
1026
+ end
1027
+
1028
+ promise.execute
1029
+ end
1030
+
1031
+ #
1032
+ # Gets information about an Azure SQL database Service Objective.
1033
+ #
1034
+ # @param resource_group_name [String] The name of the resource group that
1035
+ # contains the resource. You can obtain this value from the Azure Resource
1036
+ # Manager API or the portal.
1037
+ # @param server_name [String] The name of the Azure SQL server.
1038
+ # @param service_objective_name [String] The name of the service objective to
1039
+ # retrieve.
1040
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1041
+ # will be added to the HTTP request.
1042
+ #
1043
+ # @return [ServiceObjective] operation results.
1044
+ #
1045
+ def get_service_objective(resource_group_name, server_name, service_objective_name, custom_headers = nil)
1046
+ response = get_service_objective_async(resource_group_name, server_name, service_objective_name, custom_headers).value!
1047
+ response.body unless response.nil?
1048
+ end
1049
+
1050
+ #
1051
+ # Gets information about an Azure SQL database Service Objective.
1052
+ #
1053
+ # @param resource_group_name [String] The name of the resource group that
1054
+ # contains the resource. You can obtain this value from the Azure Resource
1055
+ # Manager API or the portal.
1056
+ # @param server_name [String] The name of the Azure SQL server.
1057
+ # @param service_objective_name [String] The name of the service objective to
1058
+ # retrieve.
1059
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1060
+ # will be added to the HTTP request.
1061
+ #
1062
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1063
+ #
1064
+ def get_service_objective_with_http_info(resource_group_name, server_name, service_objective_name, custom_headers = nil)
1065
+ get_service_objective_async(resource_group_name, server_name, service_objective_name, custom_headers).value!
1066
+ end
1067
+
1068
+ #
1069
+ # Gets information about an Azure SQL database Service Objective.
1070
+ #
1071
+ # @param resource_group_name [String] The name of the resource group that
1072
+ # contains the resource. You can obtain this value from the Azure Resource
1073
+ # Manager API or the portal.
1074
+ # @param server_name [String] The name of the Azure SQL server.
1075
+ # @param service_objective_name [String] The name of the service objective to
1076
+ # retrieve.
1077
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1078
+ # to the HTTP request.
1079
+ #
1080
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1081
+ #
1082
+ def get_service_objective_async(resource_group_name, server_name, service_objective_name, custom_headers = nil)
1083
+ api_version = '2014-04-01'
1084
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1085
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1086
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
1087
+ fail ArgumentError, 'service_objective_name is nil' if service_objective_name.nil?
1088
+
1089
+
1090
+ request_headers = {}
1091
+
1092
+ # Set Headers
1093
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1094
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1095
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/serviceObjectives/{serviceObjectiveName}'
1096
+
1097
+ request_url = @base_url || @client.base_url
1098
+
1099
+ options = {
1100
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1101
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name,'serviceObjectiveName' => service_objective_name},
1102
+ query_params: {'api-version' => api_version},
1103
+ headers: request_headers.merge(custom_headers || {}),
1104
+ base_url: request_url
1105
+ }
1106
+ promise = @client.make_request_async(:get, path_template, options)
1107
+
1108
+ promise = promise.then do |result|
1109
+ http_response = result.response
1110
+ status_code = http_response.status
1111
+ response_content = http_response.body
1112
+ unless status_code == 200
1113
+ error_model = JSON.load(response_content)
1114
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1115
+ end
1116
+
1117
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1118
+ # Deserialize Response
1119
+ if status_code == 200
1120
+ begin
1121
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1122
+ result_mapper = ServiceObjective.mapper()
1123
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
1124
+ rescue Exception => e
1125
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1126
+ end
1127
+ end
1128
+
1129
+ result
1130
+ end
1131
+
1132
+ promise.execute
1133
+ end
1134
+
1135
+ #
1136
+ # Returns information about Azure SQL database Service Objectives.
1137
+ #
1138
+ # @param resource_group_name [String] The name of the resource group that
1139
+ # contains the resource. You can obtain this value from the Azure Resource
1140
+ # Manager API or the portal.
1141
+ # @param server_name [String] The name of the Azure SQL server.
1142
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1143
+ # will be added to the HTTP request.
1144
+ #
1145
+ # @return [ServiceObjectiveListResult] operation results.
1146
+ #
1147
+ def list_service_objectives(resource_group_name, server_name, custom_headers = nil)
1148
+ response = list_service_objectives_async(resource_group_name, server_name, custom_headers).value!
1149
+ response.body unless response.nil?
1150
+ end
1151
+
1152
+ #
1153
+ # Returns information about Azure SQL database Service Objectives.
1154
+ #
1155
+ # @param resource_group_name [String] The name of the resource group that
1156
+ # contains the resource. You can obtain this value from the Azure Resource
1157
+ # Manager API or the portal.
1158
+ # @param server_name [String] The name of the Azure SQL server.
1159
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1160
+ # will be added to the HTTP request.
1161
+ #
1162
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1163
+ #
1164
+ def list_service_objectives_with_http_info(resource_group_name, server_name, custom_headers = nil)
1165
+ list_service_objectives_async(resource_group_name, server_name, custom_headers).value!
1166
+ end
1167
+
1168
+ #
1169
+ # Returns information about Azure SQL database Service Objectives.
1170
+ #
1171
+ # @param resource_group_name [String] The name of the resource group that
1172
+ # contains the resource. You can obtain this value from the Azure Resource
1173
+ # Manager API or the portal.
1174
+ # @param server_name [String] The name of the Azure SQL server.
1175
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1176
+ # to the HTTP request.
1177
+ #
1178
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1179
+ #
1180
+ def list_service_objectives_async(resource_group_name, server_name, custom_headers = nil)
1181
+ api_version = '2014-04-01'
1182
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
1183
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
1184
+ fail ArgumentError, 'server_name is nil' if server_name.nil?
1185
+
1186
+
1187
+ request_headers = {}
1188
+
1189
+ # Set Headers
1190
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1191
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1192
+ path_template = '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/serviceObjectives'
1193
+
1194
+ request_url = @base_url || @client.base_url
1195
+
1196
+ options = {
1197
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1198
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'serverName' => server_name},
1199
+ query_params: {'api-version' => api_version},
1200
+ headers: request_headers.merge(custom_headers || {}),
1201
+ base_url: request_url
1202
+ }
1203
+ promise = @client.make_request_async(:get, path_template, options)
1204
+
1205
+ promise = promise.then do |result|
1206
+ http_response = result.response
1207
+ status_code = http_response.status
1208
+ response_content = http_response.body
1209
+ unless status_code == 200
1210
+ error_model = JSON.load(response_content)
1211
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
1212
+ end
1213
+
1214
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1215
+ # Deserialize Response
1216
+ if status_code == 200
1217
+ begin
1218
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1219
+ result_mapper = ServiceObjectiveListResult.mapper()
1220
+ result.body = @client.deserialize(result_mapper, parsed_response, 'result.body')
1221
+ rescue Exception => e
1222
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1223
+ end
1224
+ end
1225
+
1226
+ result
1227
+ end
1228
+
1229
+ promise.execute
1230
+ end
1231
+
1232
+ end
1233
+ end