Class: Azure::CostManagement::Mgmt::V2019_03_01_preview::ShowbackRuleOperations
- Inherits:
-
Object
- Object
- Azure::CostManagement::Mgmt::V2019_03_01_preview::ShowbackRuleOperations
- Includes:
- MsRestAzure
- Defined in:
- lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb
Overview
ShowbackRuleOperations
Instance Attribute Summary collapse
-
#client ⇒ CostManagementClient
readonly
Reference to the CostManagementClient.
Instance Method Summary collapse
-
#create_update_rule(billing_account_id, rule_name, showback_rule, custom_headers: nil) ⇒ ShowbackRule
Create/Update showback rule for billing account.
-
#create_update_rule_async(billing_account_id, rule_name, showback_rule, custom_headers: nil) ⇒ Concurrent::Promise
Create/Update showback rule for billing account.
-
#create_update_rule_with_http_info(billing_account_id, rule_name, showback_rule, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Create/Update showback rule for billing account.
-
#get_billing_account_id(billing_account_id, rule_name, custom_headers: nil) ⇒ ShowbackRule
Gets the showback rule by rule name.
-
#get_billing_account_id_async(billing_account_id, rule_name, custom_headers: nil) ⇒ Concurrent::Promise
Gets the showback rule by rule name.
-
#get_billing_account_id_with_http_info(billing_account_id, rule_name, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Gets the showback rule by rule name.
-
#initialize(client) ⇒ ShowbackRuleOperations
constructor
Creates and initializes a new instance of the ShowbackRuleOperations class.
Constructor Details
#initialize(client) ⇒ ShowbackRuleOperations
Creates and initializes a new instance of the ShowbackRuleOperations class.
17 18 19 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 17 def initialize(client) @client = client end |
Instance Attribute Details
#client ⇒ CostManagementClient (readonly)
Returns reference to the CostManagementClient.
22 23 24 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 22 def client @client end |
Instance Method Details
#create_update_rule(billing_account_id, rule_name, showback_rule, custom_headers: nil) ⇒ ShowbackRule
Create/Update showback rule for billing account.
will be added to the HTTP request.
128 129 130 131 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 128 def create_update_rule(billing_account_id, rule_name, showback_rule, custom_headers:nil) response = create_update_rule_async(billing_account_id, rule_name, showback_rule, custom_headers:custom_headers).value! response.body unless response.nil? end |
#create_update_rule_async(billing_account_id, rule_name, showback_rule, custom_headers: nil) ⇒ Concurrent::Promise
Create/Update showback rule for billing account.
to the HTTP request.
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 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 159 def create_update_rule_async(billing_account_id, rule_name, showback_rule, custom_headers:nil) fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, 'billing_account_id is nil' if billing_account_id.nil? fail ArgumentError, 'rule_name is nil' if rule_name.nil? fail ArgumentError, 'showback_rule is nil' if showback_rule.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::CostManagement::Mgmt::V2019_03_01_preview::Models::ShowbackRule.mapper() request_content = @client.serialize(request_mapper, showback_rule) request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil path_template = 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.CostManagement/showbackRules/{ruleName}' request_url = @base_url || @client.base_url = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'billingAccountId' => billing_account_id,'ruleName' => rule_name}, 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, ) 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::CostManagement::Mgmt::V2019_03_01_preview::Models::ShowbackRule.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 |
#create_update_rule_with_http_info(billing_account_id, rule_name, showback_rule, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Create/Update showback rule for billing account.
will be added to the HTTP request.
144 145 146 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 144 def create_update_rule_with_http_info(billing_account_id, rule_name, showback_rule, custom_headers:nil) create_update_rule_async(billing_account_id, rule_name, showback_rule, custom_headers:custom_headers).value! end |
#get_billing_account_id(billing_account_id, rule_name, custom_headers: nil) ⇒ ShowbackRule
Gets the showback rule by rule name.
will be added to the HTTP request.
34 35 36 37 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 34 def get_billing_account_id(billing_account_id, rule_name, custom_headers:nil) response = get_billing_account_id_async(billing_account_id, rule_name, custom_headers:custom_headers).value! response.body unless response.nil? end |
#get_billing_account_id_async(billing_account_id, rule_name, custom_headers: nil) ⇒ Concurrent::Promise
Gets the showback rule by rule name.
to the HTTP request.
63 64 65 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 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 63 def get_billing_account_id_async(billing_account_id, rule_name, custom_headers:nil) fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, 'billing_account_id is nil' if billing_account_id.nil? fail ArgumentError, 'rule_name is nil' if rule_name.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 = 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.CostManagement/showbackRules/{ruleName}' request_url = @base_url || @client.base_url = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'billingAccountId' => billing_account_id,'ruleName' => rule_name}, 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, ) 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::CostManagement::Mgmt::V2019_03_01_preview::Models::ShowbackRule.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 |
#get_billing_account_id_with_http_info(billing_account_id, rule_name, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Gets the showback rule by rule name.
will be added to the HTTP request.
49 50 51 |
# File 'lib/2019-03-01-preview/generated/azure_mgmt_cost_management/showback_rule_operations.rb', line 49 def get_billing_account_id_with_http_info(billing_account_id, rule_name, custom_headers:nil) get_billing_account_id_async(billing_account_id, rule_name, custom_headers:custom_headers).value! end |