Class: Azure::ARM::Network::NetworkResourceProviderClient
- Inherits:
-
MsRestAzure::AzureServiceClient
- Object
- MsRestAzure::AzureServiceClient
- Azure::ARM::Network::NetworkResourceProviderClient
- Includes:
- Models, MsRestAzure
- Defined in:
- lib/azure_mgmt_network/network_resource_provider_client.rb
Overview
A service client - single point of access to the REST API.
Instance Attribute Summary collapse
-
#accept_language ⇒ String
Gets or sets the preferred language for the response.
-
#api_version ⇒ String
readonly
Client Api Version.
-
#application_gateways ⇒ Object
readonly
Application_gateways.
-
#base_url ⇒ String
The base URI of the service.
-
#credentials ⇒ ServiceClient
client subscription.
-
#load_balancers ⇒ Object
readonly
Load_balancers.
-
#local_network_gateways ⇒ Object
readonly
Local_network_gateways.
-
#long_running_operation_retry_timeout ⇒ Integer
The retry timeout for Long Running Operations.
-
#network_interfaces ⇒ Object
readonly
Network_interfaces.
-
#network_security_groups ⇒ Object
readonly
Network_security_groups.
-
#public_ip_addresses ⇒ Object
readonly
Public_ip_addresses.
-
#security_rules ⇒ Object
readonly
Security_rules.
-
#subnets ⇒ Object
readonly
Subnets.
-
#subscription_id ⇒ String
Microsoft Azure subscription.
-
#usages ⇒ Object
readonly
Usages.
-
#virtual_network_gateway_connections ⇒ Object
readonly
Virtual_network_gateway_connections.
-
#virtual_network_gateways ⇒ Object
readonly
Virtual_network_gateways.
-
#virtual_networks ⇒ Object
readonly
Virtual_networks.
Instance Method Summary collapse
-
#check_dns_name_availability(location, domain_name_label = nil, custom_headers = nil) ⇒ Concurrent::Promise
Checks whether a domain name in the cloudapp.net zone is available for use.
-
#initialize(credentials, base_url = nil, options = nil) ⇒ NetworkResourceProviderClient
constructor
Creates initializes a new instance of the NetworkResourceProviderClient class.
Constructor Details
#initialize(credentials, base_url = nil, options = nil) ⇒ NetworkResourceProviderClient
Creates initializes a new instance of the NetworkResourceProviderClient class.
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 80 def initialize(credentials, base_url = nil, = nil) super(credentials, ) @base_url = base_url || 'https://management.azure.com' fail ArgumentError, 'credentials is nil' if credentials.nil? fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials) @credentials = credentials @application_gateways = ApplicationGateways.new(self) @load_balancers = LoadBalancers.new(self) @local_network_gateways = LocalNetworkGateways.new(self) @network_interfaces = NetworkInterfaces.new(self) @network_security_groups = NetworkSecurityGroups.new(self) @public_ip_addresses = PublicIpAddresses.new(self) @security_rules = SecurityRules.new(self) @subnets = Subnets.new(self) @usages = Usages.new(self) @virtual_network_gateway_connections = VirtualNetworkGatewayConnections.new(self) @virtual_network_gateways = VirtualNetworkGateways.new(self) @virtual_networks = VirtualNetworks.new(self) @api_version = "2015-05-01-preview" @accept_language = "en-US" end |
Instance Attribute Details
#accept_language ⇒ String
Returns Gets or sets the preferred language for the response.
29 30 31 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 29 def accept_language @accept_language end |
#api_version ⇒ String (readonly)
Returns Client Api Version.
26 27 28 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 26 def api_version @api_version end |
#application_gateways ⇒ Object (readonly)
Returns application_gateways.
39 40 41 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 39 def application_gateways @application_gateways end |
#base_url ⇒ String
Returns the base URI of the service.
15 16 17 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 15 def base_url @base_url end |
#credentials ⇒ ServiceClient
client subscription.
18 19 20 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 18 def credentials @credentials end |
#load_balancers ⇒ Object (readonly)
Returns load_balancers.
42 43 44 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 42 def load_balancers @load_balancers end |
#local_network_gateways ⇒ Object (readonly)
Returns local_network_gateways.
45 46 47 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 45 def local_network_gateways @local_network_gateways end |
#long_running_operation_retry_timeout ⇒ Integer
Returns The retry timeout for Long Running Operations.
32 33 34 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 32 def long_running_operation_retry_timeout @long_running_operation_retry_timeout end |
#network_interfaces ⇒ Object (readonly)
Returns network_interfaces.
48 49 50 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 48 def network_interfaces @network_interfaces end |
#network_security_groups ⇒ Object (readonly)
Returns network_security_groups.
51 52 53 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 51 def network_security_groups @network_security_groups end |
#public_ip_addresses ⇒ Object (readonly)
Returns public_ip_addresses.
54 55 56 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 54 def public_ip_addresses @public_ip_addresses end |
#security_rules ⇒ Object (readonly)
Returns security_rules.
57 58 59 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 57 def security_rules @security_rules end |
#subnets ⇒ Object (readonly)
Returns subnets.
60 61 62 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 60 def subnets @subnets end |
#subscription_id ⇒ String
Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
23 24 25 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 23 def subscription_id @subscription_id end |
#usages ⇒ Object (readonly)
Returns usages.
63 64 65 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 63 def usages @usages end |
#virtual_network_gateway_connections ⇒ Object (readonly)
Returns virtual_network_gateway_connections.
66 67 68 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 66 def virtual_network_gateway_connections @virtual_network_gateway_connections end |
#virtual_network_gateways ⇒ Object (readonly)
Returns virtual_network_gateways.
69 70 71 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 69 def virtual_network_gateways @virtual_network_gateways end |
#virtual_networks ⇒ Object (readonly)
Returns virtual_networks.
72 73 74 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 72 def virtual_networks @virtual_networks end |
Instance Method Details
#check_dns_name_availability(location, domain_name_label = nil, custom_headers = nil) ⇒ Concurrent::Promise
Checks whether a domain name in the cloudapp.net zone is available for use. conform to the following regular expression: ^[a-z]1,61$. applied to HTTP request.
response.
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 |
# File 'lib/azure_mgmt_network/network_resource_provider_client.rb', line 115 def check_dns_name_availability(location, domain_name_label = nil, custom_headers = nil) fail ArgumentError, 'location is nil' if location.nil? fail ArgumentError, 'api_version is nil' if api_version.nil? fail ArgumentError, 'subscription_id is nil' if subscription_id.nil? # Construct URL path = "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability" path['{location}'] = ERB::Util.url_encode(location) if path.include?('{location}') path['{subscriptionId}'] = ERB::Util.url_encode(subscription_id) if path.include?('{subscriptionId}') url = URI.join(self.base_url, path) properties = {} properties['domainNameLabel'] = ERB::Util.url_encode(domain_name_label.to_s) unless domain_name_label.nil? properties['api-version'] = ERB::Util.url_encode(api_version.to_s) unless api_version.nil? unless url.query.nil? url.query.split('&').each do |url_item| url_items_parts = url_item.split('=') properties[url_items_parts[0]] = url_items_parts[1] end end properties.reject!{ |key, value| value.nil? } url.query = properties.map{ |key, value| "#{key}=#{value}" }.compact.join('&') fail URI::Error unless url.to_s =~ /\A#{URI::regexp}\z/ corrected_url = url.to_s.gsub(/([^:])\/\//, '\1/') url = URI.parse(corrected_url) connection = Faraday.new(:url => url) do |faraday| faraday.use MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02 faraday.use :cookie_jar faraday.adapter Faraday.default_adapter end request_headers = Hash.new # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers["accept-language"] = accept_language unless accept_language.nil? unless custom_headers.nil? custom_headers.each do |key, value| request_headers[key] = value end end # Send Request promise = Concurrent::Promise.new do connection.get do |request| request.headers = request_headers self.credentials.sign_request(request) unless self.credentials.nil? end end promise = promise.then do |http_response| status_code = http_response.status response_content = http_response.body unless (status_code == 200) error_model = JSON.load(response_content) fail MsRestAzure::AzureOperationError.new(connection, http_response, error_model) end # Create Result result = MsRestAzure::AzureOperationResponse.new(connection, http_response) result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = JSON.load(response_content) unless response_content.to_s.empty? unless parsed_response.nil? parsed_response = DnsNameAvailabilityResult.deserialize_object(parsed_response) end result.body = parsed_response rescue Exception => e fail MsRest::DeserializationError.new("Error occured in deserializing the response", e., e.backtrace, response_content) end end result end promise.execute end |