azure_mgmt_synapse 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse.rb +154 -0
  4. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/big_data_pools.rb +842 -0
  5. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/ip_firewall_rules.rb +728 -0
  6. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/auto_pause_properties.rb +61 -0
  7. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/auto_scale_properties.rb +73 -0
  8. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/available_rp_operation.rb +94 -0
  9. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/available_rp_operation_display_info.rb +79 -0
  10. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/azure_entity_resource.rb +75 -0
  11. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/big_data_pool_patch_info.rb +56 -0
  12. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/big_data_pool_resource_info.rb +219 -0
  13. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/big_data_pool_resource_info_list_result.rb +98 -0
  14. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/blob_auditing_policy_state.rb +16 -0
  15. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/check_name_availability_request.rb +59 -0
  16. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/check_name_availability_response.rb +81 -0
  17. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/column_data_type.rb +48 -0
  18. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/create_sql_pool_restore_point_definition.rb +47 -0
  19. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/data_lake_storage_account_details.rb +57 -0
  20. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/data_warehouse_user_activities.rb +74 -0
  21. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/error_additional_info.rb +59 -0
  22. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/error_contract.rb +49 -0
  23. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/error_detail.rb +68 -0
  24. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/error_response.rb +113 -0
  25. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/geo_backup_policy.rb +112 -0
  26. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/geo_backup_policy_state.rb +16 -0
  27. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/ip_firewall_rule_info.rb +100 -0
  28. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/ip_firewall_rule_info_list_result.rb +98 -0
  29. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/ip_firewall_rule_properties.rb +73 -0
  30. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/library_requirements.rb +72 -0
  31. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/managed_identity.rb +72 -0
  32. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/managed_identity_sql_control_settings_model.rb +78 -0
  33. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/managed_identity_sql_control_settings_model_properties_grant_sql_control_to_managed_identity.rb +62 -0
  34. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/management_operation_state.rb +20 -0
  35. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/metadata_sync_config.rb +76 -0
  36. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/node_size.rb +18 -0
  37. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/node_size_family.rb +16 -0
  38. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/operation_meta_log_specification.rb +68 -0
  39. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/operation_meta_metric_dimension_specification.rb +69 -0
  40. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/operation_meta_metric_specification.rb +167 -0
  41. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/operation_meta_service_specification.rb +77 -0
  42. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/operation_resource.rb +125 -0
  43. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/operation_status.rb +18 -0
  44. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/provisioning_state.rb +19 -0
  45. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/proxy_resource.rb +63 -0
  46. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_aggregation_function.rb +18 -0
  47. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_execution_type.rb +19 -0
  48. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_interval.rb +83 -0
  49. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_metric.rb +85 -0
  50. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_metric_unit.rb +17 -0
  51. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_observed_metric_type.rb +19 -0
  52. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/query_statistic.rb +68 -0
  53. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/replace_all_firewall_rules_operation_response.rb +46 -0
  54. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/replace_all_ip_firewall_rules_request.rb +56 -0
  55. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/replication_link.rb +206 -0
  56. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/replication_link_list_result.rb +100 -0
  57. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/replication_role.rb +19 -0
  58. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/replication_state.rb +18 -0
  59. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/resource.rb +83 -0
  60. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/resource_identity_type.rb +16 -0
  61. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/resource_move_definition.rb +46 -0
  62. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/restore_point.rb +125 -0
  63. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/restore_point_list_result.rb +100 -0
  64. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/restore_point_type.rb +16 -0
  65. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/security_alert_policy_state.rb +17 -0
  66. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sensitivity_label.rb +121 -0
  67. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sensitivity_label_list_result.rb +100 -0
  68. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sku.rb +59 -0
  69. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool.rb +199 -0
  70. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_blob_auditing_policy.rb +269 -0
  71. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_blob_auditing_policy_sql_pool_operation_list_result.rb +102 -0
  72. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_column.rb +79 -0
  73. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_column_list_result.rb +100 -0
  74. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_connection_policy.rb +163 -0
  75. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_info_list_result.rb +98 -0
  76. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_operation.rb +233 -0
  77. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_patch_info.rb +178 -0
  78. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_schema.rb +62 -0
  79. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_schema_list_result.rb +100 -0
  80. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_security_alert_policy.rb +179 -0
  81. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_table.rb +62 -0
  82. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_table_list_result.rb +100 -0
  83. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_usage.rb +120 -0
  84. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_usage_list_result.rb +99 -0
  85. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_vulnerability_assessment.rb +115 -0
  86. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_vulnerability_assessment_list_result.rb +101 -0
  87. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_vulnerability_assessment_rule_baseline.rb +84 -0
  88. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_vulnerability_assessment_rule_baseline_item.rb +56 -0
  89. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/sql_pool_vulnerability_assessment_scans_export.rb +76 -0
  90. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/top_queries.rb +152 -0
  91. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/top_queries_list_result.rb +55 -0
  92. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/tracked_resource.rb +92 -0
  93. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/transparent_data_encryption.rb +88 -0
  94. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/transparent_data_encryption_status.rb +16 -0
  95. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/virtual_network_profile.rb +46 -0
  96. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_policy_baseline_name.rb +16 -0
  97. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_recurring_scans_properties.rb +80 -0
  98. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_scan_error.rb +59 -0
  99. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_scan_record.rb +169 -0
  100. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_scan_record_list_result.rb +102 -0
  101. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_scan_state.rb +18 -0
  102. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/vulnerability_assessment_scan_trigger_type.rb +16 -0
  103. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/workspace.rb +188 -0
  104. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/workspace_aad_admin_info.rb +108 -0
  105. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/workspace_info_list_result.rb +98 -0
  106. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/models/workspace_patch_info.rb +89 -0
  107. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/module_definition.rb +9 -0
  108. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/operations.rb +457 -0
  109. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_blob_auditing_policies.rb +275 -0
  110. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_connection_policies.rb +138 -0
  111. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_data_warehouse_user_activities.rb +141 -0
  112. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_geo_backup_policies.rb +138 -0
  113. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_metadata_sync_configs.rb +263 -0
  114. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_operation_results.rb +131 -0
  115. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_operations.rb +260 -0
  116. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_replication_links.rb +259 -0
  117. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_restore_points.rb +439 -0
  118. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_schemas.rb +267 -0
  119. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_security_alert_policies.rb +275 -0
  120. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_sensitivity_labels.rb +992 -0
  121. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_table_columns.rb +277 -0
  122. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_tables.rb +272 -0
  123. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_transparent_data_encryptions.rb +275 -0
  124. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_usages.rb +259 -0
  125. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_vulnerability_assessment_rule_baselines.rb +276 -0
  126. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_vulnerability_assessment_scans.rb +536 -0
  127. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pool_vulnerability_assessments.rb +608 -0
  128. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/sql_pools.rb +1248 -0
  129. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/synapse_management_client.rb +237 -0
  130. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/workspace_aad_admins.rb +432 -0
  131. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/workspace_managed_identity_sql_control_settings.rb +246 -0
  132. data/lib/2019-06-01-preview/generated/azure_mgmt_synapse/workspaces.rb +1026 -0
  133. data/lib/azure_mgmt_synapse.rb +6 -0
  134. data/lib/module_definition.rb +7 -0
  135. data/lib/profiles/latest/modules/synapse_profile_module.rb +515 -0
  136. data/lib/profiles/latest/synapse_latest_profile_client.rb +40 -0
  137. data/lib/profiles/latest/synapse_module_definition.rb +8 -0
  138. data/lib/version.rb +7 -0
  139. metadata +254 -0
@@ -0,0 +1,728 @@
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::Synapse::Mgmt::V2019_06_01_preview
7
+ #
8
+ # Azure Synapse Analytics Management Client
9
+ #
10
+ class IpFirewallRules
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the IpFirewallRules class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [SynapseManagementClient] reference to the SynapseManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Returns a list of firewall rules
26
+ #
27
+ # @param resource_group_name [String] The name of the resource group. The name
28
+ # is case insensitive.
29
+ # @param workspace_name [String] The name of the workspace
30
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
31
+ # will be added to the HTTP request.
32
+ #
33
+ # @return [Array<IpFirewallRuleInfo>] operation results.
34
+ #
35
+ def list_by_workspace(resource_group_name, workspace_name, custom_headers:nil)
36
+ first_page = list_by_workspace_as_lazy(resource_group_name, workspace_name, custom_headers:custom_headers)
37
+ first_page.get_all_items
38
+ end
39
+
40
+ #
41
+ # Returns a list of firewall rules
42
+ #
43
+ # @param resource_group_name [String] The name of the resource group. The name
44
+ # is case insensitive.
45
+ # @param workspace_name [String] The name of the workspace
46
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
47
+ # will be added to the HTTP request.
48
+ #
49
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
50
+ #
51
+ def list_by_workspace_with_http_info(resource_group_name, workspace_name, custom_headers:nil)
52
+ list_by_workspace_async(resource_group_name, workspace_name, custom_headers:custom_headers).value!
53
+ end
54
+
55
+ #
56
+ # Returns a list of firewall rules
57
+ #
58
+ # @param resource_group_name [String] The name of the resource group. The name
59
+ # is case insensitive.
60
+ # @param workspace_name [String] The name of the workspace
61
+ # @param [Hash{String => String}] A hash of custom headers that will be added
62
+ # to the HTTP request.
63
+ #
64
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
65
+ #
66
+ def list_by_workspace_async(resource_group_name, workspace_name, custom_headers:nil)
67
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
68
+ fail ArgumentError, "'@client.api_version' should satisfy the constraint - 'MinLength': '1'" if !@client.api_version.nil? && @client.api_version.length < 1
69
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
70
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'MinLength': '1'" if !@client.subscription_id.nil? && @client.subscription_id.length < 1
71
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
72
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
73
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
74
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
75
+ fail ArgumentError, 'workspace_name is nil' if workspace_name.nil?
76
+
77
+
78
+ request_headers = {}
79
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
80
+
81
+ # Set Headers
82
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
83
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
84
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules'
85
+
86
+ request_url = @base_url || @client.base_url
87
+
88
+ options = {
89
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
90
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'workspaceName' => workspace_name},
91
+ query_params: {'api-version' => @client.api_version},
92
+ headers: request_headers.merge(custom_headers || {}),
93
+ base_url: request_url
94
+ }
95
+ promise = @client.make_request_async(:get, path_template, options)
96
+
97
+ promise = promise.then do |result|
98
+ http_response = result.response
99
+ status_code = http_response.status
100
+ response_content = http_response.body
101
+ unless status_code == 200
102
+ error_model = JSON.load(response_content)
103
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
104
+ end
105
+
106
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
107
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
108
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
109
+ # Deserialize Response
110
+ if status_code == 200
111
+ begin
112
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
113
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::IpFirewallRuleInfoListResult.mapper()
114
+ result.body = @client.deserialize(result_mapper, parsed_response)
115
+ rescue Exception => e
116
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
117
+ end
118
+ end
119
+
120
+ result
121
+ end
122
+
123
+ promise.execute
124
+ end
125
+
126
+ #
127
+ # Creates or updates a firewall rule
128
+ #
129
+ # @param resource_group_name [String] The name of the resource group. The name
130
+ # is case insensitive.
131
+ # @param workspace_name [String] The name of the workspace
132
+ # @param rule_name [String] The IP firewall rule name
133
+ # @param ip_firewall_rule_info [IpFirewallRuleInfo] IP firewall rule properties
134
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
135
+ # will be added to the HTTP request.
136
+ #
137
+ # @return [IpFirewallRuleInfo] operation results.
138
+ #
139
+ def create_or_update(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:nil)
140
+ response = create_or_update_async(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:custom_headers).value!
141
+ response.body unless response.nil?
142
+ end
143
+
144
+ #
145
+ # @param resource_group_name [String] The name of the resource group. The name
146
+ # is case insensitive.
147
+ # @param workspace_name [String] The name of the workspace
148
+ # @param rule_name [String] The IP firewall rule name
149
+ # @param ip_firewall_rule_info [IpFirewallRuleInfo] IP firewall rule properties
150
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
151
+ # will be added to the HTTP request.
152
+ #
153
+ # @return [Concurrent::Promise] promise which provides async access to http
154
+ # response.
155
+ #
156
+ def create_or_update_async(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:nil)
157
+ # Send request
158
+ promise = begin_create_or_update_async(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:custom_headers)
159
+
160
+ promise = promise.then do |response|
161
+ # Defining deserialization method.
162
+ deserialize_method = lambda do |parsed_response|
163
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::IpFirewallRuleInfo.mapper()
164
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
165
+ end
166
+
167
+ # Waiting for response.
168
+ @client.get_long_running_operation_result(response, deserialize_method)
169
+ end
170
+
171
+ promise
172
+ end
173
+
174
+ #
175
+ # Deletes a firewall rule
176
+ #
177
+ # @param resource_group_name [String] The name of the resource group. The name
178
+ # is case insensitive.
179
+ # @param workspace_name [String] The name of the workspace
180
+ # @param rule_name [String] The IP firewall rule name
181
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
182
+ # will be added to the HTTP request.
183
+ #
184
+ # @return [Object] operation results.
185
+ #
186
+ def delete(resource_group_name, workspace_name, rule_name, custom_headers:nil)
187
+ response = delete_async(resource_group_name, workspace_name, rule_name, custom_headers:custom_headers).value!
188
+ response.body unless response.nil?
189
+ end
190
+
191
+ #
192
+ # @param resource_group_name [String] The name of the resource group. The name
193
+ # is case insensitive.
194
+ # @param workspace_name [String] The name of the workspace
195
+ # @param rule_name [String] The IP firewall rule name
196
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
197
+ # will be added to the HTTP request.
198
+ #
199
+ # @return [Concurrent::Promise] promise which provides async access to http
200
+ # response.
201
+ #
202
+ def delete_async(resource_group_name, workspace_name, rule_name, custom_headers:nil)
203
+ # Send request
204
+ promise = begin_delete_async(resource_group_name, workspace_name, rule_name, custom_headers:custom_headers)
205
+
206
+ promise = promise.then do |response|
207
+ # Defining deserialization method.
208
+ deserialize_method = lambda do |parsed_response|
209
+ result_mapper = {
210
+ client_side_validation: true,
211
+ required: false,
212
+ serialized_name: 'parsed_response',
213
+ type: {
214
+ name: 'Object'
215
+ }
216
+ }
217
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
218
+ end
219
+
220
+ # Waiting for response.
221
+ @client.get_long_running_operation_result(response, deserialize_method)
222
+ end
223
+
224
+ promise
225
+ end
226
+
227
+ #
228
+ # Replaces firewall rules
229
+ #
230
+ # @param resource_group_name [String] The name of the resource group. The name
231
+ # is case insensitive.
232
+ # @param workspace_name [String] The name of the workspace
233
+ # @param request [ReplaceAllIpFirewallRulesRequest] Replace all IP firewall
234
+ # rules request
235
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
236
+ # will be added to the HTTP request.
237
+ #
238
+ # @return [ReplaceAllFirewallRulesOperationResponse] operation results.
239
+ #
240
+ def replace_all(resource_group_name, workspace_name, request, custom_headers:nil)
241
+ response = replace_all_async(resource_group_name, workspace_name, request, custom_headers:custom_headers).value!
242
+ response.body unless response.nil?
243
+ end
244
+
245
+ #
246
+ # @param resource_group_name [String] The name of the resource group. The name
247
+ # is case insensitive.
248
+ # @param workspace_name [String] The name of the workspace
249
+ # @param request [ReplaceAllIpFirewallRulesRequest] Replace all IP firewall
250
+ # rules request
251
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
252
+ # will be added to the HTTP request.
253
+ #
254
+ # @return [Concurrent::Promise] promise which provides async access to http
255
+ # response.
256
+ #
257
+ def replace_all_async(resource_group_name, workspace_name, request, custom_headers:nil)
258
+ # Send request
259
+ promise = begin_replace_all_async(resource_group_name, workspace_name, request, custom_headers:custom_headers)
260
+
261
+ promise = promise.then do |response|
262
+ # Defining deserialization method.
263
+ deserialize_method = lambda do |parsed_response|
264
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::ReplaceAllFirewallRulesOperationResponse.mapper()
265
+ parsed_response = @client.deserialize(result_mapper, parsed_response)
266
+ end
267
+
268
+ # Waiting for response.
269
+ @client.get_long_running_operation_result(response, deserialize_method, FinalStateVia::LOCATION)
270
+ end
271
+
272
+ promise
273
+ end
274
+
275
+ #
276
+ # Creates or updates a firewall rule
277
+ #
278
+ # @param resource_group_name [String] The name of the resource group. The name
279
+ # is case insensitive.
280
+ # @param workspace_name [String] The name of the workspace
281
+ # @param rule_name [String] The IP firewall rule name
282
+ # @param ip_firewall_rule_info [IpFirewallRuleInfo] IP firewall rule properties
283
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
284
+ # will be added to the HTTP request.
285
+ #
286
+ # @return [IpFirewallRuleInfo] operation results.
287
+ #
288
+ def begin_create_or_update(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:nil)
289
+ response = begin_create_or_update_async(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:custom_headers).value!
290
+ response.body unless response.nil?
291
+ end
292
+
293
+ #
294
+ # Creates or updates a firewall rule
295
+ #
296
+ # @param resource_group_name [String] The name of the resource group. The name
297
+ # is case insensitive.
298
+ # @param workspace_name [String] The name of the workspace
299
+ # @param rule_name [String] The IP firewall rule name
300
+ # @param ip_firewall_rule_info [IpFirewallRuleInfo] IP firewall rule properties
301
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
302
+ # will be added to the HTTP request.
303
+ #
304
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
305
+ #
306
+ def begin_create_or_update_with_http_info(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:nil)
307
+ begin_create_or_update_async(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:custom_headers).value!
308
+ end
309
+
310
+ #
311
+ # Creates or updates a firewall rule
312
+ #
313
+ # @param resource_group_name [String] The name of the resource group. The name
314
+ # is case insensitive.
315
+ # @param workspace_name [String] The name of the workspace
316
+ # @param rule_name [String] The IP firewall rule name
317
+ # @param ip_firewall_rule_info [IpFirewallRuleInfo] IP firewall rule properties
318
+ # @param [Hash{String => String}] A hash of custom headers that will be added
319
+ # to the HTTP request.
320
+ #
321
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
322
+ #
323
+ def begin_create_or_update_async(resource_group_name, workspace_name, rule_name, ip_firewall_rule_info, custom_headers:nil)
324
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
325
+ fail ArgumentError, "'@client.api_version' should satisfy the constraint - 'MinLength': '1'" if !@client.api_version.nil? && @client.api_version.length < 1
326
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
327
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'MinLength': '1'" if !@client.subscription_id.nil? && @client.subscription_id.length < 1
328
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
329
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
330
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
331
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
332
+ fail ArgumentError, 'workspace_name is nil' if workspace_name.nil?
333
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
334
+ fail ArgumentError, 'ip_firewall_rule_info is nil' if ip_firewall_rule_info.nil?
335
+
336
+
337
+ request_headers = {}
338
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
339
+
340
+ # Set Headers
341
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
342
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
343
+
344
+ # Serialize Request
345
+ request_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::IpFirewallRuleInfo.mapper()
346
+ request_content = @client.serialize(request_mapper, ip_firewall_rule_info)
347
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
348
+
349
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules/{ruleName}'
350
+
351
+ request_url = @base_url || @client.base_url
352
+
353
+ options = {
354
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
355
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'workspaceName' => workspace_name,'ruleName' => rule_name},
356
+ query_params: {'api-version' => @client.api_version},
357
+ body: request_content,
358
+ headers: request_headers.merge(custom_headers || {}),
359
+ base_url: request_url
360
+ }
361
+ promise = @client.make_request_async(:put, path_template, options)
362
+
363
+ promise = promise.then do |result|
364
+ http_response = result.response
365
+ status_code = http_response.status
366
+ response_content = http_response.body
367
+ unless status_code == 200 || status_code == 201
368
+ error_model = JSON.load(response_content)
369
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
370
+ end
371
+
372
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
373
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
374
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
375
+ # Deserialize Response
376
+ if status_code == 200
377
+ begin
378
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
379
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::IpFirewallRuleInfo.mapper()
380
+ result.body = @client.deserialize(result_mapper, parsed_response)
381
+ rescue Exception => e
382
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
383
+ end
384
+ end
385
+ # Deserialize Response
386
+ if status_code == 201
387
+ begin
388
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
389
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::IpFirewallRuleInfo.mapper()
390
+ result.body = @client.deserialize(result_mapper, parsed_response)
391
+ rescue Exception => e
392
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
393
+ end
394
+ end
395
+
396
+ result
397
+ end
398
+
399
+ promise.execute
400
+ end
401
+
402
+ #
403
+ # Deletes a firewall rule
404
+ #
405
+ # @param resource_group_name [String] The name of the resource group. The name
406
+ # is case insensitive.
407
+ # @param workspace_name [String] The name of the workspace
408
+ # @param rule_name [String] The IP firewall rule name
409
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
410
+ # will be added to the HTTP request.
411
+ #
412
+ # @return [Object] operation results.
413
+ #
414
+ def begin_delete(resource_group_name, workspace_name, rule_name, custom_headers:nil)
415
+ response = begin_delete_async(resource_group_name, workspace_name, rule_name, custom_headers:custom_headers).value!
416
+ response.body unless response.nil?
417
+ end
418
+
419
+ #
420
+ # Deletes a firewall rule
421
+ #
422
+ # @param resource_group_name [String] The name of the resource group. The name
423
+ # is case insensitive.
424
+ # @param workspace_name [String] The name of the workspace
425
+ # @param rule_name [String] The IP firewall rule name
426
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
427
+ # will be added to the HTTP request.
428
+ #
429
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
430
+ #
431
+ def begin_delete_with_http_info(resource_group_name, workspace_name, rule_name, custom_headers:nil)
432
+ begin_delete_async(resource_group_name, workspace_name, rule_name, custom_headers:custom_headers).value!
433
+ end
434
+
435
+ #
436
+ # Deletes a firewall rule
437
+ #
438
+ # @param resource_group_name [String] The name of the resource group. The name
439
+ # is case insensitive.
440
+ # @param workspace_name [String] The name of the workspace
441
+ # @param rule_name [String] The IP firewall rule name
442
+ # @param [Hash{String => String}] A hash of custom headers that will be added
443
+ # to the HTTP request.
444
+ #
445
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
446
+ #
447
+ def begin_delete_async(resource_group_name, workspace_name, rule_name, custom_headers:nil)
448
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
449
+ fail ArgumentError, "'@client.api_version' should satisfy the constraint - 'MinLength': '1'" if !@client.api_version.nil? && @client.api_version.length < 1
450
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
451
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'MinLength': '1'" if !@client.subscription_id.nil? && @client.subscription_id.length < 1
452
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
453
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
454
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
455
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
456
+ fail ArgumentError, 'workspace_name is nil' if workspace_name.nil?
457
+ fail ArgumentError, 'rule_name is nil' if rule_name.nil?
458
+
459
+
460
+ request_headers = {}
461
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
462
+
463
+ # Set Headers
464
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
465
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
466
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules/{ruleName}'
467
+
468
+ request_url = @base_url || @client.base_url
469
+
470
+ options = {
471
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
472
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'workspaceName' => workspace_name,'ruleName' => rule_name},
473
+ query_params: {'api-version' => @client.api_version},
474
+ headers: request_headers.merge(custom_headers || {}),
475
+ base_url: request_url
476
+ }
477
+ promise = @client.make_request_async(:delete, path_template, options)
478
+
479
+ promise = promise.then do |result|
480
+ http_response = result.response
481
+ status_code = http_response.status
482
+ response_content = http_response.body
483
+ unless status_code == 200 || status_code == 204 || status_code == 202
484
+ error_model = JSON.load(response_content)
485
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
486
+ end
487
+
488
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
489
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
490
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
491
+
492
+ result
493
+ end
494
+
495
+ promise.execute
496
+ end
497
+
498
+ #
499
+ # Replaces firewall rules
500
+ #
501
+ # @param resource_group_name [String] The name of the resource group. The name
502
+ # is case insensitive.
503
+ # @param workspace_name [String] The name of the workspace
504
+ # @param request [ReplaceAllIpFirewallRulesRequest] Replace all IP firewall
505
+ # rules request
506
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
507
+ # will be added to the HTTP request.
508
+ #
509
+ # @return [ReplaceAllFirewallRulesOperationResponse] operation results.
510
+ #
511
+ def begin_replace_all(resource_group_name, workspace_name, request, custom_headers:nil)
512
+ response = begin_replace_all_async(resource_group_name, workspace_name, request, custom_headers:custom_headers).value!
513
+ response.body unless response.nil?
514
+ end
515
+
516
+ #
517
+ # Replaces firewall rules
518
+ #
519
+ # @param resource_group_name [String] The name of the resource group. The name
520
+ # is case insensitive.
521
+ # @param workspace_name [String] The name of the workspace
522
+ # @param request [ReplaceAllIpFirewallRulesRequest] Replace all IP firewall
523
+ # rules request
524
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
525
+ # will be added to the HTTP request.
526
+ #
527
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
528
+ #
529
+ def begin_replace_all_with_http_info(resource_group_name, workspace_name, request, custom_headers:nil)
530
+ begin_replace_all_async(resource_group_name, workspace_name, request, custom_headers:custom_headers).value!
531
+ end
532
+
533
+ #
534
+ # Replaces firewall rules
535
+ #
536
+ # @param resource_group_name [String] The name of the resource group. The name
537
+ # is case insensitive.
538
+ # @param workspace_name [String] The name of the workspace
539
+ # @param request [ReplaceAllIpFirewallRulesRequest] Replace all IP firewall
540
+ # rules request
541
+ # @param [Hash{String => String}] A hash of custom headers that will be added
542
+ # to the HTTP request.
543
+ #
544
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
545
+ #
546
+ def begin_replace_all_async(resource_group_name, workspace_name, request, custom_headers:nil)
547
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
548
+ fail ArgumentError, "'@client.api_version' should satisfy the constraint - 'MinLength': '1'" if !@client.api_version.nil? && @client.api_version.length < 1
549
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
550
+ fail ArgumentError, "'@client.subscription_id' should satisfy the constraint - 'MinLength': '1'" if !@client.subscription_id.nil? && @client.subscription_id.length < 1
551
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
552
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90
553
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1
554
+ fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil?
555
+ fail ArgumentError, 'workspace_name is nil' if workspace_name.nil?
556
+ fail ArgumentError, 'request is nil' if request.nil?
557
+
558
+
559
+ request_headers = {}
560
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
561
+
562
+ # Set Headers
563
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
564
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
565
+
566
+ # Serialize Request
567
+ request_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::ReplaceAllIpFirewallRulesRequest.mapper()
568
+ request_content = @client.serialize(request_mapper, request)
569
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
570
+
571
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/replaceAllIpFirewallRules'
572
+
573
+ request_url = @base_url || @client.base_url
574
+
575
+ options = {
576
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
577
+ path_params: {'subscriptionId' => @client.subscription_id,'resourceGroupName' => resource_group_name,'workspaceName' => workspace_name},
578
+ query_params: {'api-version' => @client.api_version},
579
+ body: request_content,
580
+ headers: request_headers.merge(custom_headers || {}),
581
+ base_url: request_url
582
+ }
583
+ promise = @client.make_request_async(:post, path_template, options)
584
+
585
+ promise = promise.then do |result|
586
+ http_response = result.response
587
+ status_code = http_response.status
588
+ response_content = http_response.body
589
+ unless status_code == 200 || status_code == 202
590
+ error_model = JSON.load(response_content)
591
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
592
+ end
593
+
594
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
595
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
596
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
597
+ # Deserialize Response
598
+ if status_code == 200
599
+ begin
600
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
601
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::ReplaceAllFirewallRulesOperationResponse.mapper()
602
+ result.body = @client.deserialize(result_mapper, parsed_response)
603
+ rescue Exception => e
604
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
605
+ end
606
+ end
607
+
608
+ result
609
+ end
610
+
611
+ promise.execute
612
+ end
613
+
614
+ #
615
+ # Returns a list of firewall rules
616
+ #
617
+ # @param next_page_link [String] The NextLink from the previous successful call
618
+ # to List operation.
619
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
620
+ # will be added to the HTTP request.
621
+ #
622
+ # @return [IpFirewallRuleInfoListResult] operation results.
623
+ #
624
+ def list_by_workspace_next(next_page_link, custom_headers:nil)
625
+ response = list_by_workspace_next_async(next_page_link, custom_headers:custom_headers).value!
626
+ response.body unless response.nil?
627
+ end
628
+
629
+ #
630
+ # Returns a list of firewall rules
631
+ #
632
+ # @param next_page_link [String] The NextLink from the previous successful call
633
+ # to List operation.
634
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
635
+ # will be added to the HTTP request.
636
+ #
637
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
638
+ #
639
+ def list_by_workspace_next_with_http_info(next_page_link, custom_headers:nil)
640
+ list_by_workspace_next_async(next_page_link, custom_headers:custom_headers).value!
641
+ end
642
+
643
+ #
644
+ # Returns a list of firewall rules
645
+ #
646
+ # @param next_page_link [String] The NextLink from the previous successful call
647
+ # to List operation.
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_by_workspace_next_async(next_page_link, custom_headers:nil)
654
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
655
+
656
+
657
+ request_headers = {}
658
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
659
+
660
+ # Set Headers
661
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
662
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
663
+ path_template = '{nextLink}'
664
+
665
+ request_url = @base_url || @client.base_url
666
+
667
+ options = {
668
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
669
+ skip_encoding_path_params: {'nextLink' => next_page_link},
670
+ headers: request_headers.merge(custom_headers || {}),
671
+ base_url: request_url
672
+ }
673
+ promise = @client.make_request_async(:get, path_template, options)
674
+
675
+ promise = promise.then do |result|
676
+ http_response = result.response
677
+ status_code = http_response.status
678
+ response_content = http_response.body
679
+ unless status_code == 200
680
+ error_model = JSON.load(response_content)
681
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
682
+ end
683
+
684
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
685
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
686
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
687
+ # Deserialize Response
688
+ if status_code == 200
689
+ begin
690
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
691
+ result_mapper = Azure::Synapse::Mgmt::V2019_06_01_preview::Models::IpFirewallRuleInfoListResult.mapper()
692
+ result.body = @client.deserialize(result_mapper, parsed_response)
693
+ rescue Exception => e
694
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
695
+ end
696
+ end
697
+
698
+ result
699
+ end
700
+
701
+ promise.execute
702
+ end
703
+
704
+ #
705
+ # Returns a list of firewall rules
706
+ #
707
+ # @param resource_group_name [String] The name of the resource group. The name
708
+ # is case insensitive.
709
+ # @param workspace_name [String] The name of the workspace
710
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
711
+ # will be added to the HTTP request.
712
+ #
713
+ # @return [IpFirewallRuleInfoListResult] which provide lazy access to pages of
714
+ # the response.
715
+ #
716
+ def list_by_workspace_as_lazy(resource_group_name, workspace_name, custom_headers:nil)
717
+ response = list_by_workspace_async(resource_group_name, workspace_name, custom_headers:custom_headers).value!
718
+ unless response.nil?
719
+ page = response.body
720
+ page.next_method = Proc.new do |next_page_link|
721
+ list_by_workspace_next_async(next_page_link, custom_headers:custom_headers)
722
+ end
723
+ page
724
+ end
725
+ end
726
+
727
+ end
728
+ end