azure_mgmt_sql 0.17.2 → 0.17.3

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -0,0 +1,1058 @@
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::V2018_06_01_preview
7
+ #
8
+ # The Azure SQL Database management API provides a RESTful set of web APIs
9
+ # that interact with Azure SQL Database services to manage your databases.
10
+ # The API enables users to create, retrieve, update, and delete databases,
11
+ # servers, and other entities.
12
+ #
13
+ class ManagedDatabaseSensitivityLabels
14
+ include MsRestAzure
15
+
16
+ #
17
+ # Creates and initializes a new instance of the ManagedDatabaseSensitivityLabels 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 the sensitivity label of a given column
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 database_name [String] The name of the database.
35
+ # @param schema_name [String] The name of the schema.
36
+ # @param table_name [String] The name of the table.
37
+ # @param column_name [String] The name of the column.
38
+ # @param sensitivity_label_source [SensitivityLabelSource] The source of the
39
+ # sensitivity label. Possible values include: 'current', 'recommended'
40
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
41
+ # will be added to the HTTP request.
42
+ #
43
+ # @return [SensitivityLabel] operation results.
44
+ #
45
+ def get(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, sensitivity_label_source, custom_headers:nil)
46
+ response = get_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, sensitivity_label_source, custom_headers:custom_headers).value!
47
+ response.body unless response.nil?
48
+ end
49
+
50
+ #
51
+ # Gets the sensitivity label of a given column
52
+ #
53
+ # @param resource_group_name [String] The name of the resource group that
54
+ # contains the resource. You can obtain this value from the Azure Resource
55
+ # Manager API or the portal.
56
+ # @param managed_instance_name [String] The name of the managed instance.
57
+ # @param database_name [String] The name of the database.
58
+ # @param schema_name [String] The name of the schema.
59
+ # @param table_name [String] The name of the table.
60
+ # @param column_name [String] The name of the column.
61
+ # @param sensitivity_label_source [SensitivityLabelSource] The source of the
62
+ # sensitivity label. Possible values include: 'current', 'recommended'
63
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
64
+ # will be added to the HTTP request.
65
+ #
66
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
67
+ #
68
+ def get_with_http_info(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, sensitivity_label_source, custom_headers:nil)
69
+ get_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, sensitivity_label_source, custom_headers:custom_headers).value!
70
+ end
71
+
72
+ #
73
+ # Gets the sensitivity label of a given column
74
+ #
75
+ # @param resource_group_name [String] The name of the resource group that
76
+ # contains the resource. You can obtain this value from the Azure Resource
77
+ # Manager API or the portal.
78
+ # @param managed_instance_name [String] The name of the managed instance.
79
+ # @param database_name [String] The name of the database.
80
+ # @param schema_name [String] The name of the schema.
81
+ # @param table_name [String] The name of the table.
82
+ # @param column_name [String] The name of the column.
83
+ # @param sensitivity_label_source [SensitivityLabelSource] The source of the
84
+ # sensitivity label. Possible values include: 'current', 'recommended'
85
+ # @param [Hash{String => String}] A hash of custom headers that will be added
86
+ # to the HTTP request.
87
+ #
88
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
89
+ #
90
+ def get_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, sensitivity_label_source, custom_headers:nil)
91
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
92
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
93
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
94
+ fail ArgumentError, 'schema_name is nil' if schema_name.nil?
95
+ fail ArgumentError, 'table_name is nil' if table_name.nil?
96
+ fail ArgumentError, 'column_name is nil' if column_name.nil?
97
+ fail ArgumentError, 'sensitivity_label_source is nil' if sensitivity_label_source.nil?
98
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
99
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
100
+
101
+
102
+ request_headers = {}
103
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
104
+
105
+ # Set Headers
106
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
107
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
108
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}'
109
+
110
+ request_url = @base_url || @client.base_url
111
+
112
+ options = {
113
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
114
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'schemaName' => schema_name,'tableName' => table_name,'columnName' => column_name,'sensitivityLabelSource' => sensitivity_label_source,'subscriptionId' => @client.subscription_id},
115
+ query_params: {'api-version' => @client.api_version},
116
+ headers: request_headers.merge(custom_headers || {}),
117
+ base_url: request_url
118
+ }
119
+ promise = @client.make_request_async(:get, 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
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 = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabel.mapper()
136
+ result.body = @client.deserialize(result_mapper, parsed_response)
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
+
142
+ result
143
+ end
144
+
145
+ promise.execute
146
+ end
147
+
148
+ #
149
+ # Creates or updates the sensitivity label of a given column
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 database_name [String] The name of the database.
156
+ # @param schema_name [String] The name of the schema.
157
+ # @param table_name [String] The name of the table.
158
+ # @param column_name [String] The name of the column.
159
+ # @param parameters [SensitivityLabel] The column sensitivity label resource.
160
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
161
+ # will be added to the HTTP request.
162
+ #
163
+ # @return [SensitivityLabel] operation results.
164
+ #
165
+ def create_or_update(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, parameters, custom_headers:nil)
166
+ response = create_or_update_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, parameters, custom_headers:custom_headers).value!
167
+ response.body unless response.nil?
168
+ end
169
+
170
+ #
171
+ # Creates or updates the sensitivity label of a given column
172
+ #
173
+ # @param resource_group_name [String] The name of the resource group that
174
+ # contains the resource. You can obtain this value from the Azure Resource
175
+ # Manager API or the portal.
176
+ # @param managed_instance_name [String] The name of the managed instance.
177
+ # @param database_name [String] The name of the database.
178
+ # @param schema_name [String] The name of the schema.
179
+ # @param table_name [String] The name of the table.
180
+ # @param column_name [String] The name of the column.
181
+ # @param parameters [SensitivityLabel] The column sensitivity label resource.
182
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
183
+ # will be added to the HTTP request.
184
+ #
185
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
186
+ #
187
+ def create_or_update_with_http_info(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, parameters, custom_headers:nil)
188
+ create_or_update_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, parameters, custom_headers:custom_headers).value!
189
+ end
190
+
191
+ #
192
+ # Creates or updates the sensitivity label of a given column
193
+ #
194
+ # @param resource_group_name [String] The name of the resource group that
195
+ # contains the resource. You can obtain this value from the Azure Resource
196
+ # Manager API or the portal.
197
+ # @param managed_instance_name [String] The name of the managed instance.
198
+ # @param database_name [String] The name of the database.
199
+ # @param schema_name [String] The name of the schema.
200
+ # @param table_name [String] The name of the table.
201
+ # @param column_name [String] The name of the column.
202
+ # @param parameters [SensitivityLabel] The column sensitivity label resource.
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 create_or_update_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, parameters, custom_headers:nil)
209
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
210
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
211
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
212
+ fail ArgumentError, 'schema_name is nil' if schema_name.nil?
213
+ fail ArgumentError, 'table_name is nil' if table_name.nil?
214
+ fail ArgumentError, 'column_name is nil' if column_name.nil?
215
+ sensitivity_label_source = 'current'
216
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
217
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
218
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
219
+
220
+
221
+ request_headers = {}
222
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
223
+
224
+ # Set Headers
225
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
226
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
227
+
228
+ # Serialize Request
229
+ request_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabel.mapper()
230
+ request_content = @client.serialize(request_mapper, parameters)
231
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
232
+
233
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}'
234
+
235
+ request_url = @base_url || @client.base_url
236
+
237
+ options = {
238
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
239
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'schemaName' => schema_name,'tableName' => table_name,'columnName' => column_name,'sensitivityLabelSource' => sensitivity_label_source,'subscriptionId' => @client.subscription_id},
240
+ query_params: {'api-version' => @client.api_version},
241
+ body: request_content,
242
+ headers: request_headers.merge(custom_headers || {}),
243
+ base_url: request_url
244
+ }
245
+ promise = @client.make_request_async(:put, path_template, options)
246
+
247
+ promise = promise.then do |result|
248
+ http_response = result.response
249
+ status_code = http_response.status
250
+ response_content = http_response.body
251
+ unless status_code == 200 || status_code == 201
252
+ error_model = JSON.load(response_content)
253
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
254
+ end
255
+
256
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
257
+ # Deserialize Response
258
+ if status_code == 200
259
+ begin
260
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
261
+ result_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabel.mapper()
262
+ result.body = @client.deserialize(result_mapper, parsed_response)
263
+ rescue Exception => e
264
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
265
+ end
266
+ end
267
+ # Deserialize Response
268
+ if status_code == 201
269
+ begin
270
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
271
+ result_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabel.mapper()
272
+ result.body = @client.deserialize(result_mapper, parsed_response)
273
+ rescue Exception => e
274
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
275
+ end
276
+ end
277
+
278
+ result
279
+ end
280
+
281
+ promise.execute
282
+ end
283
+
284
+ #
285
+ # Deletes the sensitivity label of a given column
286
+ #
287
+ # @param resource_group_name [String] The name of the resource group that
288
+ # contains the resource. You can obtain this value from the Azure Resource
289
+ # Manager API or the portal.
290
+ # @param managed_instance_name [String] The name of the managed instance.
291
+ # @param database_name [String] The name of the database.
292
+ # @param schema_name [String] The name of the schema.
293
+ # @param table_name [String] The name of the table.
294
+ # @param column_name [String] The name of the column.
295
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
296
+ # will be added to the HTTP request.
297
+ #
298
+ #
299
+ def delete(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
300
+ response = delete_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:custom_headers).value!
301
+ nil
302
+ end
303
+
304
+ #
305
+ # Deletes the sensitivity label of a given column
306
+ #
307
+ # @param resource_group_name [String] The name of the resource group that
308
+ # contains the resource. You can obtain this value from the Azure Resource
309
+ # Manager API or the portal.
310
+ # @param managed_instance_name [String] The name of the managed instance.
311
+ # @param database_name [String] The name of the database.
312
+ # @param schema_name [String] The name of the schema.
313
+ # @param table_name [String] The name of the table.
314
+ # @param column_name [String] The name of the column.
315
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
316
+ # will be added to the HTTP request.
317
+ #
318
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
319
+ #
320
+ def delete_with_http_info(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
321
+ delete_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:custom_headers).value!
322
+ end
323
+
324
+ #
325
+ # Deletes the sensitivity label of a given column
326
+ #
327
+ # @param resource_group_name [String] The name of the resource group that
328
+ # contains the resource. You can obtain this value from the Azure Resource
329
+ # Manager API or the portal.
330
+ # @param managed_instance_name [String] The name of the managed instance.
331
+ # @param database_name [String] The name of the database.
332
+ # @param schema_name [String] The name of the schema.
333
+ # @param table_name [String] The name of the table.
334
+ # @param column_name [String] The name of the column.
335
+ # @param [Hash{String => String}] A hash of custom headers that will be added
336
+ # to the HTTP request.
337
+ #
338
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
339
+ #
340
+ def delete_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
341
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
342
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
343
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
344
+ fail ArgumentError, 'schema_name is nil' if schema_name.nil?
345
+ fail ArgumentError, 'table_name is nil' if table_name.nil?
346
+ fail ArgumentError, 'column_name is nil' if column_name.nil?
347
+ sensitivity_label_source = 'current'
348
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
349
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
350
+
351
+
352
+ request_headers = {}
353
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
354
+
355
+ # Set Headers
356
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
357
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
358
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}'
359
+
360
+ request_url = @base_url || @client.base_url
361
+
362
+ options = {
363
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
364
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'schemaName' => schema_name,'tableName' => table_name,'columnName' => column_name,'sensitivityLabelSource' => sensitivity_label_source,'subscriptionId' => @client.subscription_id},
365
+ query_params: {'api-version' => @client.api_version},
366
+ headers: request_headers.merge(custom_headers || {}),
367
+ base_url: request_url
368
+ }
369
+ promise = @client.make_request_async(:delete, path_template, options)
370
+
371
+ promise = promise.then do |result|
372
+ http_response = result.response
373
+ status_code = http_response.status
374
+ response_content = http_response.body
375
+ unless status_code == 200
376
+ error_model = JSON.load(response_content)
377
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
378
+ end
379
+
380
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
381
+
382
+ result
383
+ end
384
+
385
+ promise.execute
386
+ end
387
+
388
+ #
389
+ # Disables sensitivity recommendations on a given column
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 managed_instance_name [String] The name of the managed instance.
395
+ # @param database_name [String] The name of the database.
396
+ # @param schema_name [String] The name of the schema.
397
+ # @param table_name [String] The name of the table.
398
+ # @param column_name [String] The name of the column.
399
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
400
+ # will be added to the HTTP request.
401
+ #
402
+ #
403
+ def disable_recommendation(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
404
+ response = disable_recommendation_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:custom_headers).value!
405
+ nil
406
+ end
407
+
408
+ #
409
+ # Disables sensitivity recommendations on a given column
410
+ #
411
+ # @param resource_group_name [String] The name of the resource group that
412
+ # contains the resource. You can obtain this value from the Azure Resource
413
+ # Manager API or the portal.
414
+ # @param managed_instance_name [String] The name of the managed instance.
415
+ # @param database_name [String] The name of the database.
416
+ # @param schema_name [String] The name of the schema.
417
+ # @param table_name [String] The name of the table.
418
+ # @param column_name [String] The name of the column.
419
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
420
+ # will be added to the HTTP request.
421
+ #
422
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
423
+ #
424
+ def disable_recommendation_with_http_info(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
425
+ disable_recommendation_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:custom_headers).value!
426
+ end
427
+
428
+ #
429
+ # Disables sensitivity recommendations on a given column
430
+ #
431
+ # @param resource_group_name [String] The name of the resource group that
432
+ # contains the resource. You can obtain this value from the Azure Resource
433
+ # Manager API or the portal.
434
+ # @param managed_instance_name [String] The name of the managed instance.
435
+ # @param database_name [String] The name of the database.
436
+ # @param schema_name [String] The name of the schema.
437
+ # @param table_name [String] The name of the table.
438
+ # @param column_name [String] The name of the column.
439
+ # @param [Hash{String => String}] A hash of custom headers that will be added
440
+ # to the HTTP request.
441
+ #
442
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
443
+ #
444
+ def disable_recommendation_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
445
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
446
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
447
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
448
+ fail ArgumentError, 'schema_name is nil' if schema_name.nil?
449
+ fail ArgumentError, 'table_name is nil' if table_name.nil?
450
+ fail ArgumentError, 'column_name is nil' if column_name.nil?
451
+ sensitivity_label_source = 'recommended'
452
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
453
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
454
+
455
+
456
+ request_headers = {}
457
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
458
+
459
+ # Set Headers
460
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
461
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
462
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/disable'
463
+
464
+ request_url = @base_url || @client.base_url
465
+
466
+ options = {
467
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
468
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'schemaName' => schema_name,'tableName' => table_name,'columnName' => column_name,'sensitivityLabelSource' => sensitivity_label_source,'subscriptionId' => @client.subscription_id},
469
+ query_params: {'api-version' => @client.api_version},
470
+ headers: request_headers.merge(custom_headers || {}),
471
+ base_url: request_url
472
+ }
473
+ promise = @client.make_request_async(:post, path_template, options)
474
+
475
+ promise = promise.then do |result|
476
+ http_response = result.response
477
+ status_code = http_response.status
478
+ response_content = http_response.body
479
+ unless status_code == 200
480
+ error_model = JSON.load(response_content)
481
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
482
+ end
483
+
484
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
485
+
486
+ result
487
+ end
488
+
489
+ promise.execute
490
+ end
491
+
492
+ #
493
+ # Enables sensitivity recommendations on a given column (recommendations are
494
+ # enabled by default on all columns)
495
+ #
496
+ # @param resource_group_name [String] The name of the resource group that
497
+ # contains the resource. You can obtain this value from the Azure Resource
498
+ # Manager API or the portal.
499
+ # @param managed_instance_name [String] The name of the managed instance.
500
+ # @param database_name [String] The name of the database.
501
+ # @param schema_name [String] The name of the schema.
502
+ # @param table_name [String] The name of the table.
503
+ # @param column_name [String] The name of the column.
504
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
505
+ # will be added to the HTTP request.
506
+ #
507
+ #
508
+ def enable_recommendation(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
509
+ response = enable_recommendation_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:custom_headers).value!
510
+ nil
511
+ end
512
+
513
+ #
514
+ # Enables sensitivity recommendations on a given column (recommendations are
515
+ # enabled by default on all columns)
516
+ #
517
+ # @param resource_group_name [String] The name of the resource group that
518
+ # contains the resource. You can obtain this value from the Azure Resource
519
+ # Manager API or the portal.
520
+ # @param managed_instance_name [String] The name of the managed instance.
521
+ # @param database_name [String] The name of the database.
522
+ # @param schema_name [String] The name of the schema.
523
+ # @param table_name [String] The name of the table.
524
+ # @param column_name [String] The name of the column.
525
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
526
+ # will be added to the HTTP request.
527
+ #
528
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
529
+ #
530
+ def enable_recommendation_with_http_info(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
531
+ enable_recommendation_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:custom_headers).value!
532
+ end
533
+
534
+ #
535
+ # Enables sensitivity recommendations on a given column (recommendations are
536
+ # enabled by default on all columns)
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 managed_instance_name [String] The name of the managed instance.
542
+ # @param database_name [String] The name of the database.
543
+ # @param schema_name [String] The name of the schema.
544
+ # @param table_name [String] The name of the table.
545
+ # @param column_name [String] The name of the column.
546
+ # @param [Hash{String => String}] A hash of custom headers that will be added
547
+ # to the HTTP request.
548
+ #
549
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
550
+ #
551
+ def enable_recommendation_async(resource_group_name, managed_instance_name, database_name, schema_name, table_name, column_name, custom_headers:nil)
552
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
553
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
554
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
555
+ fail ArgumentError, 'schema_name is nil' if schema_name.nil?
556
+ fail ArgumentError, 'table_name is nil' if table_name.nil?
557
+ fail ArgumentError, 'column_name is nil' if column_name.nil?
558
+ sensitivity_label_source = 'recommended'
559
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
560
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
561
+
562
+
563
+ request_headers = {}
564
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
565
+
566
+ # Set Headers
567
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
568
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
569
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/enable'
570
+
571
+ request_url = @base_url || @client.base_url
572
+
573
+ options = {
574
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
575
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'schemaName' => schema_name,'tableName' => table_name,'columnName' => column_name,'sensitivityLabelSource' => sensitivity_label_source,'subscriptionId' => @client.subscription_id},
576
+ query_params: {'api-version' => @client.api_version},
577
+ headers: request_headers.merge(custom_headers || {}),
578
+ base_url: request_url
579
+ }
580
+ promise = @client.make_request_async(:post, path_template, options)
581
+
582
+ promise = promise.then do |result|
583
+ http_response = result.response
584
+ status_code = http_response.status
585
+ response_content = http_response.body
586
+ unless status_code == 200
587
+ error_model = JSON.load(response_content)
588
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
589
+ end
590
+
591
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
592
+
593
+ result
594
+ end
595
+
596
+ promise.execute
597
+ end
598
+
599
+ #
600
+ # Gets the sensitivity labels of a given database
601
+ #
602
+ # @param resource_group_name [String] The name of the resource group that
603
+ # contains the resource. You can obtain this value from the Azure Resource
604
+ # Manager API or the portal.
605
+ # @param managed_instance_name [String] The name of the managed instance.
606
+ # @param database_name [String] The name of the database.
607
+ # @param filter [String] An OData filter expression that filters elements in
608
+ # the collection.
609
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
610
+ # will be added to the HTTP request.
611
+ #
612
+ # @return [Array<SensitivityLabel>] operation results.
613
+ #
614
+ def list_current_by_database(resource_group_name, managed_instance_name, database_name, filter:nil, custom_headers:nil)
615
+ first_page = list_current_by_database_as_lazy(resource_group_name, managed_instance_name, database_name, filter:filter, custom_headers:custom_headers)
616
+ first_page.get_all_items
617
+ end
618
+
619
+ #
620
+ # Gets the sensitivity labels of a given database
621
+ #
622
+ # @param resource_group_name [String] The name of the resource group that
623
+ # contains the resource. You can obtain this value from the Azure Resource
624
+ # Manager API or the portal.
625
+ # @param managed_instance_name [String] The name of the managed instance.
626
+ # @param database_name [String] The name of the database.
627
+ # @param filter [String] An OData filter expression that filters elements in
628
+ # the collection.
629
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
630
+ # will be added to the HTTP request.
631
+ #
632
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
633
+ #
634
+ def list_current_by_database_with_http_info(resource_group_name, managed_instance_name, database_name, filter:nil, custom_headers:nil)
635
+ list_current_by_database_async(resource_group_name, managed_instance_name, database_name, filter:filter, custom_headers:custom_headers).value!
636
+ end
637
+
638
+ #
639
+ # Gets the sensitivity labels of a given database
640
+ #
641
+ # @param resource_group_name [String] The name of the resource group that
642
+ # contains the resource. You can obtain this value from the Azure Resource
643
+ # Manager API or the portal.
644
+ # @param managed_instance_name [String] The name of the managed instance.
645
+ # @param database_name [String] The name of the database.
646
+ # @param filter [String] An OData filter expression that filters elements in
647
+ # the collection.
648
+ # @param [Hash{String => String}] A hash of custom headers that will be added
649
+ # to the HTTP request.
650
+ #
651
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
652
+ #
653
+ def list_current_by_database_async(resource_group_name, managed_instance_name, database_name, filter:nil, custom_headers:nil)
654
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
655
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
656
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
657
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
658
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
659
+
660
+
661
+ request_headers = {}
662
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
663
+
664
+ # Set Headers
665
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
666
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
667
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/currentSensitivityLabels'
668
+
669
+ request_url = @base_url || @client.base_url
670
+
671
+ options = {
672
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
673
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'subscriptionId' => @client.subscription_id},
674
+ query_params: {'$filter' => filter,'api-version' => @client.api_version},
675
+ headers: request_headers.merge(custom_headers || {}),
676
+ base_url: request_url
677
+ }
678
+ promise = @client.make_request_async(:get, path_template, options)
679
+
680
+ promise = promise.then do |result|
681
+ http_response = result.response
682
+ status_code = http_response.status
683
+ response_content = http_response.body
684
+ unless status_code == 200
685
+ error_model = JSON.load(response_content)
686
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
687
+ end
688
+
689
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
690
+ # Deserialize Response
691
+ if status_code == 200
692
+ begin
693
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
694
+ result_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabelListResult.mapper()
695
+ result.body = @client.deserialize(result_mapper, parsed_response)
696
+ rescue Exception => e
697
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
698
+ end
699
+ end
700
+
701
+ result
702
+ end
703
+
704
+ promise.execute
705
+ end
706
+
707
+ #
708
+ # Gets the sensitivity labels of a given database
709
+ #
710
+ # @param resource_group_name [String] The name of the resource group that
711
+ # contains the resource. You can obtain this value from the Azure Resource
712
+ # Manager API or the portal.
713
+ # @param managed_instance_name [String] The name of the managed instance.
714
+ # @param database_name [String] The name of the database.
715
+ # @param include_disabled_recommendations [Boolean] Specifies whether to
716
+ # include disabled recommendations or not.
717
+ # @param skip_token [String]
718
+ # @param filter [String] An OData filter expression that filters elements in
719
+ # the collection.
720
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
721
+ # will be added to the HTTP request.
722
+ #
723
+ # @return [Array<SensitivityLabel>] operation results.
724
+ #
725
+ def list_recommended_by_database(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:nil, skip_token:nil, filter:nil, custom_headers:nil)
726
+ first_page = list_recommended_by_database_as_lazy(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:include_disabled_recommendations, skip_token:skip_token, filter:filter, custom_headers:custom_headers)
727
+ first_page.get_all_items
728
+ end
729
+
730
+ #
731
+ # Gets the sensitivity labels of a given database
732
+ #
733
+ # @param resource_group_name [String] The name of the resource group that
734
+ # contains the resource. You can obtain this value from the Azure Resource
735
+ # Manager API or the portal.
736
+ # @param managed_instance_name [String] The name of the managed instance.
737
+ # @param database_name [String] The name of the database.
738
+ # @param include_disabled_recommendations [Boolean] Specifies whether to
739
+ # include disabled recommendations or not.
740
+ # @param skip_token [String]
741
+ # @param filter [String] An OData filter expression that filters elements in
742
+ # the collection.
743
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
744
+ # will be added to the HTTP request.
745
+ #
746
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
747
+ #
748
+ def list_recommended_by_database_with_http_info(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:nil, skip_token:nil, filter:nil, custom_headers:nil)
749
+ list_recommended_by_database_async(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:include_disabled_recommendations, skip_token:skip_token, filter:filter, custom_headers:custom_headers).value!
750
+ end
751
+
752
+ #
753
+ # Gets the sensitivity labels of a given database
754
+ #
755
+ # @param resource_group_name [String] The name of the resource group that
756
+ # contains the resource. You can obtain this value from the Azure Resource
757
+ # Manager API or the portal.
758
+ # @param managed_instance_name [String] The name of the managed instance.
759
+ # @param database_name [String] The name of the database.
760
+ # @param include_disabled_recommendations [Boolean] Specifies whether to
761
+ # include disabled recommendations or not.
762
+ # @param skip_token [String]
763
+ # @param filter [String] An OData filter expression that filters elements in
764
+ # the collection.
765
+ # @param [Hash{String => String}] A hash of custom headers that will be added
766
+ # to the HTTP request.
767
+ #
768
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
769
+ #
770
+ def list_recommended_by_database_async(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:nil, skip_token:nil, filter:nil, custom_headers:nil)
771
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
772
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
773
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
774
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
775
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
776
+
777
+
778
+ request_headers = {}
779
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
780
+
781
+ # Set Headers
782
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
783
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
784
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/recommendedSensitivityLabels'
785
+
786
+ request_url = @base_url || @client.base_url
787
+
788
+ options = {
789
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
790
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'subscriptionId' => @client.subscription_id},
791
+ query_params: {'includeDisabledRecommendations' => include_disabled_recommendations,'$skipToken' => skip_token,'$filter' => filter,'api-version' => @client.api_version},
792
+ headers: request_headers.merge(custom_headers || {}),
793
+ base_url: request_url
794
+ }
795
+ promise = @client.make_request_async(:get, path_template, options)
796
+
797
+ promise = promise.then do |result|
798
+ http_response = result.response
799
+ status_code = http_response.status
800
+ response_content = http_response.body
801
+ unless status_code == 200
802
+ error_model = JSON.load(response_content)
803
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
804
+ end
805
+
806
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
807
+ # Deserialize Response
808
+ if status_code == 200
809
+ begin
810
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
811
+ result_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabelListResult.mapper()
812
+ result.body = @client.deserialize(result_mapper, parsed_response)
813
+ rescue Exception => e
814
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
815
+ end
816
+ end
817
+
818
+ result
819
+ end
820
+
821
+ promise.execute
822
+ end
823
+
824
+ #
825
+ # Gets the sensitivity labels of a given database
826
+ #
827
+ # @param next_page_link [String] The NextLink from the previous successful call
828
+ # to List operation.
829
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
830
+ # will be added to the HTTP request.
831
+ #
832
+ # @return [SensitivityLabelListResult] operation results.
833
+ #
834
+ def list_current_by_database_next(next_page_link, custom_headers:nil)
835
+ response = list_current_by_database_next_async(next_page_link, custom_headers:custom_headers).value!
836
+ response.body unless response.nil?
837
+ end
838
+
839
+ #
840
+ # Gets the sensitivity labels of a given database
841
+ #
842
+ # @param next_page_link [String] The NextLink from the previous successful call
843
+ # to List operation.
844
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
845
+ # will be added to the HTTP request.
846
+ #
847
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
848
+ #
849
+ def list_current_by_database_next_with_http_info(next_page_link, custom_headers:nil)
850
+ list_current_by_database_next_async(next_page_link, custom_headers:custom_headers).value!
851
+ end
852
+
853
+ #
854
+ # Gets the sensitivity labels of a given database
855
+ #
856
+ # @param next_page_link [String] The NextLink from the previous successful call
857
+ # to List operation.
858
+ # @param [Hash{String => String}] A hash of custom headers that will be added
859
+ # to the HTTP request.
860
+ #
861
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
862
+ #
863
+ def list_current_by_database_next_async(next_page_link, custom_headers:nil)
864
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
865
+
866
+
867
+ request_headers = {}
868
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
869
+
870
+ # Set Headers
871
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
872
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
873
+ path_template = '{nextLink}'
874
+
875
+ request_url = @base_url || @client.base_url
876
+
877
+ options = {
878
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
879
+ skip_encoding_path_params: {'nextLink' => next_page_link},
880
+ headers: request_headers.merge(custom_headers || {}),
881
+ base_url: request_url
882
+ }
883
+ promise = @client.make_request_async(:get, path_template, options)
884
+
885
+ promise = promise.then do |result|
886
+ http_response = result.response
887
+ status_code = http_response.status
888
+ response_content = http_response.body
889
+ unless status_code == 200
890
+ error_model = JSON.load(response_content)
891
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
892
+ end
893
+
894
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
895
+ # Deserialize Response
896
+ if status_code == 200
897
+ begin
898
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
899
+ result_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabelListResult.mapper()
900
+ result.body = @client.deserialize(result_mapper, parsed_response)
901
+ rescue Exception => e
902
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
903
+ end
904
+ end
905
+
906
+ result
907
+ end
908
+
909
+ promise.execute
910
+ end
911
+
912
+ #
913
+ # Gets the sensitivity labels of a given database
914
+ #
915
+ # @param next_page_link [String] The NextLink from the previous successful call
916
+ # to List operation.
917
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
918
+ # will be added to the HTTP request.
919
+ #
920
+ # @return [SensitivityLabelListResult] operation results.
921
+ #
922
+ def list_recommended_by_database_next(next_page_link, custom_headers:nil)
923
+ response = list_recommended_by_database_next_async(next_page_link, custom_headers:custom_headers).value!
924
+ response.body unless response.nil?
925
+ end
926
+
927
+ #
928
+ # Gets the sensitivity labels of a given database
929
+ #
930
+ # @param next_page_link [String] The NextLink from the previous successful call
931
+ # to List operation.
932
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
933
+ # will be added to the HTTP request.
934
+ #
935
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
936
+ #
937
+ def list_recommended_by_database_next_with_http_info(next_page_link, custom_headers:nil)
938
+ list_recommended_by_database_next_async(next_page_link, custom_headers:custom_headers).value!
939
+ end
940
+
941
+ #
942
+ # Gets the sensitivity labels of a given database
943
+ #
944
+ # @param next_page_link [String] The NextLink from the previous successful call
945
+ # to List operation.
946
+ # @param [Hash{String => String}] A hash of custom headers that will be added
947
+ # to the HTTP request.
948
+ #
949
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
950
+ #
951
+ def list_recommended_by_database_next_async(next_page_link, custom_headers:nil)
952
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
953
+
954
+
955
+ request_headers = {}
956
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
957
+
958
+ # Set Headers
959
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
960
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
961
+ path_template = '{nextLink}'
962
+
963
+ request_url = @base_url || @client.base_url
964
+
965
+ options = {
966
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
967
+ skip_encoding_path_params: {'nextLink' => next_page_link},
968
+ headers: request_headers.merge(custom_headers || {}),
969
+ base_url: request_url
970
+ }
971
+ promise = @client.make_request_async(:get, path_template, options)
972
+
973
+ promise = promise.then do |result|
974
+ http_response = result.response
975
+ status_code = http_response.status
976
+ response_content = http_response.body
977
+ unless status_code == 200
978
+ error_model = JSON.load(response_content)
979
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
980
+ end
981
+
982
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
983
+ # Deserialize Response
984
+ if status_code == 200
985
+ begin
986
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
987
+ result_mapper = Azure::SQL::Mgmt::V2018_06_01_preview::Models::SensitivityLabelListResult.mapper()
988
+ result.body = @client.deserialize(result_mapper, parsed_response)
989
+ rescue Exception => e
990
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
991
+ end
992
+ end
993
+
994
+ result
995
+ end
996
+
997
+ promise.execute
998
+ end
999
+
1000
+ #
1001
+ # Gets the sensitivity labels of a given database
1002
+ #
1003
+ # @param resource_group_name [String] The name of the resource group that
1004
+ # contains the resource. You can obtain this value from the Azure Resource
1005
+ # Manager API or the portal.
1006
+ # @param managed_instance_name [String] The name of the managed instance.
1007
+ # @param database_name [String] The name of the database.
1008
+ # @param filter [String] An OData filter expression that filters elements in
1009
+ # the collection.
1010
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1011
+ # will be added to the HTTP request.
1012
+ #
1013
+ # @return [SensitivityLabelListResult] which provide lazy access to pages of
1014
+ # the response.
1015
+ #
1016
+ def list_current_by_database_as_lazy(resource_group_name, managed_instance_name, database_name, filter:nil, custom_headers:nil)
1017
+ response = list_current_by_database_async(resource_group_name, managed_instance_name, database_name, filter:filter, custom_headers:custom_headers).value!
1018
+ unless response.nil?
1019
+ page = response.body
1020
+ page.next_method = Proc.new do |next_page_link|
1021
+ list_current_by_database_next_async(next_page_link, custom_headers:custom_headers)
1022
+ end
1023
+ page
1024
+ end
1025
+ end
1026
+
1027
+ #
1028
+ # Gets the sensitivity labels of a given database
1029
+ #
1030
+ # @param resource_group_name [String] The name of the resource group that
1031
+ # contains the resource. You can obtain this value from the Azure Resource
1032
+ # Manager API or the portal.
1033
+ # @param managed_instance_name [String] The name of the managed instance.
1034
+ # @param database_name [String] The name of the database.
1035
+ # @param include_disabled_recommendations [Boolean] Specifies whether to
1036
+ # include disabled recommendations or not.
1037
+ # @param skip_token [String]
1038
+ # @param filter [String] An OData filter expression that filters elements in
1039
+ # the collection.
1040
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1041
+ # will be added to the HTTP request.
1042
+ #
1043
+ # @return [SensitivityLabelListResult] which provide lazy access to pages of
1044
+ # the response.
1045
+ #
1046
+ def list_recommended_by_database_as_lazy(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:nil, skip_token:nil, filter:nil, custom_headers:nil)
1047
+ response = list_recommended_by_database_async(resource_group_name, managed_instance_name, database_name, include_disabled_recommendations:include_disabled_recommendations, skip_token:skip_token, filter:filter, custom_headers:custom_headers).value!
1048
+ unless response.nil?
1049
+ page = response.body
1050
+ page.next_method = Proc.new do |next_page_link|
1051
+ list_recommended_by_database_next_async(next_page_link, custom_headers:custom_headers)
1052
+ end
1053
+ page
1054
+ end
1055
+ end
1056
+
1057
+ end
1058
+ end