azure_mgmt_traffic_manager 0.16.0 → 0.17.4

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