azure_mgmt_sql 0.17.2 → 0.17.3

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 (137) hide show
  1. checksums.yaml +5 -5
  2. data/lib/2014-04-01/generated/azure_mgmt_sql/databases.rb +6 -6
  3. data/lib/2014-04-01/generated/azure_mgmt_sql/models/database.rb +47 -27
  4. data/lib/2014-04-01/generated/azure_mgmt_sql/models/database_edition.rb +3 -0
  5. data/lib/2014-04-01/generated/azure_mgmt_sql/models/database_security_alert_policy.rb +1 -1
  6. data/lib/2014-04-01/generated/azure_mgmt_sql/models/database_update.rb +47 -27
  7. data/lib/2014-04-01/generated/azure_mgmt_sql/models/elastic_pool.rb +2 -1
  8. data/lib/2014-04-01/generated/azure_mgmt_sql/models/elastic_pool_edition.rb +2 -0
  9. data/lib/2014-04-01/generated/azure_mgmt_sql/models/elastic_pool_update.rb +2 -1
  10. data/lib/2014-04-01/generated/azure_mgmt_sql/models/import_request.rb +16 -2
  11. data/lib/2014-04-01/generated/azure_mgmt_sql/models/metric_definition.rb +1 -1
  12. data/lib/2014-04-01/generated/azure_mgmt_sql/models/recommended_elastic_pool.rb +3 -2
  13. data/lib/2014-04-01/generated/azure_mgmt_sql/recommended_elastic_pools.rb +6 -6
  14. data/lib/2014-04-01/generated/azure_mgmt_sql/server_table_auditing_policies.rb +6 -6
  15. data/lib/2014-04-01/generated/azure_mgmt_sql/sql_management_client.rb +1 -1
  16. data/lib/2015-05-01-preview/generated/azure_mgmt_sql.rb +35 -28
  17. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/managed_instances.rb +317 -107
  18. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/advisor.rb +3 -3
  19. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/database_blob_auditing_policy.rb +37 -6
  20. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/managed_instance.rb +145 -5
  21. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/managed_instance_license_type.rb +16 -0
  22. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/managed_instance_proxy_override.rb +17 -0
  23. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/managed_instance_update.rb +143 -4
  24. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/managed_server_create_mode.rb +16 -0
  25. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/recommended_action_state_info.rb +2 -2
  26. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/virtual_cluster.rb +130 -0
  27. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/virtual_cluster_list_result.rb +100 -0
  28. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/models/virtual_cluster_update.rb +98 -0
  29. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/sql_management_client.rb +5 -1
  30. data/lib/2015-05-01-preview/generated/azure_mgmt_sql/virtual_clusters.rb +814 -0
  31. data/lib/2017-03-01-preview/generated/azure_mgmt_sql.rb +41 -26
  32. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/database_vulnerability_assessments.rb +219 -0
  33. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/job_executions.rb +4 -4
  34. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/long_term_retention_backups.rb +28 -28
  35. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/managed_backup_short_term_retention_policies.rb +684 -0
  36. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/managed_database_security_alert_policies.rb +483 -0
  37. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/managed_databases.rb +4 -4
  38. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/managed_restorable_dropped_database_backup_short_term_retention_policies.rb +684 -0
  39. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/managed_server_security_alert_policies.rb +500 -0
  40. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/backup_long_term_retention_policy.rb +1 -1
  41. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/database_blob_auditing_policy.rb +37 -6
  42. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/database_vulnerability_assessment.rb +19 -4
  43. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/database_vulnerability_assessment_list_result.rb +102 -0
  44. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/extended_database_blob_auditing_policy.rb +37 -6
  45. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/extended_server_blob_auditing_policy.rb +37 -6
  46. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/job_schedule.rb +1 -1
  47. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/logical_server_security_alert_policy_list_result.rb +102 -0
  48. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/long_term_retention_backup_list_result.rb +1 -1
  49. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_backup_short_term_retention_policy.rb +74 -0
  50. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_backup_short_term_retention_policy_list_result.rb +104 -0
  51. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_database.rb +32 -5
  52. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_database_create_mode.rb +1 -0
  53. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_database_security_alert_policy.rb +179 -0
  54. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_database_security_alert_policy_list_result.rb +102 -0
  55. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_database_status.rb +1 -0
  56. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_database_update.rb +32 -5
  57. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_server_security_alert_policy.rb +179 -0
  58. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/managed_server_security_alert_policy_list_result.rb +102 -0
  59. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/restorable_dropped_managed_database.rb +135 -0
  60. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/restorable_dropped_managed_database_list_result.rb +102 -0
  61. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/restore_point_list_result.rb +1 -1
  62. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/sensitivity_label.rb +37 -0
  63. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/server_blob_auditing_policy.rb +37 -6
  64. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/models/server_security_alert_policy.rb +16 -3
  65. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/restorable_dropped_managed_databases.rb +340 -0
  66. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/sensitivity_labels.rb +460 -14
  67. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/server_security_alert_policies.rb +210 -0
  68. data/lib/2017-03-01-preview/generated/azure_mgmt_sql/sql_management_client.rb +31 -5
  69. data/lib/2017-10-01-preview/generated/azure_mgmt_sql.rb +41 -24
  70. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/database_vulnerability_assessment_scans.rb +79 -79
  71. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/managed_database_vulnerability_assessment_rule_baselines.rb +400 -0
  72. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/managed_database_vulnerability_assessment_scans.rb +621 -0
  73. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/managed_database_vulnerability_assessments.rb +575 -0
  74. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/managed_instance_encryption_protectors.rb +500 -0
  75. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/managed_instance_keys.rb +669 -0
  76. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database.rb +42 -2
  77. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database_status.rb +2 -0
  78. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database_update.rb +26 -1
  79. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database_vulnerability_assessment.rb +19 -4
  80. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database_vulnerability_assessment_list_result.rb +102 -0
  81. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database_vulnerability_assessment_rule_baseline.rb +84 -0
  82. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/database_vulnerability_assessment_rule_baseline_item.rb +56 -0
  83. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/elastic_pool.rb +11 -1
  84. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/managed_instance_encryption_protector.rb +123 -0
  85. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/managed_instance_encryption_protector_list_result.rb +102 -0
  86. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/managed_instance_key.rb +124 -0
  87. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/managed_instance_key_list_result.rb +100 -0
  88. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/recoverable_managed_database.rb +74 -0
  89. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/recoverable_managed_database_list_result.rb +100 -0
  90. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/server_key_type.rb +16 -0
  91. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/models/vulnerability_assessment_policy_baseline_name.rb +16 -0
  92. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/recoverable_managed_databases.rb +340 -0
  93. data/lib/2017-10-01-preview/generated/azure_mgmt_sql/sql_management_client.rb +29 -1
  94. data/lib/2018-06-01-preview/generated/azure_mgmt_sql.rb +64 -0
  95. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/database_columns.rb +375 -0
  96. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/database_schemas.rb +357 -0
  97. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/database_security_alert_policies.rb +483 -0
  98. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/database_tables.rb +366 -0
  99. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/instance_pools.rb +999 -0
  100. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/managed_database_columns.rb +375 -0
  101. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/managed_database_schemas.rb +357 -0
  102. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/managed_database_sensitivity_labels.rb +1058 -0
  103. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/managed_database_tables.rb +366 -0
  104. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/managed_instance_vulnerability_assessments.rb +561 -0
  105. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/column_data_type.rb +48 -0
  106. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_column.rb +79 -0
  107. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_column_list_result.rb +100 -0
  108. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_schema.rb +62 -0
  109. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_schema_list_result.rb +100 -0
  110. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_security_alert_list_result.rb +100 -0
  111. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_security_alert_policy.rb +179 -0
  112. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_table.rb +62 -0
  113. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/database_table_list_result.rb +100 -0
  114. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/instance_pool.rb +135 -0
  115. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/instance_pool_license_type.rb +16 -0
  116. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/instance_pool_list_result.rb +100 -0
  117. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/instance_pool_update.rb +54 -0
  118. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/managed_instance_vulnerability_assessment.rb +114 -0
  119. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/managed_instance_vulnerability_assessment_list_result.rb +104 -0
  120. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/proxy_resource.rb +62 -0
  121. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/resource.rb +80 -0
  122. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/security_alert_policy_state.rb +17 -0
  123. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/sensitivity_label.rb +121 -0
  124. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/sensitivity_label_list_result.rb +100 -0
  125. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/sensitivity_label_source.rb +16 -0
  126. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/server_vulnerability_assessment.rb +114 -0
  127. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/server_vulnerability_assessment_list_result.rb +101 -0
  128. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/sku.rb +97 -0
  129. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/tracked_resource.rb +92 -0
  130. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/models/vulnerability_assessment_recurring_scans_properties.rb +80 -0
  131. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/module_definition.rb +9 -0
  132. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/server_vulnerability_assessments.rb +554 -0
  133. data/lib/2018-06-01-preview/generated/azure_mgmt_sql/sql_management_client.rb +174 -0
  134. data/lib/azure_mgmt_sql.rb +1 -0
  135. data/lib/profiles/latest/modules/sql_profile_module.rb +467 -261
  136. data/lib/version.rb +1 -1
  137. metadata +82 -3
@@ -321,7 +321,7 @@ module Azure::SQL::Mgmt::V2017_03_01_preview
321
321
  end
322
322
 
323
323
  #
324
- # Deletes the managed database.
324
+ # Deletes a managed database.
325
325
  #
326
326
  # @param resource_group_name [String] The name of the resource group that
327
327
  # contains the resource. You can obtain this value from the Azure Resource
@@ -641,7 +641,7 @@ module Azure::SQL::Mgmt::V2017_03_01_preview
641
641
  end
642
642
 
643
643
  #
644
- # Deletes the managed database.
644
+ # Deletes a managed database.
645
645
  #
646
646
  # @param resource_group_name [String] The name of the resource group that
647
647
  # contains the resource. You can obtain this value from the Azure Resource
@@ -658,7 +658,7 @@ module Azure::SQL::Mgmt::V2017_03_01_preview
658
658
  end
659
659
 
660
660
  #
661
- # Deletes the managed database.
661
+ # Deletes a managed database.
662
662
  #
663
663
  # @param resource_group_name [String] The name of the resource group that
664
664
  # contains the resource. You can obtain this value from the Azure Resource
@@ -675,7 +675,7 @@ module Azure::SQL::Mgmt::V2017_03_01_preview
675
675
  end
676
676
 
677
677
  #
678
- # Deletes the managed database.
678
+ # Deletes a managed database.
679
679
  #
680
680
  # @param resource_group_name [String] The name of the resource group that
681
681
  # contains the resource. You can obtain this value from the Azure Resource
@@ -0,0 +1,684 @@
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::SQL::Mgmt::V2017_03_01_preview
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 ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies
14
+ include MsRestAzure
15
+
16
+ #
17
+ # Creates and initializes a new instance of the ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies class.
18
+ # @param client service class for accessing basic functionality.
19
+ #
20
+ def initialize(client)
21
+ @client = client
22
+ end
23
+
24
+ # @return [SqlManagementClient] reference to the SqlManagementClient
25
+ attr_reader :client
26
+
27
+ #
28
+ # Gets a dropped database's short term retention policy.
29
+ #
30
+ # @param resource_group_name [String] The name of the resource group that
31
+ # contains the resource. You can obtain this value from the Azure Resource
32
+ # Manager API or the portal.
33
+ # @param managed_instance_name [String] The name of the managed instance.
34
+ # @param restorable_dropped_database_id [String]
35
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
36
+ # will be added to the HTTP request.
37
+ #
38
+ # @return [ManagedBackupShortTermRetentionPolicy] operation results.
39
+ #
40
+ def get(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
41
+ response = get_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:custom_headers).value!
42
+ response.body unless response.nil?
43
+ end
44
+
45
+ #
46
+ # Gets a dropped database's short term retention policy.
47
+ #
48
+ # @param resource_group_name [String] The name of the resource group that
49
+ # contains the resource. You can obtain this value from the Azure Resource
50
+ # Manager API or the portal.
51
+ # @param managed_instance_name [String] The name of the managed instance.
52
+ # @param restorable_dropped_database_id [String]
53
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
54
+ # will be added to the HTTP request.
55
+ #
56
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
57
+ #
58
+ def get_with_http_info(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
59
+ get_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:custom_headers).value!
60
+ end
61
+
62
+ #
63
+ # Gets a dropped database's short term retention policy.
64
+ #
65
+ # @param resource_group_name [String] The name of the resource group that
66
+ # contains the resource. You can obtain this value from the Azure Resource
67
+ # Manager API or the portal.
68
+ # @param managed_instance_name [String] The name of the managed instance.
69
+ # @param restorable_dropped_database_id [String]
70
+ # @param [Hash{String => String}] A hash of custom headers that will be added
71
+ # to the HTTP request.
72
+ #
73
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
74
+ #
75
+ def get_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
76
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
77
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
78
+ fail ArgumentError, 'restorable_dropped_database_id is nil' if restorable_dropped_database_id.nil?
79
+ policy_name = 'default'
80
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
81
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
82
+
83
+
84
+ request_headers = {}
85
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
86
+
87
+ # Set Headers
88
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
89
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
90
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies/{policyName}'
91
+
92
+ request_url = @base_url || @client.base_url
93
+
94
+ options = {
95
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
96
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'restorableDroppedDatabaseId' => restorable_dropped_database_id,'policyName' => policy_name,'subscriptionId' => @client.subscription_id},
97
+ query_params: {'api-version' => @client.api_version},
98
+ headers: request_headers.merge(custom_headers || {}),
99
+ base_url: request_url
100
+ }
101
+ promise = @client.make_request_async(:get, path_template, options)
102
+
103
+ promise = promise.then do |result|
104
+ http_response = result.response
105
+ status_code = http_response.status
106
+ response_content = http_response.body
107
+ unless status_code == 200
108
+ error_model = JSON.load(response_content)
109
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
110
+ end
111
+
112
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
113
+ # Deserialize Response
114
+ if status_code == 200
115
+ begin
116
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
117
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
118
+ result.body = @client.deserialize(result_mapper, parsed_response)
119
+ rescue Exception => e
120
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
121
+ end
122
+ end
123
+
124
+ result
125
+ end
126
+
127
+ promise.execute
128
+ end
129
+
130
+ #
131
+ # Sets a database's long term retention policy.
132
+ #
133
+ # @param resource_group_name [String] The name of the resource group that
134
+ # contains the resource. You can obtain this value from the Azure Resource
135
+ # Manager API or the portal.
136
+ # @param managed_instance_name [String] The name of the managed instance.
137
+ # @param restorable_dropped_database_id [String]
138
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
139
+ # retention policy info.
140
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
141
+ # will be added to the HTTP request.
142
+ #
143
+ # @return [ManagedBackupShortTermRetentionPolicy] operation results.
144
+ #
145
+ def create_or_update(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
146
+ response = create_or_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers).value!
147
+ response.body unless response.nil?
148
+ end
149
+
150
+ #
151
+ # @param resource_group_name [String] The name of the resource group that
152
+ # contains the resource. You can obtain this value from the Azure Resource
153
+ # Manager API or the portal.
154
+ # @param managed_instance_name [String] The name of the managed instance.
155
+ # @param restorable_dropped_database_id [String]
156
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
157
+ # retention policy info.
158
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
159
+ # will be added to the HTTP request.
160
+ #
161
+ # @return [Concurrent::Promise] promise which provides async access to http
162
+ # response.
163
+ #
164
+ def create_or_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
165
+ # Send request
166
+ promise = begin_create_or_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers)
167
+
168
+ promise = promise.then do |response|
169
+ # Defining deserialization method.
170
+ deserialize_method = lambda do |parsed_response|
171
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
172
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
173
+ end
174
+
175
+ # Waiting for response.
176
+ @client.get_long_running_operation_result(response, deserialize_method)
177
+ end
178
+
179
+ promise
180
+ end
181
+
182
+ #
183
+ # Sets a database's long term retention policy.
184
+ #
185
+ # @param resource_group_name [String] The name of the resource group that
186
+ # contains the resource. You can obtain this value from the Azure Resource
187
+ # Manager API or the portal.
188
+ # @param managed_instance_name [String] The name of the managed instance.
189
+ # @param restorable_dropped_database_id [String]
190
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
191
+ # retention policy info.
192
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
193
+ # will be added to the HTTP request.
194
+ #
195
+ # @return [ManagedBackupShortTermRetentionPolicy] operation results.
196
+ #
197
+ def update(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
198
+ response = update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers).value!
199
+ response.body unless response.nil?
200
+ end
201
+
202
+ #
203
+ # @param resource_group_name [String] The name of the resource group that
204
+ # contains the resource. You can obtain this value from the Azure Resource
205
+ # Manager API or the portal.
206
+ # @param managed_instance_name [String] The name of the managed instance.
207
+ # @param restorable_dropped_database_id [String]
208
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
209
+ # retention policy info.
210
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
211
+ # will be added to the HTTP request.
212
+ #
213
+ # @return [Concurrent::Promise] promise which provides async access to http
214
+ # response.
215
+ #
216
+ def update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
217
+ # Send request
218
+ promise = begin_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers)
219
+
220
+ promise = promise.then do |response|
221
+ # Defining deserialization method.
222
+ deserialize_method = lambda do |parsed_response|
223
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
224
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
225
+ end
226
+
227
+ # Waiting for response.
228
+ @client.get_long_running_operation_result(response, deserialize_method)
229
+ end
230
+
231
+ promise
232
+ end
233
+
234
+ #
235
+ # Gets a dropped database's short term retention policy list.
236
+ #
237
+ # @param resource_group_name [String] The name of the resource group that
238
+ # contains the resource. You can obtain this value from the Azure Resource
239
+ # Manager API or the portal.
240
+ # @param managed_instance_name [String] The name of the managed instance.
241
+ # @param restorable_dropped_database_id [String]
242
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
243
+ # will be added to the HTTP request.
244
+ #
245
+ # @return [Array<ManagedBackupShortTermRetentionPolicy>] operation results.
246
+ #
247
+ def list_by_restorable_dropped_database(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
248
+ first_page = list_by_restorable_dropped_database_as_lazy(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:custom_headers)
249
+ first_page.get_all_items
250
+ end
251
+
252
+ #
253
+ # Gets a dropped database's short term retention policy list.
254
+ #
255
+ # @param resource_group_name [String] The name of the resource group that
256
+ # contains the resource. You can obtain this value from the Azure Resource
257
+ # Manager API or the portal.
258
+ # @param managed_instance_name [String] The name of the managed instance.
259
+ # @param restorable_dropped_database_id [String]
260
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
261
+ # will be added to the HTTP request.
262
+ #
263
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
264
+ #
265
+ def list_by_restorable_dropped_database_with_http_info(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
266
+ list_by_restorable_dropped_database_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:custom_headers).value!
267
+ end
268
+
269
+ #
270
+ # Gets a dropped database's short term retention policy list.
271
+ #
272
+ # @param resource_group_name [String] The name of the resource group that
273
+ # contains the resource. You can obtain this value from the Azure Resource
274
+ # Manager API or the portal.
275
+ # @param managed_instance_name [String] The name of the managed instance.
276
+ # @param restorable_dropped_database_id [String]
277
+ # @param [Hash{String => String}] A hash of custom headers that will be added
278
+ # to the HTTP request.
279
+ #
280
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
281
+ #
282
+ def list_by_restorable_dropped_database_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
283
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
284
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
285
+ fail ArgumentError, 'restorable_dropped_database_id is nil' if restorable_dropped_database_id.nil?
286
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
287
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
288
+
289
+
290
+ request_headers = {}
291
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
292
+
293
+ # Set Headers
294
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
295
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
296
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies'
297
+
298
+ request_url = @base_url || @client.base_url
299
+
300
+ options = {
301
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
302
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'restorableDroppedDatabaseId' => restorable_dropped_database_id,'subscriptionId' => @client.subscription_id},
303
+ query_params: {'api-version' => @client.api_version},
304
+ headers: request_headers.merge(custom_headers || {}),
305
+ base_url: request_url
306
+ }
307
+ promise = @client.make_request_async(:get, path_template, options)
308
+
309
+ promise = promise.then do |result|
310
+ http_response = result.response
311
+ status_code = http_response.status
312
+ response_content = http_response.body
313
+ unless status_code == 200
314
+ error_model = JSON.load(response_content)
315
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
316
+ end
317
+
318
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
319
+ # Deserialize Response
320
+ if status_code == 200
321
+ begin
322
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
323
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicyListResult.mapper()
324
+ result.body = @client.deserialize(result_mapper, parsed_response)
325
+ rescue Exception => e
326
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
327
+ end
328
+ end
329
+
330
+ result
331
+ end
332
+
333
+ promise.execute
334
+ end
335
+
336
+ #
337
+ # Sets a database's long term retention policy.
338
+ #
339
+ # @param resource_group_name [String] The name of the resource group that
340
+ # contains the resource. You can obtain this value from the Azure Resource
341
+ # Manager API or the portal.
342
+ # @param managed_instance_name [String] The name of the managed instance.
343
+ # @param restorable_dropped_database_id [String]
344
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
345
+ # retention policy info.
346
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
347
+ # will be added to the HTTP request.
348
+ #
349
+ # @return [ManagedBackupShortTermRetentionPolicy] operation results.
350
+ #
351
+ def begin_create_or_update(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
352
+ response = begin_create_or_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers).value!
353
+ response.body unless response.nil?
354
+ end
355
+
356
+ #
357
+ # Sets a database's long term retention policy.
358
+ #
359
+ # @param resource_group_name [String] The name of the resource group that
360
+ # contains the resource. You can obtain this value from the Azure Resource
361
+ # Manager API or the portal.
362
+ # @param managed_instance_name [String] The name of the managed instance.
363
+ # @param restorable_dropped_database_id [String]
364
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
365
+ # retention policy info.
366
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
367
+ # will be added to the HTTP request.
368
+ #
369
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
370
+ #
371
+ def begin_create_or_update_with_http_info(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
372
+ begin_create_or_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers).value!
373
+ end
374
+
375
+ #
376
+ # Sets a database's long term retention policy.
377
+ #
378
+ # @param resource_group_name [String] The name of the resource group that
379
+ # contains the resource. You can obtain this value from the Azure Resource
380
+ # Manager API or the portal.
381
+ # @param managed_instance_name [String] The name of the managed instance.
382
+ # @param restorable_dropped_database_id [String]
383
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
384
+ # retention policy info.
385
+ # @param [Hash{String => String}] A hash of custom headers that will be added
386
+ # to the HTTP request.
387
+ #
388
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
389
+ #
390
+ def begin_create_or_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
391
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
392
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
393
+ fail ArgumentError, 'restorable_dropped_database_id is nil' if restorable_dropped_database_id.nil?
394
+ policy_name = 'default'
395
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
396
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
397
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
398
+
399
+
400
+ request_headers = {}
401
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
402
+
403
+ # Set Headers
404
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
405
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
406
+
407
+ # Serialize Request
408
+ request_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
409
+ request_content = @client.serialize(request_mapper, parameters)
410
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
411
+
412
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies/{policyName}'
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: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'restorableDroppedDatabaseId' => restorable_dropped_database_id,'policyName' => policy_name,'subscriptionId' => @client.subscription_id},
419
+ query_params: {'api-version' => @client.api_version},
420
+ body: request_content,
421
+ headers: request_headers.merge(custom_headers || {}),
422
+ base_url: request_url
423
+ }
424
+ promise = @client.make_request_async(:put, path_template, options)
425
+
426
+ promise = promise.then do |result|
427
+ http_response = result.response
428
+ status_code = http_response.status
429
+ response_content = http_response.body
430
+ unless status_code == 200 || status_code == 202
431
+ error_model = JSON.load(response_content)
432
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
433
+ end
434
+
435
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
436
+ # Deserialize Response
437
+ if status_code == 200
438
+ begin
439
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
440
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
441
+ result.body = @client.deserialize(result_mapper, parsed_response)
442
+ rescue Exception => e
443
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
444
+ end
445
+ end
446
+
447
+ result
448
+ end
449
+
450
+ promise.execute
451
+ end
452
+
453
+ #
454
+ # Sets a database's long term retention policy.
455
+ #
456
+ # @param resource_group_name [String] The name of the resource group that
457
+ # contains the resource. You can obtain this value from the Azure Resource
458
+ # Manager API or the portal.
459
+ # @param managed_instance_name [String] The name of the managed instance.
460
+ # @param restorable_dropped_database_id [String]
461
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
462
+ # retention policy info.
463
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
464
+ # will be added to the HTTP request.
465
+ #
466
+ # @return [ManagedBackupShortTermRetentionPolicy] operation results.
467
+ #
468
+ def begin_update(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
469
+ response = begin_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers).value!
470
+ response.body unless response.nil?
471
+ end
472
+
473
+ #
474
+ # Sets a database's long term retention policy.
475
+ #
476
+ # @param resource_group_name [String] The name of the resource group that
477
+ # contains the resource. You can obtain this value from the Azure Resource
478
+ # Manager API or the portal.
479
+ # @param managed_instance_name [String] The name of the managed instance.
480
+ # @param restorable_dropped_database_id [String]
481
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
482
+ # retention policy info.
483
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
484
+ # will be added to the HTTP request.
485
+ #
486
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
487
+ #
488
+ def begin_update_with_http_info(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
489
+ begin_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:custom_headers).value!
490
+ end
491
+
492
+ #
493
+ # Sets a database's long term retention policy.
494
+ #
495
+ # @param resource_group_name [String] The name of the resource group that
496
+ # contains the resource. You can obtain this value from the Azure Resource
497
+ # Manager API or the portal.
498
+ # @param managed_instance_name [String] The name of the managed instance.
499
+ # @param restorable_dropped_database_id [String]
500
+ # @param parameters [ManagedBackupShortTermRetentionPolicy] The long term
501
+ # retention policy info.
502
+ # @param [Hash{String => String}] A hash of custom headers that will be added
503
+ # to the HTTP request.
504
+ #
505
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
506
+ #
507
+ def begin_update_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, parameters, custom_headers:nil)
508
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
509
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
510
+ fail ArgumentError, 'restorable_dropped_database_id is nil' if restorable_dropped_database_id.nil?
511
+ policy_name = 'default'
512
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
513
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
514
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
515
+
516
+
517
+ request_headers = {}
518
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
519
+
520
+ # Set Headers
521
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
522
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
523
+
524
+ # Serialize Request
525
+ request_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
526
+ request_content = @client.serialize(request_mapper, parameters)
527
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
528
+
529
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies/{policyName}'
530
+
531
+ request_url = @base_url || @client.base_url
532
+
533
+ options = {
534
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
535
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'restorableDroppedDatabaseId' => restorable_dropped_database_id,'policyName' => policy_name,'subscriptionId' => @client.subscription_id},
536
+ query_params: {'api-version' => @client.api_version},
537
+ body: request_content,
538
+ headers: request_headers.merge(custom_headers || {}),
539
+ base_url: request_url
540
+ }
541
+ promise = @client.make_request_async(:patch, path_template, options)
542
+
543
+ promise = promise.then do |result|
544
+ http_response = result.response
545
+ status_code = http_response.status
546
+ response_content = http_response.body
547
+ unless status_code == 200 || status_code == 202
548
+ error_model = JSON.load(response_content)
549
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
550
+ end
551
+
552
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
553
+ # Deserialize Response
554
+ if status_code == 200
555
+ begin
556
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
557
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicy.mapper()
558
+ result.body = @client.deserialize(result_mapper, parsed_response)
559
+ rescue Exception => e
560
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
561
+ end
562
+ end
563
+
564
+ result
565
+ end
566
+
567
+ promise.execute
568
+ end
569
+
570
+ #
571
+ # Gets a dropped database's short term retention policy list.
572
+ #
573
+ # @param next_page_link [String] The NextLink from the previous successful call
574
+ # to List operation.
575
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
576
+ # will be added to the HTTP request.
577
+ #
578
+ # @return [ManagedBackupShortTermRetentionPolicyListResult] operation results.
579
+ #
580
+ def list_by_restorable_dropped_database_next(next_page_link, custom_headers:nil)
581
+ response = list_by_restorable_dropped_database_next_async(next_page_link, custom_headers:custom_headers).value!
582
+ response.body unless response.nil?
583
+ end
584
+
585
+ #
586
+ # Gets a dropped database's short term retention policy list.
587
+ #
588
+ # @param next_page_link [String] The NextLink from the previous successful call
589
+ # to List operation.
590
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
591
+ # will be added to the HTTP request.
592
+ #
593
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
594
+ #
595
+ def list_by_restorable_dropped_database_next_with_http_info(next_page_link, custom_headers:nil)
596
+ list_by_restorable_dropped_database_next_async(next_page_link, custom_headers:custom_headers).value!
597
+ end
598
+
599
+ #
600
+ # Gets a dropped database's short term retention policy list.
601
+ #
602
+ # @param next_page_link [String] The NextLink from the previous successful call
603
+ # to List operation.
604
+ # @param [Hash{String => String}] A hash of custom headers that will be added
605
+ # to the HTTP request.
606
+ #
607
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
608
+ #
609
+ def list_by_restorable_dropped_database_next_async(next_page_link, custom_headers:nil)
610
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
611
+
612
+
613
+ request_headers = {}
614
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
615
+
616
+ # Set Headers
617
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
618
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
619
+ path_template = '{nextLink}'
620
+
621
+ request_url = @base_url || @client.base_url
622
+
623
+ options = {
624
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
625
+ skip_encoding_path_params: {'nextLink' => next_page_link},
626
+ headers: request_headers.merge(custom_headers || {}),
627
+ base_url: request_url
628
+ }
629
+ promise = @client.make_request_async(:get, path_template, options)
630
+
631
+ promise = promise.then do |result|
632
+ http_response = result.response
633
+ status_code = http_response.status
634
+ response_content = http_response.body
635
+ unless status_code == 200
636
+ error_model = JSON.load(response_content)
637
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
638
+ end
639
+
640
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
641
+ # Deserialize Response
642
+ if status_code == 200
643
+ begin
644
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
645
+ result_mapper = Azure::SQL::Mgmt::V2017_03_01_preview::Models::ManagedBackupShortTermRetentionPolicyListResult.mapper()
646
+ result.body = @client.deserialize(result_mapper, parsed_response)
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
+ # Gets a dropped database's short term retention policy list.
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 managed_instance_name [String] The name of the managed instance.
665
+ # @param restorable_dropped_database_id [String]
666
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
667
+ # will be added to the HTTP request.
668
+ #
669
+ # @return [ManagedBackupShortTermRetentionPolicyListResult] which provide lazy
670
+ # access to pages of the response.
671
+ #
672
+ def list_by_restorable_dropped_database_as_lazy(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:nil)
673
+ response = list_by_restorable_dropped_database_async(resource_group_name, managed_instance_name, restorable_dropped_database_id, custom_headers:custom_headers).value!
674
+ unless response.nil?
675
+ page = response.body
676
+ page.next_method = Proc.new do |next_page_link|
677
+ list_by_restorable_dropped_database_next_async(next_page_link, custom_headers:custom_headers)
678
+ end
679
+ page
680
+ end
681
+ end
682
+
683
+ end
684
+ end