Class: Azure::Mysql::Mgmt::V2017_12_01::CheckNameAvailability
- Inherits:
-
Object
- Object
- Azure::Mysql::Mgmt::V2017_12_01::CheckNameAvailability
- Includes:
- MsRestAzure
- Defined in:
- lib/2017-12-01/generated/azure_mgmt_mysql/check_name_availability.rb
Overview
The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, log files and configurations with new business model.
Instance Attribute Summary collapse
-
#client ⇒ MySQLManagementClient
readonly
Reference to the MySQLManagementClient.
Instance Method Summary collapse
-
#execute(name_availability_request, custom_headers: nil) ⇒ NameAvailability
Check the availability of name for resource.
-
#execute_async(name_availability_request, custom_headers: nil) ⇒ Concurrent::Promise
Check the availability of name for resource.
-
#execute_with_http_info(name_availability_request, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Check the availability of name for resource.
-
#initialize(client) ⇒ CheckNameAvailability
constructor
Creates and initializes a new instance of the CheckNameAvailability class.
Constructor Details
#initialize(client) ⇒ CheckNameAvailability
Creates and initializes a new instance of the CheckNameAvailability class.
20 21 22 |
# File 'lib/2017-12-01/generated/azure_mgmt_mysql/check_name_availability.rb', line 20 def initialize(client) @client = client end |
Instance Attribute Details
#client ⇒ MySQLManagementClient (readonly)
Returns reference to the MySQLManagementClient.
25 26 27 |
# File 'lib/2017-12-01/generated/azure_mgmt_mysql/check_name_availability.rb', line 25 def client @client end |
Instance Method Details
#execute(name_availability_request, custom_headers: nil) ⇒ NameAvailability
Check the availability of name for resource
parameters for checking if resource name is available. will be added to the HTTP request.
37 38 39 40 |
# File 'lib/2017-12-01/generated/azure_mgmt_mysql/check_name_availability.rb', line 37 def execute(name_availability_request, custom_headers:nil) response = execute_async(name_availability_request, custom_headers:custom_headers).value! response.body unless response.nil? end |
#execute_async(name_availability_request, custom_headers: nil) ⇒ Concurrent::Promise
Check the availability of name for resource
parameters for checking if resource name is available. to the HTTP request.
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
# File 'lib/2017-12-01/generated/azure_mgmt_mysql/check_name_availability.rb', line 66 def execute_async(name_availability_request, custom_headers:nil) fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, 'name_availability_request is nil' if name_availability_request.nil? request_headers = {} request_headers['Content-Type'] = 'application/json; charset=utf-8' # Set Headers request_headers['x-ms-client-request-id'] = SecureRandom.uuid request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil? # Serialize Request request_mapper = Azure::Mysql::Mgmt::V2017_12_01::Models::NameAvailabilityRequest.mapper() request_content = @client.serialize(request_mapper, name_availability_request) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/checkNameAvailability' request_url = @base_url || @client.base_url = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, body: request_content, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:post, path_template, ) promise = promise.then do |result| http_response = result.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(result.request, http_response, error_model) end result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil? result.correlation_request_id = http_response['x-ms-correlation-request-id'] unless http_response['x-ms-correlation-request-id'].nil? result.client_request_id = http_response['x-ms-client-request-id'] unless http_response['x-ms-client-request-id'].nil? # Deserialize Response if status_code == 200 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::Mysql::Mgmt::V2017_12_01::Models::NameAvailability.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e., e.backtrace, result) end end result end promise.execute end |
#execute_with_http_info(name_availability_request, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Check the availability of name for resource
parameters for checking if resource name is available. will be added to the HTTP request.
52 53 54 |
# File 'lib/2017-12-01/generated/azure_mgmt_mysql/check_name_availability.rb', line 52 def execute_with_http_info(name_availability_request, custom_headers:nil) execute_async(name_availability_request, custom_headers:custom_headers).value! end |