class Azure::CDN::Mgmt::V2020_09_01::RuleSets
Cdn Management Client
Attributes
@return [CdnManagementClient] reference to the CdnManagementClient
Private Class Methods
Creates and initializes a new instance of the RuleSets
class. @param client service class for accessing basic functionality.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 17 def initialize(client) @client = client end
Private Instance Methods
Creates a new rule set within the specified profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [RuleSet] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 461 def begin_create(resource_group_name, profile_name, rule_set_name, custom_headers:nil) response = begin_create_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! response.body unless response.nil? end
Creates a new rule set within the specified profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 498 def begin_create_async(resource_group_name, profile_name, rule_set_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil? fail ArgumentError, 'profile_name is nil' if profile_name.nil? fail ArgumentError, 'rule_set_name is nil' if rule_set_name.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? rule_set = RuleSet.new 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::CDN::Mgmt::V2020_09_01::Models::RuleSet.mapper() request_content = @client.serialize(request_mapper, rule_set) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'ruleSetName' => rule_set_name,'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(:put, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 || status_code == 201 error_model = JSON.load(response_content) fail MsRest::HttpOperationError.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::CDN::Mgmt::V2020_09_01::Models::RuleSet.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end # Deserialize Response if status_code == 201 begin parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content) result_mapper = Azure::CDN::Mgmt::V2020_09_01::Models::RuleSet.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Creates a new rule set within the specified profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 480 def begin_create_with_http_info(resource_group_name, profile_name, rule_set_name, custom_headers:nil) begin_create_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! end
Deletes an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 589 def begin_delete(resource_group_name, profile_name, rule_set_name, custom_headers:nil) response = begin_delete_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! nil end
Deletes an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 628 def begin_delete_async(resource_group_name, profile_name, rule_set_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil? fail ArgumentError, 'profile_name is nil' if profile_name.nil? fail ArgumentError, 'rule_set_name is nil' if rule_set_name.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.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? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'ruleSetName' => rule_set_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:delete, path_template, options) promise = promise.then do |result| http_response = result.response status_code = http_response.status response_content = http_response.body unless status_code == 200 || status_code == 204 error_model = JSON.load(response_content) fail MsRest::HttpOperationError.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? result end promise.execute end
Deletes an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 609 def begin_delete_with_http_info(resource_group_name, profile_name, rule_set_name, custom_headers:nil) begin_delete_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! end
Creates a new rule set within the specified profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [RuleSet] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 254 def create(resource_group_name, profile_name, rule_set_name, custom_headers:nil) response = create_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! response.body unless response.nil? end
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] promise which provides async access to http response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 272 def create_async(resource_group_name, profile_name, rule_set_name, custom_headers:nil) # Send request promise = begin_create_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers) promise = promise.then do |response| # Defining deserialization method. deserialize_method = lambda do |parsed_response| result_mapper = Azure::CDN::Mgmt::V2020_09_01::Models::RuleSet.mapper() parsed_response = @client.deserialize(result_mapper, parsed_response) end # Waiting for response. @client.get_long_running_operation_result(response, deserialize_method) end promise end
Deletes an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 303 def delete(resource_group_name, profile_name, rule_set_name, custom_headers:nil) response = delete_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! nil end
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] promise which provides async access to http response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 321 def delete_async(resource_group_name, profile_name, rule_set_name, custom_headers:nil) # Send request promise = begin_delete_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers) promise = promise.then do |response| # Defining deserialization method. deserialize_method = lambda do |parsed_response| end # Waiting for response. @client.get_long_running_operation_result(response, deserialize_method) end promise end
Gets an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [RuleSet] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 142 def get(resource_group_name, profile_name, rule_set_name, custom_headers:nil) response = get_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! response.body unless response.nil? end
Gets an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 181 def get_async(resource_group_name, profile_name, rule_set_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil? fail ArgumentError, 'profile_name is nil' if profile_name.nil? fail ArgumentError, 'rule_set_name is nil' if rule_set_name.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.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? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'ruleSetName' => rule_set_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:get, path_template, options) 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 MsRest::HttpOperationError.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::CDN::Mgmt::V2020_09_01::Models::RuleSet.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Gets an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 162 def get_with_http_info(resource_group_name, profile_name, rule_set_name, custom_headers:nil) get_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! end
Lists existing AzureFrontDoor rule sets within a profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Array<RuleSet>] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 36 def list_by_profile(resource_group_name, profile_name, custom_headers:nil) first_page = list_by_profile_as_lazy(resource_group_name, profile_name, custom_headers:custom_headers) first_page.get_all_items end
Lists existing AzureFrontDoor rule sets within a profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [RuleSetListResult] which provide lazy access to pages of the response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 870 def list_by_profile_as_lazy(resource_group_name, profile_name, custom_headers:nil) response = list_by_profile_async(resource_group_name, profile_name, custom_headers:custom_headers).value! unless response.nil? page = response.body page.next_method = Proc.new do |next_page_link| list_by_profile_next_async(next_page_link, custom_headers:custom_headers) end page end end
Lists existing AzureFrontDoor rule sets within a profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 69 def list_by_profile_async(resource_group_name, profile_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil? fail ArgumentError, 'profile_name is nil' if profile_name.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.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? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:get, path_template, options) 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 MsRest::HttpOperationError.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::CDN::Mgmt::V2020_09_01::Models::RuleSetListResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Lists existing AzureFrontDoor rule sets within a profile.
@param next_page_link [String] The NextLink from the previous successful call to List operation. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [RuleSetListResult] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 687 def list_by_profile_next(next_page_link, custom_headers:nil) response = list_by_profile_next_async(next_page_link, custom_headers:custom_headers).value! response.body unless response.nil? end
Lists existing AzureFrontDoor rule sets within a profile.
@param next_page_link [String] The NextLink from the previous successful call to List operation. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 716 def list_by_profile_next_async(next_page_link, custom_headers:nil) fail ArgumentError, 'next_page_link is nil' if next_page_link.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? path_template = '{nextLink}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], skip_encoding_path_params: {'nextLink' => next_page_link}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:get, path_template, options) 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 MsRest::HttpOperationError.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::CDN::Mgmt::V2020_09_01::Models::RuleSetListResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Lists existing AzureFrontDoor rule sets within a profile.
@param next_page_link [String] The NextLink from the previous successful call to List operation. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 702 def list_by_profile_next_with_http_info(next_page_link, custom_headers:nil) list_by_profile_next_async(next_page_link, custom_headers:custom_headers).value! end
Lists existing AzureFrontDoor rule sets within a profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 53 def list_by_profile_with_http_info(resource_group_name, profile_name, custom_headers:nil) list_by_profile_async(resource_group_name, profile_name, custom_headers:custom_headers).value! end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Array<Usage>] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 351 def list_resource_usage(resource_group_name, profile_name, rule_set_name, custom_headers:nil) first_page = list_resource_usage_as_lazy(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers) first_page.get_all_items end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [UsagesListResult] which provide lazy access to pages of the response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 896 def list_resource_usage_as_lazy(resource_group_name, profile_name, rule_set_name, custom_headers:nil) response = list_resource_usage_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! unless response.nil? page = response.body page.next_method = Proc.new do |next_page_link| list_resource_usage_next_async(next_page_link, custom_headers:custom_headers) end page end end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 388 def list_resource_usage_async(resource_group_name, profile_name, rule_set_name, custom_headers:nil) fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil? fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MaxLength': '90'" if !resource_group_name.nil? && resource_group_name.length > 90 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'MinLength': '1'" if !resource_group_name.nil? && resource_group_name.length < 1 fail ArgumentError, "'resource_group_name' should satisfy the constraint - 'Pattern': '^[-\w\._\(\)]+$'" if !resource_group_name.nil? && resource_group_name.match(Regexp.new('^^[-\w\._\(\)]+$$')).nil? fail ArgumentError, 'profile_name is nil' if profile_name.nil? fail ArgumentError, 'rule_set_name is nil' if rule_set_name.nil? fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.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? path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}/usages' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'resourceGroupName' => resource_group_name,'profileName' => profile_name,'ruleSetName' => rule_set_name,'subscriptionId' => @client.subscription_id}, query_params: {'api-version' => @client.api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:post, path_template, options) 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 MsRest::HttpOperationError.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::CDN::Mgmt::V2020_09_01::Models::UsagesListResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param next_page_link [String] The NextLink from the previous successful call to List operation. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [UsagesListResult] operation results.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 777 def list_resource_usage_next(next_page_link, custom_headers:nil) response = list_resource_usage_next_async(next_page_link, custom_headers:custom_headers).value! response.body unless response.nil? end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param next_page_link [String] The NextLink from the previous successful call to List operation. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [Concurrent::Promise] Promise object which holds the HTTP response.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 806 def list_resource_usage_next_async(next_page_link, custom_headers:nil) fail ArgumentError, 'next_page_link is nil' if next_page_link.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? path_template = '{nextLink}' request_url = @base_url || @client.base_url options = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], skip_encoding_path_params: {'nextLink' => next_page_link}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = @client.make_request_async(:post, path_template, options) 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 MsRest::HttpOperationError.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::CDN::Mgmt::V2020_09_01::Models::UsagesListResult.mapper() result.body = @client.deserialize(result_mapper, parsed_response) rescue Exception => e fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result) end end result end promise.execute end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param next_page_link [String] The NextLink from the previous successful call to List operation. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 792 def list_resource_usage_next_with_http_info(next_page_link, custom_headers:nil) list_resource_usage_next_async(next_page_link, custom_headers:custom_headers).value! end
Checks the quota and actual usage of endpoints under the given CDN
profile.
@param resource_group_name [String] Name of the Resource group within the Azure
subscription. @param profile_name [String] Name of the CDN
profile which is unique within the resource group. @param rule_set_name [String] Name of the rule set under the profile which is unique globally. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.
@return [MsRestAzure::AzureOperationResponse] HTTP response information.
# File lib/2020-09-01/generated/azure_mgmt_cdn/rule_sets.rb, line 370 def list_resource_usage_with_http_info(resource_group_name, profile_name, rule_set_name, custom_headers:nil) list_resource_usage_async(resource_group_name, profile_name, rule_set_name, custom_headers:custom_headers).value! end