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,141 @@
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
+ # A service client - single point of access to the REST API.
9
+ #
10
+ class TrafficManagerManagementClient < MsRestAzure::AzureServiceClient
11
+ include MsRestAzure
12
+ include MsRestAzure::Serialization
13
+
14
+ # @return [String] the base URI of the service.
15
+ attr_accessor :base_url
16
+
17
+ # @return Credentials needed for the client to connect to Azure.
18
+ attr_reader :credentials
19
+
20
+ # @return [String] Gets subscription credentials which uniquely identify
21
+ # Microsoft Azure subscription. The subscription ID forms part of the URI
22
+ # for every service call.
23
+ attr_accessor :subscription_id
24
+
25
+ # @return [String] Client Api Version.
26
+ attr_reader :api_version
27
+
28
+ # @return [String] The preferred language for the response.
29
+ attr_accessor :accept_language
30
+
31
+ # @return [Integer] The retry timeout in seconds for Long Running
32
+ # Operations. Default value is 30.
33
+ attr_accessor :long_running_operation_retry_timeout
34
+
35
+ # @return [Boolean] Whether a unique x-ms-client-request-id should be
36
+ # generated. When set to true a unique x-ms-client-request-id value is
37
+ # generated and included in each request. Default is true.
38
+ attr_accessor :generate_client_request_id
39
+
40
+ # @return [Endpoints] endpoints
41
+ attr_reader :endpoints
42
+
43
+ # @return [Profiles] profiles
44
+ attr_reader :profiles
45
+
46
+ # @return [GeographicHierarchies] geographic_hierarchies
47
+ attr_reader :geographic_hierarchies
48
+
49
+ #
50
+ # Creates initializes a new instance of the TrafficManagerManagementClient class.
51
+ # @param credentials [MsRest::ServiceClientCredentials] credentials to authorize HTTP requests made by the service client.
52
+ # @param base_url [String] the base URI of the service.
53
+ # @param options [Array] filters to be applied to the HTTP requests.
54
+ #
55
+ def initialize(credentials = nil, base_url = nil, options = nil)
56
+ super(credentials, options)
57
+ @base_url = base_url || 'https://management.azure.com'
58
+
59
+ fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials) unless credentials.nil?
60
+ @credentials = credentials
61
+
62
+ @endpoints = Endpoints.new(self)
63
+ @profiles = Profiles.new(self)
64
+ @geographic_hierarchies = GeographicHierarchies.new(self)
65
+ @api_version = '2018-02-01'
66
+ @accept_language = 'en-US'
67
+ @long_running_operation_retry_timeout = 30
68
+ @generate_client_request_id = true
69
+ add_telemetry
70
+ end
71
+
72
+ #
73
+ # Makes a request and returns the body of the response.
74
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
75
+ # @param path [String] the path, relative to {base_url}.
76
+ # @param options [Hash{String=>String}] specifying any request options like :body.
77
+ # @return [Hash{String=>String}] containing the body of the response.
78
+ # Example:
79
+ #
80
+ # request_content = "{'location':'westus','tags':{'tag1':'val1','tag2':'val2'}}"
81
+ # path = "/path"
82
+ # options = {
83
+ # body: request_content,
84
+ # query_params: {'api-version' => '2016-02-01'}
85
+ # }
86
+ # result = @client.make_request(:put, path, options)
87
+ #
88
+ def make_request(method, path, options = {})
89
+ result = make_request_with_http_info(method, path, options)
90
+ result.body unless result.nil?
91
+ end
92
+
93
+ #
94
+ # Makes a request and returns the operation response.
95
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
96
+ # @param path [String] the path, relative to {base_url}.
97
+ # @param options [Hash{String=>String}] specifying any request options like :body.
98
+ # @return [MsRestAzure::AzureOperationResponse] Operation response containing the request, response and status.
99
+ #
100
+ def make_request_with_http_info(method, path, options = {})
101
+ result = make_request_async(method, path, options).value!
102
+ result.body = result.response.body.to_s.empty? ? nil : JSON.load(result.response.body)
103
+ result
104
+ end
105
+
106
+ #
107
+ # Makes a request asynchronously.
108
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
109
+ # @param path [String] the path, relative to {base_url}.
110
+ # @param options [Hash{String=>String}] specifying any request options like :body.
111
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
112
+ #
113
+ def make_request_async(method, path, options = {})
114
+ fail ArgumentError, 'method is nil' if method.nil?
115
+ fail ArgumentError, 'path is nil' if path.nil?
116
+
117
+ request_url = options[:base_url] || @base_url
118
+ if(!options[:headers].nil? && !options[:headers]['Content-Type'].nil?)
119
+ @request_headers['Content-Type'] = options[:headers]['Content-Type']
120
+ end
121
+
122
+ request_headers = @request_headers
123
+ request_headers.merge!({'accept-language' => @accept_language}) unless @accept_language.nil?
124
+ options.merge!({headers: request_headers.merge(options[:headers] || {})})
125
+ options.merge!({credentials: @credentials}) unless @credentials.nil?
126
+
127
+ super(request_url, method, path, options)
128
+ end
129
+
130
+
131
+ private
132
+ #
133
+ # Adds telemetry information.
134
+ #
135
+ def add_telemetry
136
+ sdk_information = 'azure_mgmt_traffic_manager'
137
+ sdk_information = "#{sdk_information}/0.17.4"
138
+ add_user_agent_information(sdk_information)
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,58 @@
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
+ require 'uri'
7
+ require 'cgi'
8
+ require 'date'
9
+ require 'json'
10
+ require 'base64'
11
+ require 'erb'
12
+ require 'securerandom'
13
+ require 'time'
14
+ require 'timeliness'
15
+ require 'faraday'
16
+ require 'faraday-cookie_jar'
17
+ require 'concurrent'
18
+ require 'ms_rest'
19
+ require '2018-03-01/generated/azure_mgmt_traffic_manager/module_definition'
20
+ require 'ms_rest_azure'
21
+
22
+ module Azure::TrafficManager::Mgmt::V2018_03_01
23
+ autoload :Endpoints, '2018-03-01/generated/azure_mgmt_traffic_manager/endpoints.rb'
24
+ autoload :Profiles, '2018-03-01/generated/azure_mgmt_traffic_manager/profiles.rb'
25
+ autoload :GeographicHierarchies, '2018-03-01/generated/azure_mgmt_traffic_manager/geographic_hierarchies.rb'
26
+ autoload :HeatMap, '2018-03-01/generated/azure_mgmt_traffic_manager/heat_map.rb'
27
+ autoload :TrafficManagerManagementClient, '2018-03-01/generated/azure_mgmt_traffic_manager/traffic_manager_management_client.rb'
28
+
29
+ module Models
30
+ autoload :MonitorConfigExpectedStatusCodeRangesItem, '2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_config_expected_status_code_ranges_item.rb'
31
+ autoload :MonitorConfig, '2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_config.rb'
32
+ autoload :EndpointPropertiesCustomHeadersItem, '2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint_properties_custom_headers_item.rb'
33
+ autoload :DeleteOperationResult, '2018-03-01/generated/azure_mgmt_traffic_manager/models/delete_operation_result.rb'
34
+ autoload :HeatMapEndpoint, '2018-03-01/generated/azure_mgmt_traffic_manager/models/heat_map_endpoint.rb'
35
+ autoload :TrafficFlow, '2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_flow.rb'
36
+ autoload :CheckTrafficManagerRelativeDnsNameAvailabilityParameters, '2018-03-01/generated/azure_mgmt_traffic_manager/models/check_traffic_manager_relative_dns_name_availability_parameters.rb'
37
+ autoload :Resource, '2018-03-01/generated/azure_mgmt_traffic_manager/models/resource.rb'
38
+ autoload :MonitorConfigCustomHeadersItem, '2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_config_custom_headers_item.rb'
39
+ autoload :ProfileListResult, '2018-03-01/generated/azure_mgmt_traffic_manager/models/profile_list_result.rb'
40
+ autoload :DnsConfig, '2018-03-01/generated/azure_mgmt_traffic_manager/models/dns_config.rb'
41
+ autoload :TrafficManagerNameAvailability, '2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_name_availability.rb'
42
+ autoload :QueryExperience, '2018-03-01/generated/azure_mgmt_traffic_manager/models/query_experience.rb'
43
+ autoload :Region, '2018-03-01/generated/azure_mgmt_traffic_manager/models/region.rb'
44
+ autoload :HeatMapModel, '2018-03-01/generated/azure_mgmt_traffic_manager/models/heat_map_model.rb'
45
+ autoload :Endpoint, '2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint.rb'
46
+ autoload :TrackedResource, '2018-03-01/generated/azure_mgmt_traffic_manager/models/tracked_resource.rb'
47
+ autoload :Profile, '2018-03-01/generated/azure_mgmt_traffic_manager/models/profile.rb'
48
+ autoload :ProxyResource, '2018-03-01/generated/azure_mgmt_traffic_manager/models/proxy_resource.rb'
49
+ autoload :TrafficManagerGeographicHierarchy, '2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_manager_geographic_hierarchy.rb'
50
+ autoload :EndpointStatus, '2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint_status.rb'
51
+ autoload :EndpointMonitorStatus, '2018-03-01/generated/azure_mgmt_traffic_manager/models/endpoint_monitor_status.rb'
52
+ autoload :ProfileMonitorStatus, '2018-03-01/generated/azure_mgmt_traffic_manager/models/profile_monitor_status.rb'
53
+ autoload :MonitorProtocol, '2018-03-01/generated/azure_mgmt_traffic_manager/models/monitor_protocol.rb'
54
+ autoload :ProfileStatus, '2018-03-01/generated/azure_mgmt_traffic_manager/models/profile_status.rb'
55
+ autoload :TrafficRoutingMethod, '2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_routing_method.rb'
56
+ autoload :TrafficViewEnrollmentStatus, '2018-03-01/generated/azure_mgmt_traffic_manager/models/traffic_view_enrollment_status.rb'
57
+ end
58
+ end
@@ -0,0 +1,501 @@
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_03_01
7
+ #
8
+ # Endpoints
9
+ #
10
+ class Endpoints
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the Endpoints 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
+ # Update a Traffic Manager endpoint.
26
+ #
27
+ # @param resource_group_name [String] The name of the resource group containing
28
+ # the Traffic Manager endpoint to be updated.
29
+ # @param profile_name [String] The name of the Traffic Manager profile.
30
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
31
+ # updated.
32
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
33
+ # updated.
34
+ # @param parameters [Endpoint] The Traffic Manager endpoint parameters supplied
35
+ # to the Update operation.
36
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
37
+ # will be added to the HTTP request.
38
+ #
39
+ # @return [Endpoint] operation results.
40
+ #
41
+ def update(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:nil)
42
+ response = update_async(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:custom_headers).value!
43
+ response.body unless response.nil?
44
+ end
45
+
46
+ #
47
+ # Update a Traffic Manager endpoint.
48
+ #
49
+ # @param resource_group_name [String] The name of the resource group containing
50
+ # the Traffic Manager endpoint to be updated.
51
+ # @param profile_name [String] The name of the Traffic Manager profile.
52
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
53
+ # updated.
54
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
55
+ # updated.
56
+ # @param parameters [Endpoint] The Traffic Manager endpoint parameters supplied
57
+ # to the Update operation.
58
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
59
+ # will be added to the HTTP request.
60
+ #
61
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
62
+ #
63
+ def update_with_http_info(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:nil)
64
+ update_async(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:custom_headers).value!
65
+ end
66
+
67
+ #
68
+ # Update a Traffic Manager endpoint.
69
+ #
70
+ # @param resource_group_name [String] The name of the resource group containing
71
+ # the Traffic Manager endpoint to be updated.
72
+ # @param profile_name [String] The name of the Traffic Manager profile.
73
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
74
+ # updated.
75
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
76
+ # updated.
77
+ # @param parameters [Endpoint] The Traffic Manager endpoint parameters supplied
78
+ # to the Update operation.
79
+ # @param [Hash{String => String}] A hash of custom headers that will be added
80
+ # to the HTTP request.
81
+ #
82
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
83
+ #
84
+ def update_async(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:nil)
85
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
86
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
87
+ fail ArgumentError, 'endpoint_type is nil' if endpoint_type.nil?
88
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
89
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
90
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
91
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
92
+
93
+
94
+ request_headers = {}
95
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
96
+
97
+ # Set Headers
98
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
99
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
100
+
101
+ # Serialize Request
102
+ request_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::Endpoint.mapper()
103
+ request_content = @client.serialize(request_mapper, parameters)
104
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
105
+
106
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}/{endpointType}/{endpointName}'
107
+
108
+ request_url = @base_url || @client.base_url
109
+
110
+ options = {
111
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
112
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'endpointType' => endpoint_type,'endpointName' => endpoint_name,'subscriptionId' => @client.subscription_id},
113
+ query_params: {'api-version' => @client.api_version},
114
+ body: request_content,
115
+ headers: request_headers.merge(custom_headers || {}),
116
+ base_url: request_url
117
+ }
118
+ promise = @client.make_request_async(:patch, path_template, options)
119
+
120
+ promise = promise.then do |result|
121
+ http_response = result.response
122
+ status_code = http_response.status
123
+ response_content = http_response.body
124
+ unless status_code == 200
125
+ error_model = JSON.load(response_content)
126
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
127
+ end
128
+
129
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
130
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
131
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
132
+ # Deserialize Response
133
+ if status_code == 200
134
+ begin
135
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
136
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::Endpoint.mapper()
137
+ result.body = @client.deserialize(result_mapper, parsed_response)
138
+ rescue Exception => e
139
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
140
+ end
141
+ end
142
+
143
+ result
144
+ end
145
+
146
+ promise.execute
147
+ end
148
+
149
+ #
150
+ # Gets a Traffic Manager endpoint.
151
+ #
152
+ # @param resource_group_name [String] The name of the resource group containing
153
+ # the Traffic Manager endpoint.
154
+ # @param profile_name [String] The name of the Traffic Manager profile.
155
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint.
156
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint.
157
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
158
+ # will be added to the HTTP request.
159
+ #
160
+ # @return [Endpoint] operation results.
161
+ #
162
+ def get(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:nil)
163
+ response = get_async(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:custom_headers).value!
164
+ response.body unless response.nil?
165
+ end
166
+
167
+ #
168
+ # Gets a Traffic Manager endpoint.
169
+ #
170
+ # @param resource_group_name [String] The name of the resource group containing
171
+ # the Traffic Manager endpoint.
172
+ # @param profile_name [String] The name of the Traffic Manager profile.
173
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint.
174
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint.
175
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
176
+ # will be added to the HTTP request.
177
+ #
178
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
179
+ #
180
+ def get_with_http_info(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:nil)
181
+ get_async(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:custom_headers).value!
182
+ end
183
+
184
+ #
185
+ # Gets a Traffic Manager endpoint.
186
+ #
187
+ # @param resource_group_name [String] The name of the resource group containing
188
+ # the Traffic Manager endpoint.
189
+ # @param profile_name [String] The name of the Traffic Manager profile.
190
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint.
191
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint.
192
+ # @param [Hash{String => String}] A hash of custom headers that will be added
193
+ # to the HTTP request.
194
+ #
195
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
196
+ #
197
+ def get_async(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:nil)
198
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
199
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
200
+ fail ArgumentError, 'endpoint_type is nil' if endpoint_type.nil?
201
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
202
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
203
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
204
+
205
+
206
+ request_headers = {}
207
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
208
+
209
+ # Set Headers
210
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
211
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
212
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}/{endpointType}/{endpointName}'
213
+
214
+ request_url = @base_url || @client.base_url
215
+
216
+ options = {
217
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
218
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'endpointType' => endpoint_type,'endpointName' => endpoint_name,'subscriptionId' => @client.subscription_id},
219
+ query_params: {'api-version' => @client.api_version},
220
+ headers: request_headers.merge(custom_headers || {}),
221
+ base_url: request_url
222
+ }
223
+ promise = @client.make_request_async(:get, path_template, options)
224
+
225
+ promise = promise.then do |result|
226
+ http_response = result.response
227
+ status_code = http_response.status
228
+ response_content = http_response.body
229
+ unless status_code == 200
230
+ error_model = JSON.load(response_content)
231
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
232
+ end
233
+
234
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
235
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
236
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
237
+ # Deserialize Response
238
+ if status_code == 200
239
+ begin
240
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
241
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::Endpoint.mapper()
242
+ result.body = @client.deserialize(result_mapper, parsed_response)
243
+ rescue Exception => e
244
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
245
+ end
246
+ end
247
+
248
+ result
249
+ end
250
+
251
+ promise.execute
252
+ end
253
+
254
+ #
255
+ # Create or update a Traffic Manager endpoint.
256
+ #
257
+ # @param resource_group_name [String] The name of the resource group containing
258
+ # the Traffic Manager endpoint to be created or updated.
259
+ # @param profile_name [String] The name of the Traffic Manager profile.
260
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
261
+ # created or updated.
262
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
263
+ # created or updated.
264
+ # @param parameters [Endpoint] The Traffic Manager endpoint parameters supplied
265
+ # to the CreateOrUpdate operation.
266
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
267
+ # will be added to the HTTP request.
268
+ #
269
+ # @return [Endpoint] operation results.
270
+ #
271
+ def create_or_update(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:nil)
272
+ response = create_or_update_async(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:custom_headers).value!
273
+ response.body unless response.nil?
274
+ end
275
+
276
+ #
277
+ # Create or update a Traffic Manager endpoint.
278
+ #
279
+ # @param resource_group_name [String] The name of the resource group containing
280
+ # the Traffic Manager endpoint to be created or updated.
281
+ # @param profile_name [String] The name of the Traffic Manager profile.
282
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
283
+ # created or updated.
284
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
285
+ # created or updated.
286
+ # @param parameters [Endpoint] The Traffic Manager endpoint parameters supplied
287
+ # to the CreateOrUpdate operation.
288
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
289
+ # will be added to the HTTP request.
290
+ #
291
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
292
+ #
293
+ def create_or_update_with_http_info(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:nil)
294
+ create_or_update_async(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:custom_headers).value!
295
+ end
296
+
297
+ #
298
+ # Create or update a Traffic Manager endpoint.
299
+ #
300
+ # @param resource_group_name [String] The name of the resource group containing
301
+ # the Traffic Manager endpoint to be created or updated.
302
+ # @param profile_name [String] The name of the Traffic Manager profile.
303
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
304
+ # created or updated.
305
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
306
+ # created or updated.
307
+ # @param parameters [Endpoint] The Traffic Manager endpoint parameters supplied
308
+ # to the CreateOrUpdate operation.
309
+ # @param [Hash{String => String}] A hash of custom headers that will be added
310
+ # to the HTTP request.
311
+ #
312
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
313
+ #
314
+ def create_or_update_async(resource_group_name, profile_name, endpoint_type, endpoint_name, parameters, custom_headers:nil)
315
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
316
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
317
+ fail ArgumentError, 'endpoint_type is nil' if endpoint_type.nil?
318
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
319
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
320
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
321
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
322
+
323
+
324
+ request_headers = {}
325
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
326
+
327
+ # Set Headers
328
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
329
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
330
+
331
+ # Serialize Request
332
+ request_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::Endpoint.mapper()
333
+ request_content = @client.serialize(request_mapper, parameters)
334
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
335
+
336
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}/{endpointType}/{endpointName}'
337
+
338
+ request_url = @base_url || @client.base_url
339
+
340
+ options = {
341
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
342
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'endpointType' => endpoint_type,'endpointName' => endpoint_name,'subscriptionId' => @client.subscription_id},
343
+ query_params: {'api-version' => @client.api_version},
344
+ body: request_content,
345
+ headers: request_headers.merge(custom_headers || {}),
346
+ base_url: request_url
347
+ }
348
+ promise = @client.make_request_async(:put, path_template, options)
349
+
350
+ promise = promise.then do |result|
351
+ http_response = result.response
352
+ status_code = http_response.status
353
+ response_content = http_response.body
354
+ unless status_code == 200 || status_code == 201
355
+ error_model = JSON.load(response_content)
356
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
357
+ end
358
+
359
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
360
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
361
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
362
+ # Deserialize Response
363
+ if status_code == 200
364
+ begin
365
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
366
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::Endpoint.mapper()
367
+ result.body = @client.deserialize(result_mapper, parsed_response)
368
+ rescue Exception => e
369
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
370
+ end
371
+ end
372
+ # Deserialize Response
373
+ if status_code == 201
374
+ begin
375
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
376
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::Endpoint.mapper()
377
+ result.body = @client.deserialize(result_mapper, parsed_response)
378
+ rescue Exception => e
379
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
380
+ end
381
+ end
382
+
383
+ result
384
+ end
385
+
386
+ promise.execute
387
+ end
388
+
389
+ #
390
+ # Deletes a Traffic Manager endpoint.
391
+ #
392
+ # @param resource_group_name [String] The name of the resource group containing
393
+ # the Traffic Manager endpoint to be deleted.
394
+ # @param profile_name [String] The name of the Traffic Manager profile.
395
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
396
+ # deleted.
397
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
398
+ # deleted.
399
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
400
+ # will be added to the HTTP request.
401
+ #
402
+ # @return [DeleteOperationResult] operation results.
403
+ #
404
+ def delete(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:nil)
405
+ response = delete_async(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:custom_headers).value!
406
+ response.body unless response.nil?
407
+ end
408
+
409
+ #
410
+ # Deletes a Traffic Manager endpoint.
411
+ #
412
+ # @param resource_group_name [String] The name of the resource group containing
413
+ # the Traffic Manager endpoint to be deleted.
414
+ # @param profile_name [String] The name of the Traffic Manager profile.
415
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
416
+ # deleted.
417
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
418
+ # deleted.
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 delete_with_http_info(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:nil)
425
+ delete_async(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:custom_headers).value!
426
+ end
427
+
428
+ #
429
+ # Deletes a Traffic Manager endpoint.
430
+ #
431
+ # @param resource_group_name [String] The name of the resource group containing
432
+ # the Traffic Manager endpoint to be deleted.
433
+ # @param profile_name [String] The name of the Traffic Manager profile.
434
+ # @param endpoint_type [String] The type of the Traffic Manager endpoint to be
435
+ # deleted.
436
+ # @param endpoint_name [String] The name of the Traffic Manager endpoint to be
437
+ # deleted.
438
+ # @param [Hash{String => String}] A hash of custom headers that will be added
439
+ # to the HTTP request.
440
+ #
441
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
442
+ #
443
+ def delete_async(resource_group_name, profile_name, endpoint_type, endpoint_name, custom_headers:nil)
444
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
445
+ fail ArgumentError, 'profile_name is nil' if profile_name.nil?
446
+ fail ArgumentError, 'endpoint_type is nil' if endpoint_type.nil?
447
+ fail ArgumentError, 'endpoint_name is nil' if endpoint_name.nil?
448
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
449
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
450
+
451
+
452
+ request_headers = {}
453
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
454
+
455
+ # Set Headers
456
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
457
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
458
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficmanagerprofiles/{profileName}/{endpointType}/{endpointName}'
459
+
460
+ request_url = @base_url || @client.base_url
461
+
462
+ options = {
463
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
464
+ path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'endpointType' => endpoint_type,'endpointName' => endpoint_name,'subscriptionId' => @client.subscription_id},
465
+ query_params: {'api-version' => @client.api_version},
466
+ headers: request_headers.merge(custom_headers || {}),
467
+ base_url: request_url
468
+ }
469
+ promise = @client.make_request_async(:delete, path_template, options)
470
+
471
+ promise = promise.then do |result|
472
+ http_response = result.response
473
+ status_code = http_response.status
474
+ response_content = http_response.body
475
+ unless status_code == 200 || status_code == 204
476
+ error_model = JSON.load(response_content)
477
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
478
+ end
479
+
480
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
481
+ result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil?
482
+ result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil?
483
+ # Deserialize Response
484
+ if status_code == 200
485
+ begin
486
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
487
+ result_mapper = Azure::TrafficManager::Mgmt::V2018_03_01::Models::DeleteOperationResult.mapper()
488
+ result.body = @client.deserialize(result_mapper, parsed_response)
489
+ rescue Exception => e
490
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
491
+ end
492
+ end
493
+
494
+ result
495
+ end
496
+
497
+ promise.execute
498
+ end
499
+
500
+ end
501
+ end