azure_mgmt_traffic_manager 0.16.0 → 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 (106) hide show
  1. checksums.yaml +4 -4
  2. data/lib/2015-11-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +6 -5
  3. data/lib/2017-03-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +6 -5
  4. data/lib/2017-05-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +6 -5
  5. data/lib/2017-09-01-preview/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +6 -5
  6. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager.rb +50 -0
  7. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/endpoints.rb +493 -0
  8. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/geographic_hierarchies.rb +110 -0
  9. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/check_traffic_manager_relative_dns_name_availability_parameters.rb +58 -0
  10. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/delete_operation_result.rb +47 -0
  11. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/dns_config.rb +76 -0
  12. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/endpoint.rb +188 -0
  13. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/endpoint_monitor_status.rb +20 -0
  14. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/endpoint_status.rb +16 -0
  15. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/monitor_config.rb +124 -0
  16. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/monitor_protocol.rb +17 -0
  17. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/profile.rb +172 -0
  18. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/profile_list_result.rb +55 -0
  19. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/profile_monitor_status.rb +19 -0
  20. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/profile_status.rb +16 -0
  21. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/proxy_resource.rb +63 -0
  22. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/region.rb +79 -0
  23. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/resource.rb +73 -0
  24. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/tracked_resource.rb +92 -0
  25. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_geographic_hierarchy.rb +76 -0
  26. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_name_availability.rb +93 -0
  27. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/traffic_routing_method.rb +18 -0
  28. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/models/traffic_view_enrollment_status.rb +16 -0
  29. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/module_definition.rb +9 -0
  30. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/profiles.rb +720 -0
  31. data/lib/2018-02-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +141 -0
  32. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager.rb +58 -0
  33. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/endpoints.rb +493 -0
  34. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/geographic_hierarchies.rb +110 -0
  35. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/heat_map.rb +137 -0
  36. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/check_traffic_manager_relative_dns_name_availability_parameters.rb +58 -0
  37. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/delete_operation_result.rb +47 -0
  38. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/dns_config.rb +76 -0
  39. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint.rb +206 -0
  40. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint_monitor_status.rb +20 -0
  41. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint_properties_custom_headers_item.rb +57 -0
  42. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint_status.rb +16 -0
  43. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/heat_map_endpoint.rb +58 -0
  44. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/heat_map_model.rb +125 -0
  45. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_config.rb +165 -0
  46. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_config_custom_headers_item.rb +57 -0
  47. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_config_expected_status_code_ranges_item.rb +58 -0
  48. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_protocol.rb +17 -0
  49. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/profile.rb +169 -0
  50. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/profile_list_result.rb +55 -0
  51. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/profile_monitor_status.rb +19 -0
  52. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/profile_status.rb +16 -0
  53. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/proxy_resource.rb +60 -0
  54. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/query_experience.rb +70 -0
  55. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/region.rb +79 -0
  56. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/resource.rb +70 -0
  57. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/tracked_resource.rb +89 -0
  58. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_flow.rb +92 -0
  59. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_geographic_hierarchy.rb +73 -0
  60. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_name_availability.rb +93 -0
  61. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_routing_method.rb +18 -0
  62. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_view_enrollment_status.rb +16 -0
  63. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/module_definition.rb +9 -0
  64. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/profiles.rb +720 -0
  65. data/lib/2018-03-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +145 -0
  66. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager.rb +61 -0
  67. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/endpoints.rb +493 -0
  68. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/geographic_hierarchies.rb +110 -0
  69. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/heat_map.rb +137 -0
  70. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/check_traffic_manager_relative_dns_name_availability_parameters.rb +58 -0
  71. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/delete_operation_result.rb +47 -0
  72. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/dns_config.rb +76 -0
  73. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/endpoint.rb +232 -0
  74. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/endpoint_monitor_status.rb +20 -0
  75. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/endpoint_properties_custom_headers_item.rb +57 -0
  76. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/endpoint_properties_subnets_item.rb +69 -0
  77. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/endpoint_status.rb +16 -0
  78. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/heat_map_endpoint.rb +58 -0
  79. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/heat_map_model.rb +128 -0
  80. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/monitor_config.rb +165 -0
  81. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/monitor_config_custom_headers_item.rb +57 -0
  82. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/monitor_config_expected_status_code_ranges_item.rb +58 -0
  83. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/monitor_protocol.rb +17 -0
  84. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/profile.rb +184 -0
  85. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/profile_list_result.rb +55 -0
  86. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/profile_monitor_status.rb +19 -0
  87. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/profile_status.rb +16 -0
  88. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/proxy_resource.rb +63 -0
  89. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/query_experience.rb +70 -0
  90. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/region.rb +79 -0
  91. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/resource.rb +73 -0
  92. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/tracked_resource.rb +92 -0
  93. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/traffic_flow.rb +92 -0
  94. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_geographic_hierarchy.rb +76 -0
  95. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_name_availability.rb +93 -0
  96. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/traffic_routing_method.rb +20 -0
  97. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/traffic_view_enrollment_status.rb +16 -0
  98. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/models/user_metrics_model.rb +73 -0
  99. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/module_definition.rb +9 -0
  100. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/profiles.rb +720 -0
  101. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb +149 -0
  102. data/lib/2018-04-01/generated/azure_mgmt_traffic_manager/traffic_manager_user_metrics_keys.rb +280 -0
  103. data/lib/azure_mgmt_traffic_manager.rb +4 -1
  104. data/lib/profiles/latest/modules/trafficmanager_profile_module.rb +98 -86
  105. data/lib/version.rb +1 -1
  106. metadata +102 -5
@@ -0,0 +1,18 @@
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::TrafficManager::Mgmt::V2018_02_01
7
+ module Models
8
+ #
9
+ # Defines values for TrafficRoutingMethod
10
+ #
11
+ module TrafficRoutingMethod
12
+ Performance = "Performance"
13
+ Priority = "Priority"
14
+ Weighted = "Weighted"
15
+ Geographic = "Geographic"
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,16 @@
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::TrafficManager::Mgmt::V2018_02_01
7
+ module Models
8
+ #
9
+ # Defines values for TrafficViewEnrollmentStatus
10
+ #
11
+ module TrafficViewEnrollmentStatus
12
+ Enabled = "Enabled"
13
+ Disabled = "Disabled"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,9 @@
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 end
7
+ module Azure::TrafficManager end
8
+ module Azure::TrafficManager::Mgmt end
9
+ module Azure::TrafficManager::Mgmt::V2018_02_01 end
@@ -0,0 +1,720 @@
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::TrafficManager::Mgmt::V2018_02_01
7
+ #
8
+ # Profiles
9
+ #
10
+ class Profiles
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the Profiles class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [TrafficManagerManagementClient] reference to the TrafficManagerManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Checks the availability of a Traffic Manager Relative DNS name.
26
+ #
27
+ # @param parameters [CheckTrafficManagerRelativeDnsNameAvailabilityParameters]
28
+ # The Traffic Manager name parameters supplied to the
29
+ # CheckTrafficManagerNameAvailability operation.
30
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
31
+ # will be added to the HTTP request.
32
+ #
33
+ # @return [TrafficManagerNameAvailability] operation results.
34
+ #
35
+ def check_traffic_manager_relative_dns_name_availability(parameters, custom_headers:nil)
36
+ response = check_traffic_manager_relative_dns_name_availability_async(parameters, custom_headers:custom_headers).value!
37
+ response.body unless response.nil?
38
+ end
39
+
40
+ #
41
+ # Checks the availability of a Traffic Manager Relative DNS name.
42
+ #
43
+ # @param parameters [CheckTrafficManagerRelativeDnsNameAvailabilityParameters]
44
+ # The Traffic Manager name parameters supplied to the
45
+ # CheckTrafficManagerNameAvailability operation.
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 check_traffic_manager_relative_dns_name_availability_with_http_info(parameters, custom_headers:nil)
52
+ check_traffic_manager_relative_dns_name_availability_async(parameters, custom_headers:custom_headers).value!
53
+ end
54
+
55
+ #
56
+ # Checks the availability of a Traffic Manager Relative DNS name.
57
+ #
58
+ # @param parameters [CheckTrafficManagerRelativeDnsNameAvailabilityParameters]
59
+ # The Traffic Manager name parameters supplied to the
60
+ # CheckTrafficManagerNameAvailability operation.
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 check_traffic_manager_relative_dns_name_availability_async(parameters, custom_headers:nil)
67
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
68
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
69
+
70
+
71
+ request_headers = {}
72
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
73
+
74
+ # Set Headers
75
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
76
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
77
+
78
+ # Serialize Request
79
+ request_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::CheckTrafficManagerRelativeDnsNameAvailabilityParameters.mapper()
80
+ request_content = @client.serialize(request_mapper, parameters)
81
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
82
+
83
+ path_template = 'providers/Microsoft.Network/checkTrafficManagerNameAvailability'
84
+
85
+ request_url = @base_url || @client.base_url
86
+
87
+ options = {
88
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
89
+ query_params: {'api-version' => @client.api_version},
90
+ body: request_content,
91
+ headers: request_headers.merge(custom_headers || {}),
92
+ base_url: request_url
93
+ }
94
+ promise = @client.make_request_async(:post, path_template, options)
95
+
96
+ promise = promise.then do |result|
97
+ http_response = result.response
98
+ status_code = http_response.status
99
+ response_content = http_response.body
100
+ unless status_code == 200
101
+ error_model = JSON.load(response_content)
102
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
103
+ end
104
+
105
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
106
+ # Deserialize Response
107
+ if status_code == 200
108
+ begin
109
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
110
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::TrafficManagerNameAvailability.mapper()
111
+ result.body = @client.deserialize(result_mapper, parsed_response)
112
+ rescue Exception => e
113
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
114
+ end
115
+ end
116
+
117
+ result
118
+ end
119
+
120
+ promise.execute
121
+ end
122
+
123
+ #
124
+ # Lists all Traffic Manager profiles within a resource group.
125
+ #
126
+ # @param resource_group_name [String] The name of the resource group containing
127
+ # the Traffic Manager profiles to be listed.
128
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
129
+ # will be added to the HTTP request.
130
+ #
131
+ # @return [ProfileListResult] operation results.
132
+ #
133
+ def list_by_resource_group(resource_group_name, custom_headers:nil)
134
+ response = list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value!
135
+ response.body unless response.nil?
136
+ end
137
+
138
+ #
139
+ # Lists all Traffic Manager profiles within a resource group.
140
+ #
141
+ # @param resource_group_name [String] The name of the resource group containing
142
+ # the Traffic Manager profiles to be listed.
143
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
144
+ # will be added to the HTTP request.
145
+ #
146
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
147
+ #
148
+ def list_by_resource_group_with_http_info(resource_group_name, custom_headers:nil)
149
+ list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value!
150
+ end
151
+
152
+ #
153
+ # Lists all Traffic Manager profiles within a resource group.
154
+ #
155
+ # @param resource_group_name [String] The name of the resource group containing
156
+ # the Traffic Manager profiles to be listed.
157
+ # @param [Hash{String => String}] A hash of custom headers that will be added
158
+ # to the HTTP request.
159
+ #
160
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
161
+ #
162
+ def list_by_resource_group_async(resource_group_name, custom_headers:nil)
163
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
164
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
165
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
166
+
167
+
168
+ request_headers = {}
169
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
170
+
171
+ # Set Headers
172
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
173
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
174
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles'
175
+
176
+ request_url = @base_url || @client.base_url
177
+
178
+ options = {
179
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
180
+ path_params: {'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
181
+ query_params: {'api-version' => @client.api_version},
182
+ headers: request_headers.merge(custom_headers || {}),
183
+ base_url: request_url
184
+ }
185
+ promise = @client.make_request_async(:get, path_template, options)
186
+
187
+ promise = promise.then do |result|
188
+ http_response = result.response
189
+ status_code = http_response.status
190
+ response_content = http_response.body
191
+ unless status_code == 200
192
+ error_model = JSON.load(response_content)
193
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
194
+ end
195
+
196
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
197
+ # Deserialize Response
198
+ if status_code == 200
199
+ begin
200
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
201
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::ProfileListResult.mapper()
202
+ result.body = @client.deserialize(result_mapper, parsed_response)
203
+ rescue Exception => e
204
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
205
+ end
206
+ end
207
+
208
+ result
209
+ end
210
+
211
+ promise.execute
212
+ end
213
+
214
+ #
215
+ # Lists all Traffic Manager profiles within a subscription.
216
+ #
217
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
218
+ # will be added to the HTTP request.
219
+ #
220
+ # @return [ProfileListResult] operation results.
221
+ #
222
+ def list_by_subscription(custom_headers:nil)
223
+ response = list_by_subscription_async(custom_headers:custom_headers).value!
224
+ response.body unless response.nil?
225
+ end
226
+
227
+ #
228
+ # Lists all Traffic Manager profiles within a subscription.
229
+ #
230
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
231
+ # will be added to the HTTP request.
232
+ #
233
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
234
+ #
235
+ def list_by_subscription_with_http_info(custom_headers:nil)
236
+ list_by_subscription_async(custom_headers:custom_headers).value!
237
+ end
238
+
239
+ #
240
+ # Lists all Traffic Manager profiles within a subscription.
241
+ #
242
+ # @param [Hash{String => String}] A hash of custom headers that will be added
243
+ # to the HTTP request.
244
+ #
245
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
246
+ #
247
+ def list_by_subscription_async(custom_headers:nil)
248
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
249
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
250
+
251
+
252
+ request_headers = {}
253
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
254
+
255
+ # Set Headers
256
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
257
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
258
+ path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.Network/trafficmanagerprofiles'
259
+
260
+ request_url = @base_url || @client.base_url
261
+
262
+ options = {
263
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
264
+ path_params: {'subscriptionId' => @client.subscription_id},
265
+ query_params: {'api-version' => @client.api_version},
266
+ headers: request_headers.merge(custom_headers || {}),
267
+ base_url: request_url
268
+ }
269
+ promise = @client.make_request_async(:get, path_template, options)
270
+
271
+ promise = promise.then do |result|
272
+ http_response = result.response
273
+ status_code = http_response.status
274
+ response_content = http_response.body
275
+ unless status_code == 200
276
+ error_model = JSON.load(response_content)
277
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
278
+ end
279
+
280
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
281
+ # Deserialize Response
282
+ if status_code == 200
283
+ begin
284
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
285
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::ProfileListResult.mapper()
286
+ result.body = @client.deserialize(result_mapper, parsed_response)
287
+ rescue Exception => e
288
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
289
+ end
290
+ end
291
+
292
+ result
293
+ end
294
+
295
+ promise.execute
296
+ end
297
+
298
+ #
299
+ # Gets a Traffic Manager profile.
300
+ #
301
+ # @param resource_group_name [String] The name of the resource group containing
302
+ # the Traffic Manager profile.
303
+ # @param profile_name [String] The name of the Traffic Manager profile.
304
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
305
+ # will be added to the HTTP request.
306
+ #
307
+ # @return [Profile] operation results.
308
+ #
309
+ def get(resource_group_name, profile_name, custom_headers:nil)
310
+ response = get_async(resource_group_name, profile_name, custom_headers:custom_headers).value!
311
+ response.body unless response.nil?
312
+ end
313
+
314
+ #
315
+ # Gets a Traffic Manager profile.
316
+ #
317
+ # @param resource_group_name [String] The name of the resource group containing
318
+ # the Traffic Manager profile.
319
+ # @param profile_name [String] The name of the Traffic Manager profile.
320
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
321
+ # will be added to the HTTP request.
322
+ #
323
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
324
+ #
325
+ def get_with_http_info(resource_group_name, profile_name, custom_headers:nil)
326
+ get_async(resource_group_name, profile_name, custom_headers:custom_headers).value!
327
+ end
328
+
329
+ #
330
+ # Gets a Traffic Manager profile.
331
+ #
332
+ # @param resource_group_name [String] The name of the resource group containing
333
+ # the Traffic Manager profile.
334
+ # @param profile_name [String] The name of the Traffic Manager profile.
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 get_async(resource_group_name, profile_name, custom_headers:nil)
341
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
342
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
343
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
344
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
345
+
346
+
347
+ request_headers = {}
348
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
349
+
350
+ # Set Headers
351
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
352
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
353
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}'
354
+
355
+ request_url = @base_url || @client.base_url
356
+
357
+ options = {
358
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
359
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'subscriptionId' => @client.subscription_id},
360
+ query_params: {'api-version' => @client.api_version},
361
+ headers: request_headers.merge(custom_headers || {}),
362
+ base_url: request_url
363
+ }
364
+ promise = @client.make_request_async(:get, path_template, options)
365
+
366
+ promise = promise.then do |result|
367
+ http_response = result.response
368
+ status_code = http_response.status
369
+ response_content = http_response.body
370
+ unless status_code == 200
371
+ error_model = JSON.load(response_content)
372
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
373
+ end
374
+
375
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
376
+ # Deserialize Response
377
+ if status_code == 200
378
+ begin
379
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
380
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::Profile.mapper()
381
+ result.body = @client.deserialize(result_mapper, parsed_response)
382
+ rescue Exception => e
383
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
384
+ end
385
+ end
386
+
387
+ result
388
+ end
389
+
390
+ promise.execute
391
+ end
392
+
393
+ #
394
+ # Create or update a Traffic Manager profile.
395
+ #
396
+ # @param resource_group_name [String] The name of the resource group containing
397
+ # the Traffic Manager profile.
398
+ # @param profile_name [String] The name of the Traffic Manager profile.
399
+ # @param parameters [Profile] The Traffic Manager profile parameters supplied
400
+ # to the CreateOrUpdate operation.
401
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
402
+ # will be added to the HTTP request.
403
+ #
404
+ # @return [Profile] operation results.
405
+ #
406
+ def create_or_update(resource_group_name, profile_name, parameters, custom_headers:nil)
407
+ response = create_or_update_async(resource_group_name, profile_name, parameters, custom_headers:custom_headers).value!
408
+ response.body unless response.nil?
409
+ end
410
+
411
+ #
412
+ # Create or update a Traffic Manager profile.
413
+ #
414
+ # @param resource_group_name [String] The name of the resource group containing
415
+ # the Traffic Manager profile.
416
+ # @param profile_name [String] The name of the Traffic Manager profile.
417
+ # @param parameters [Profile] The Traffic Manager profile parameters supplied
418
+ # to the CreateOrUpdate operation.
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 create_or_update_with_http_info(resource_group_name, profile_name, parameters, custom_headers:nil)
425
+ create_or_update_async(resource_group_name, profile_name, parameters, custom_headers:custom_headers).value!
426
+ end
427
+
428
+ #
429
+ # Create or update a Traffic Manager profile.
430
+ #
431
+ # @param resource_group_name [String] The name of the resource group containing
432
+ # the Traffic Manager profile.
433
+ # @param profile_name [String] The name of the Traffic Manager profile.
434
+ # @param parameters [Profile] The Traffic Manager profile parameters supplied
435
+ # to the CreateOrUpdate operation.
436
+ # @param [Hash{String => String}] A hash of custom headers that will be added
437
+ # to the HTTP request.
438
+ #
439
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
440
+ #
441
+ def create_or_update_async(resource_group_name, profile_name, parameters, custom_headers:nil)
442
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
443
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
444
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
445
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
446
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
447
+
448
+
449
+ request_headers = {}
450
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
451
+
452
+ # Set Headers
453
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
454
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
455
+
456
+ # Serialize Request
457
+ request_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::Profile.mapper()
458
+ request_content = @client.serialize(request_mapper, parameters)
459
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
460
+
461
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}'
462
+
463
+ request_url = @base_url || @client.base_url
464
+
465
+ options = {
466
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
467
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'subscriptionId' => @client.subscription_id},
468
+ query_params: {'api-version' => @client.api_version},
469
+ body: request_content,
470
+ headers: request_headers.merge(custom_headers || {}),
471
+ base_url: request_url
472
+ }
473
+ promise = @client.make_request_async(:put, 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 || status_code == 201
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
+ # Deserialize Response
486
+ if status_code == 200
487
+ begin
488
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
489
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::Profile.mapper()
490
+ result.body = @client.deserialize(result_mapper, parsed_response)
491
+ rescue Exception => e
492
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
493
+ end
494
+ end
495
+ # Deserialize Response
496
+ if status_code == 201
497
+ begin
498
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
499
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::Profile.mapper()
500
+ result.body = @client.deserialize(result_mapper, parsed_response)
501
+ rescue Exception => e
502
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
503
+ end
504
+ end
505
+
506
+ result
507
+ end
508
+
509
+ promise.execute
510
+ end
511
+
512
+ #
513
+ # Deletes a Traffic Manager profile.
514
+ #
515
+ # @param resource_group_name [String] The name of the resource group containing
516
+ # the Traffic Manager profile to be deleted.
517
+ # @param profile_name [String] The name of the Traffic Manager profile to be
518
+ # deleted.
519
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
520
+ # will be added to the HTTP request.
521
+ #
522
+ # @return [DeleteOperationResult] operation results.
523
+ #
524
+ def delete(resource_group_name, profile_name, custom_headers:nil)
525
+ response = delete_async(resource_group_name, profile_name, custom_headers:custom_headers).value!
526
+ response.body unless response.nil?
527
+ end
528
+
529
+ #
530
+ # Deletes a Traffic Manager profile.
531
+ #
532
+ # @param resource_group_name [String] The name of the resource group containing
533
+ # the Traffic Manager profile to be deleted.
534
+ # @param profile_name [String] The name of the Traffic Manager profile to be
535
+ # deleted.
536
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
537
+ # will be added to the HTTP request.
538
+ #
539
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
540
+ #
541
+ def delete_with_http_info(resource_group_name, profile_name, custom_headers:nil)
542
+ delete_async(resource_group_name, profile_name, custom_headers:custom_headers).value!
543
+ end
544
+
545
+ #
546
+ # Deletes a Traffic Manager profile.
547
+ #
548
+ # @param resource_group_name [String] The name of the resource group containing
549
+ # the Traffic Manager profile to be deleted.
550
+ # @param profile_name [String] The name of the Traffic Manager profile to be
551
+ # deleted.
552
+ # @param [Hash{String => String}] A hash of custom headers that will be added
553
+ # to the HTTP request.
554
+ #
555
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
556
+ #
557
+ def delete_async(resource_group_name, profile_name, custom_headers:nil)
558
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
559
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
560
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
561
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
562
+
563
+
564
+ request_headers = {}
565
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
566
+
567
+ # Set Headers
568
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
569
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
570
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}'
571
+
572
+ request_url = @base_url || @client.base_url
573
+
574
+ options = {
575
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
576
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'subscriptionId' => @client.subscription_id},
577
+ query_params: {'api-version' => @client.api_version},
578
+ headers: request_headers.merge(custom_headers || {}),
579
+ base_url: request_url
580
+ }
581
+ promise = @client.make_request_async(:delete, path_template, options)
582
+
583
+ promise = promise.then do |result|
584
+ http_response = result.response
585
+ status_code = http_response.status
586
+ response_content = http_response.body
587
+ unless status_code == 200 || status_code == 204
588
+ error_model = JSON.load(response_content)
589
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
590
+ end
591
+
592
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
593
+ # Deserialize Response
594
+ if status_code == 200
595
+ begin
596
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
597
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::DeleteOperationResult.mapper()
598
+ result.body = @client.deserialize(result_mapper, parsed_response)
599
+ rescue Exception => e
600
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
601
+ end
602
+ end
603
+
604
+ result
605
+ end
606
+
607
+ promise.execute
608
+ end
609
+
610
+ #
611
+ # Update a Traffic Manager profile.
612
+ #
613
+ # @param resource_group_name [String] The name of the resource group containing
614
+ # the Traffic Manager profile.
615
+ # @param profile_name [String] The name of the Traffic Manager profile.
616
+ # @param parameters [Profile] The Traffic Manager profile parameters supplied
617
+ # to the Update operation.
618
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
619
+ # will be added to the HTTP request.
620
+ #
621
+ # @return [Profile] operation results.
622
+ #
623
+ def update(resource_group_name, profile_name, parameters, custom_headers:nil)
624
+ response = update_async(resource_group_name, profile_name, parameters, custom_headers:custom_headers).value!
625
+ response.body unless response.nil?
626
+ end
627
+
628
+ #
629
+ # Update a Traffic Manager profile.
630
+ #
631
+ # @param resource_group_name [String] The name of the resource group containing
632
+ # the Traffic Manager profile.
633
+ # @param profile_name [String] The name of the Traffic Manager profile.
634
+ # @param parameters [Profile] The Traffic Manager profile parameters supplied
635
+ # to the Update operation.
636
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
637
+ # will be added to the HTTP request.
638
+ #
639
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
640
+ #
641
+ def update_with_http_info(resource_group_name, profile_name, parameters, custom_headers:nil)
642
+ update_async(resource_group_name, profile_name, parameters, custom_headers:custom_headers).value!
643
+ end
644
+
645
+ #
646
+ # Update a Traffic Manager profile.
647
+ #
648
+ # @param resource_group_name [String] The name of the resource group containing
649
+ # the Traffic Manager profile.
650
+ # @param profile_name [String] The name of the Traffic Manager profile.
651
+ # @param parameters [Profile] The Traffic Manager profile parameters supplied
652
+ # to the Update operation.
653
+ # @param [Hash{String => String}] A hash of custom headers that will be added
654
+ # to the HTTP request.
655
+ #
656
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
657
+ #
658
+ def update_async(resource_group_name, profile_name, parameters, custom_headers:nil)
659
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
660
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
661
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
662
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
663
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
664
+
665
+
666
+ request_headers = {}
667
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
668
+
669
+ # Set Headers
670
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
671
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
672
+
673
+ # Serialize Request
674
+ request_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::Profile.mapper()
675
+ request_content = @client.serialize(request_mapper, parameters)
676
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
677
+
678
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}'
679
+
680
+ request_url = @base_url || @client.base_url
681
+
682
+ options = {
683
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
684
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'subscriptionId' => @client.subscription_id},
685
+ query_params: {'api-version' => @client.api_version},
686
+ body: request_content,
687
+ headers: request_headers.merge(custom_headers || {}),
688
+ base_url: request_url
689
+ }
690
+ promise = @client.make_request_async(:patch, path_template, options)
691
+
692
+ promise = promise.then do |result|
693
+ http_response = result.response
694
+ status_code = http_response.status
695
+ response_content = http_response.body
696
+ unless status_code == 200
697
+ error_model = JSON.load(response_content)
698
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
699
+ end
700
+
701
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
702
+ # Deserialize Response
703
+ if status_code == 200
704
+ begin
705
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
706
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_02_01::Models::Profile.mapper()
707
+ result.body = @client.deserialize(result_mapper, parsed_response)
708
+ rescue Exception => e
709
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
710
+ end
711
+ end
712
+
713
+ result
714
+ end
715
+
716
+ promise.execute
717
+ end
718
+
719
+ end
720
+ end