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,575 @@
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_10_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 ManagedDatabaseVulnerabilityAssessments
14
+ include MsRestAzure
15
+
16
+ #
17
+ # Creates and initializes a new instance of the ManagedDatabaseVulnerabilityAssessments 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 database's vulnerability assessment.
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 for which the
35
+ # vulnerability assessment is defined.
36
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
37
+ # will be added to the HTTP request.
38
+ #
39
+ # @return [DatabaseVulnerabilityAssessment] operation results.
40
+ #
41
+ def get(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
42
+ response = get_async(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers).value!
43
+ response.body unless response.nil?
44
+ end
45
+
46
+ #
47
+ # Gets the database's vulnerability assessment.
48
+ #
49
+ # @param resource_group_name [String] The name of the resource group that
50
+ # contains the resource. You can obtain this value from the Azure Resource
51
+ # Manager API or the portal.
52
+ # @param managed_instance_name [String] The name of the managed instance.
53
+ # @param database_name [String] The name of the database for which the
54
+ # vulnerability assessment is defined.
55
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
56
+ # will be added to the HTTP request.
57
+ #
58
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
59
+ #
60
+ def get_with_http_info(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
61
+ get_async(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers).value!
62
+ end
63
+
64
+ #
65
+ # Gets the database's vulnerability assessment.
66
+ #
67
+ # @param resource_group_name [String] The name of the resource group that
68
+ # contains the resource. You can obtain this value from the Azure Resource
69
+ # Manager API or the portal.
70
+ # @param managed_instance_name [String] The name of the managed instance.
71
+ # @param database_name [String] The name of the database for which the
72
+ # vulnerability assessment is defined.
73
+ # @param [Hash{String => String}] A hash of custom headers that will be added
74
+ # to the HTTP request.
75
+ #
76
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
77
+ #
78
+ def get_async(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
79
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
80
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
81
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
82
+ vulnerability_assessment_name = 'default'
83
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
84
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
85
+
86
+
87
+ request_headers = {}
88
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
89
+
90
+ # Set Headers
91
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
92
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
93
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}'
94
+
95
+ request_url = @base_url || @client.base_url
96
+
97
+ options = {
98
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
99
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'vulnerabilityAssessmentName' => vulnerability_assessment_name,'subscriptionId' => @client.subscription_id},
100
+ query_params: {'api-version' => @client.api_version},
101
+ headers: request_headers.merge(custom_headers || {}),
102
+ base_url: request_url
103
+ }
104
+ promise = @client.make_request_async(:get, path_template, options)
105
+
106
+ promise = promise.then do |result|
107
+ http_response = result.response
108
+ status_code = http_response.status
109
+ response_content = http_response.body
110
+ unless status_code == 200
111
+ error_model = JSON.load(response_content)
112
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
113
+ end
114
+
115
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
116
+ # Deserialize Response
117
+ if status_code == 200
118
+ begin
119
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
120
+ result_mapper = Azure::SQL::Mgmt::V2017_10_01_preview::Models::DatabaseVulnerabilityAssessment.mapper()
121
+ result.body = @client.deserialize(result_mapper, parsed_response)
122
+ rescue Exception => e
123
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
124
+ end
125
+ end
126
+
127
+ result
128
+ end
129
+
130
+ promise.execute
131
+ end
132
+
133
+ #
134
+ # Creates or updates the database's vulnerability assessment.
135
+ #
136
+ # @param resource_group_name [String] The name of the resource group that
137
+ # contains the resource. You can obtain this value from the Azure Resource
138
+ # Manager API or the portal.
139
+ # @param managed_instance_name [String] The name of the managed instance.
140
+ # @param database_name [String] The name of the database for which the
141
+ # vulnerability assessment is defined.
142
+ # @param parameters [DatabaseVulnerabilityAssessment] The requested resource.
143
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
144
+ # will be added to the HTTP request.
145
+ #
146
+ # @return [DatabaseVulnerabilityAssessment] operation results.
147
+ #
148
+ def create_or_update(resource_group_name, managed_instance_name, database_name, parameters, custom_headers:nil)
149
+ response = create_or_update_async(resource_group_name, managed_instance_name, database_name, parameters, custom_headers:custom_headers).value!
150
+ response.body unless response.nil?
151
+ end
152
+
153
+ #
154
+ # Creates or updates the database's vulnerability assessment.
155
+ #
156
+ # @param resource_group_name [String] The name of the resource group that
157
+ # contains the resource. You can obtain this value from the Azure Resource
158
+ # Manager API or the portal.
159
+ # @param managed_instance_name [String] The name of the managed instance.
160
+ # @param database_name [String] The name of the database for which the
161
+ # vulnerability assessment is defined.
162
+ # @param parameters [DatabaseVulnerabilityAssessment] The requested resource.
163
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
164
+ # will be added to the HTTP request.
165
+ #
166
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
167
+ #
168
+ def create_or_update_with_http_info(resource_group_name, managed_instance_name, database_name, parameters, custom_headers:nil)
169
+ create_or_update_async(resource_group_name, managed_instance_name, database_name, parameters, custom_headers:custom_headers).value!
170
+ end
171
+
172
+ #
173
+ # Creates or updates the database's vulnerability assessment.
174
+ #
175
+ # @param resource_group_name [String] The name of the resource group that
176
+ # contains the resource. You can obtain this value from the Azure Resource
177
+ # Manager API or the portal.
178
+ # @param managed_instance_name [String] The name of the managed instance.
179
+ # @param database_name [String] The name of the database for which the
180
+ # vulnerability assessment is defined.
181
+ # @param parameters [DatabaseVulnerabilityAssessment] The requested resource.
182
+ # @param [Hash{String => String}] A hash of custom headers that will be added
183
+ # to the HTTP request.
184
+ #
185
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
186
+ #
187
+ def create_or_update_async(resource_group_name, managed_instance_name, database_name, parameters, custom_headers:nil)
188
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
189
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
190
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
191
+ vulnerability_assessment_name = 'default'
192
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
193
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
194
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
195
+
196
+
197
+ request_headers = {}
198
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
199
+
200
+ # Set Headers
201
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
202
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
203
+
204
+ # Serialize Request
205
+ request_mapper = Azure::SQL::Mgmt::V2017_10_01_preview::Models::DatabaseVulnerabilityAssessment.mapper()
206
+ request_content = @client.serialize(request_mapper, parameters)
207
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
208
+
209
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}'
210
+
211
+ request_url = @base_url || @client.base_url
212
+
213
+ options = {
214
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
215
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'vulnerabilityAssessmentName' => vulnerability_assessment_name,'subscriptionId' => @client.subscription_id},
216
+ query_params: {'api-version' => @client.api_version},
217
+ body: request_content,
218
+ headers: request_headers.merge(custom_headers || {}),
219
+ base_url: request_url
220
+ }
221
+ promise = @client.make_request_async(:put, path_template, options)
222
+
223
+ promise = promise.then do |result|
224
+ http_response = result.response
225
+ status_code = http_response.status
226
+ response_content = http_response.body
227
+ unless status_code == 200 || status_code == 201
228
+ error_model = JSON.load(response_content)
229
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
230
+ end
231
+
232
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
233
+ # Deserialize Response
234
+ if status_code == 200
235
+ begin
236
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
237
+ result_mapper = Azure::SQL::Mgmt::V2017_10_01_preview::Models::DatabaseVulnerabilityAssessment.mapper()
238
+ result.body = @client.deserialize(result_mapper, parsed_response)
239
+ rescue Exception => e
240
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
241
+ end
242
+ end
243
+ # Deserialize Response
244
+ if status_code == 201
245
+ begin
246
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
247
+ result_mapper = Azure::SQL::Mgmt::V2017_10_01_preview::Models::DatabaseVulnerabilityAssessment.mapper()
248
+ result.body = @client.deserialize(result_mapper, parsed_response)
249
+ rescue Exception => e
250
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
251
+ end
252
+ end
253
+
254
+ result
255
+ end
256
+
257
+ promise.execute
258
+ end
259
+
260
+ #
261
+ # Removes the database's vulnerability assessment.
262
+ #
263
+ # @param resource_group_name [String] The name of the resource group that
264
+ # contains the resource. You can obtain this value from the Azure Resource
265
+ # Manager API or the portal.
266
+ # @param managed_instance_name [String] The name of the managed instance.
267
+ # @param database_name [String] The name of the database for which the
268
+ # vulnerability assessment is defined.
269
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
270
+ # will be added to the HTTP request.
271
+ #
272
+ #
273
+ def delete(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
274
+ response = delete_async(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers).value!
275
+ nil
276
+ end
277
+
278
+ #
279
+ # Removes the database's vulnerability assessment.
280
+ #
281
+ # @param resource_group_name [String] The name of the resource group that
282
+ # contains the resource. You can obtain this value from the Azure Resource
283
+ # Manager API or the portal.
284
+ # @param managed_instance_name [String] The name of the managed instance.
285
+ # @param database_name [String] The name of the database for which the
286
+ # vulnerability assessment is defined.
287
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
288
+ # will be added to the HTTP request.
289
+ #
290
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
291
+ #
292
+ def delete_with_http_info(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
293
+ delete_async(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers).value!
294
+ end
295
+
296
+ #
297
+ # Removes the database's vulnerability assessment.
298
+ #
299
+ # @param resource_group_name [String] The name of the resource group that
300
+ # contains the resource. You can obtain this value from the Azure Resource
301
+ # Manager API or the portal.
302
+ # @param managed_instance_name [String] The name of the managed instance.
303
+ # @param database_name [String] The name of the database for which the
304
+ # vulnerability assessment is defined.
305
+ # @param [Hash{String => String}] A hash of custom headers that will be added
306
+ # to the HTTP request.
307
+ #
308
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
309
+ #
310
+ def delete_async(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
311
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
312
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
313
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
314
+ vulnerability_assessment_name = 'default'
315
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
316
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
317
+
318
+
319
+ request_headers = {}
320
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
321
+
322
+ # Set Headers
323
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
324
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
325
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}'
326
+
327
+ request_url = @base_url || @client.base_url
328
+
329
+ options = {
330
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
331
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'vulnerabilityAssessmentName' => vulnerability_assessment_name,'subscriptionId' => @client.subscription_id},
332
+ query_params: {'api-version' => @client.api_version},
333
+ headers: request_headers.merge(custom_headers || {}),
334
+ base_url: request_url
335
+ }
336
+ promise = @client.make_request_async(:delete, path_template, options)
337
+
338
+ promise = promise.then do |result|
339
+ http_response = result.response
340
+ status_code = http_response.status
341
+ response_content = http_response.body
342
+ unless status_code == 200
343
+ error_model = JSON.load(response_content)
344
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
345
+ end
346
+
347
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
348
+
349
+ result
350
+ end
351
+
352
+ promise.execute
353
+ end
354
+
355
+ #
356
+ # Lists the vulnerability assessments of a managed database.
357
+ #
358
+ # @param resource_group_name [String] The name of the resource group that
359
+ # contains the resource. You can obtain this value from the Azure Resource
360
+ # Manager API or the portal.
361
+ # @param managed_instance_name [String] The name of the managed instance.
362
+ # @param database_name [String] The name of the database for which the
363
+ # vulnerability assessment is defined.
364
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
365
+ # will be added to the HTTP request.
366
+ #
367
+ # @return [Array<DatabaseVulnerabilityAssessment>] operation results.
368
+ #
369
+ def list_by_database(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
370
+ first_page = list_by_database_as_lazy(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers)
371
+ first_page.get_all_items
372
+ end
373
+
374
+ #
375
+ # Lists the vulnerability assessments of a managed database.
376
+ #
377
+ # @param resource_group_name [String] The name of the resource group that
378
+ # contains the resource. You can obtain this value from the Azure Resource
379
+ # Manager API or the portal.
380
+ # @param managed_instance_name [String] The name of the managed instance.
381
+ # @param database_name [String] The name of the database for which the
382
+ # vulnerability assessment is defined.
383
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
384
+ # will be added to the HTTP request.
385
+ #
386
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
387
+ #
388
+ def list_by_database_with_http_info(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
389
+ list_by_database_async(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers).value!
390
+ end
391
+
392
+ #
393
+ # Lists the vulnerability assessments of a managed database.
394
+ #
395
+ # @param resource_group_name [String] The name of the resource group that
396
+ # contains the resource. You can obtain this value from the Azure Resource
397
+ # Manager API or the portal.
398
+ # @param managed_instance_name [String] The name of the managed instance.
399
+ # @param database_name [String] The name of the database for which the
400
+ # vulnerability assessment is defined.
401
+ # @param [Hash{String => String}] A hash of custom headers that will be added
402
+ # to the HTTP request.
403
+ #
404
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
405
+ #
406
+ def list_by_database_async(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
407
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
408
+ fail ArgumentError, 'managed_instance_name is nil' if managed_instance_name.nil?
409
+ fail ArgumentError, 'database_name is nil' if database_name.nil?
410
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
411
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
412
+
413
+
414
+ request_headers = {}
415
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
416
+
417
+ # Set Headers
418
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
419
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
420
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments'
421
+
422
+ request_url = @base_url || @client.base_url
423
+
424
+ options = {
425
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
426
+ path_params: {'resourceGroupName' => resource_group_name,'managedInstanceName' => managed_instance_name,'databaseName' => database_name,'subscriptionId' => @client.subscription_id},
427
+ query_params: {'api-version' => @client.api_version},
428
+ headers: request_headers.merge(custom_headers || {}),
429
+ base_url: request_url
430
+ }
431
+ promise = @client.make_request_async(:get, path_template, options)
432
+
433
+ promise = promise.then do |result|
434
+ http_response = result.response
435
+ status_code = http_response.status
436
+ response_content = http_response.body
437
+ unless status_code == 200
438
+ error_model = JSON.load(response_content)
439
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
440
+ end
441
+
442
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
443
+ # Deserialize Response
444
+ if status_code == 200
445
+ begin
446
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
447
+ result_mapper = Azure::SQL::Mgmt::V2017_10_01_preview::Models::DatabaseVulnerabilityAssessmentListResult.mapper()
448
+ result.body = @client.deserialize(result_mapper, parsed_response)
449
+ rescue Exception => e
450
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
451
+ end
452
+ end
453
+
454
+ result
455
+ end
456
+
457
+ promise.execute
458
+ end
459
+
460
+ #
461
+ # Lists the vulnerability assessments of a managed database.
462
+ #
463
+ # @param next_page_link [String] The NextLink from the previous successful call
464
+ # to List operation.
465
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
466
+ # will be added to the HTTP request.
467
+ #
468
+ # @return [DatabaseVulnerabilityAssessmentListResult] operation results.
469
+ #
470
+ def list_by_database_next(next_page_link, custom_headers:nil)
471
+ response = list_by_database_next_async(next_page_link, custom_headers:custom_headers).value!
472
+ response.body unless response.nil?
473
+ end
474
+
475
+ #
476
+ # Lists the vulnerability assessments of a managed database.
477
+ #
478
+ # @param next_page_link [String] The NextLink from the previous successful call
479
+ # to List operation.
480
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
481
+ # will be added to the HTTP request.
482
+ #
483
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
484
+ #
485
+ def list_by_database_next_with_http_info(next_page_link, custom_headers:nil)
486
+ list_by_database_next_async(next_page_link, custom_headers:custom_headers).value!
487
+ end
488
+
489
+ #
490
+ # Lists the vulnerability assessments of a managed database.
491
+ #
492
+ # @param next_page_link [String] The NextLink from the previous successful call
493
+ # to List operation.
494
+ # @param [Hash{String => String}] A hash of custom headers that will be added
495
+ # to the HTTP request.
496
+ #
497
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
498
+ #
499
+ def list_by_database_next_async(next_page_link, custom_headers:nil)
500
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
501
+
502
+
503
+ request_headers = {}
504
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
505
+
506
+ # Set Headers
507
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
508
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
509
+ path_template = '{nextLink}'
510
+
511
+ request_url = @base_url || @client.base_url
512
+
513
+ options = {
514
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
515
+ skip_encoding_path_params: {'nextLink' => next_page_link},
516
+ headers: request_headers.merge(custom_headers || {}),
517
+ base_url: request_url
518
+ }
519
+ promise = @client.make_request_async(:get, path_template, options)
520
+
521
+ promise = promise.then do |result|
522
+ http_response = result.response
523
+ status_code = http_response.status
524
+ response_content = http_response.body
525
+ unless status_code == 200
526
+ error_model = JSON.load(response_content)
527
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
528
+ end
529
+
530
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
531
+ # Deserialize Response
532
+ if status_code == 200
533
+ begin
534
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
535
+ result_mapper = Azure::SQL::Mgmt::V2017_10_01_preview::Models::DatabaseVulnerabilityAssessmentListResult.mapper()
536
+ result.body = @client.deserialize(result_mapper, parsed_response)
537
+ rescue Exception => e
538
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
539
+ end
540
+ end
541
+
542
+ result
543
+ end
544
+
545
+ promise.execute
546
+ end
547
+
548
+ #
549
+ # Lists the vulnerability assessments of a managed database.
550
+ #
551
+ # @param resource_group_name [String] The name of the resource group that
552
+ # contains the resource. You can obtain this value from the Azure Resource
553
+ # Manager API or the portal.
554
+ # @param managed_instance_name [String] The name of the managed instance.
555
+ # @param database_name [String] The name of the database for which the
556
+ # vulnerability assessment is defined.
557
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
558
+ # will be added to the HTTP request.
559
+ #
560
+ # @return [DatabaseVulnerabilityAssessmentListResult] which provide lazy access
561
+ # to pages of the response.
562
+ #
563
+ def list_by_database_as_lazy(resource_group_name, managed_instance_name, database_name, custom_headers:nil)
564
+ response = list_by_database_async(resource_group_name, managed_instance_name, database_name, custom_headers:custom_headers).value!
565
+ unless response.nil?
566
+ page = response.body
567
+ page.next_method = Proc.new do |next_page_link|
568
+ list_by_database_next_async(next_page_link, custom_headers:custom_headers)
569
+ end
570
+ page
571
+ end
572
+ end
573
+
574
+ end
575
+ end