Class: Azure::Consumption::Mgmt::V2019_04_01_preview::PriceSheet
- Inherits:
-
Object
- Object
- Azure::Consumption::Mgmt::V2019_04_01_preview::PriceSheet
- Includes:
- MsRestAzure
- Defined in:
- lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb
Overview
Consumption management client provides access to consumption resources for Azure Enterprise Subscriptions.
Instance Attribute Summary collapse
-
#client ⇒ ConsumptionManagementClient
readonly
Reference to the ConsumptionManagementClient.
Instance Method Summary collapse
-
#get(expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ PriceSheetResult
Gets the price sheet for a scope by subscriptionId.
-
#get_async(expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ Concurrent::Promise
Gets the price sheet for a scope by subscriptionId.
-
#get_by_billing_period(billing_period_name, expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ PriceSheetResult
Get the price sheet for a scope by subscriptionId and billing period.
-
#get_by_billing_period_async(billing_period_name, expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ Concurrent::Promise
Get the price sheet for a scope by subscriptionId and billing period.
-
#get_by_billing_period_with_http_info(billing_period_name, expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Get the price sheet for a scope by subscriptionId and billing period.
-
#get_with_http_info(expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Gets the price sheet for a scope by subscriptionId.
-
#initialize(client) ⇒ PriceSheet
constructor
Creates and initializes a new instance of the PriceSheet class.
Constructor Details
#initialize(client) ⇒ PriceSheet
Creates and initializes a new instance of the PriceSheet class.
18 19 20 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 18 def initialize(client) @client = client end |
Instance Attribute Details
#client ⇒ ConsumptionManagementClient (readonly)
Returns reference to the ConsumptionManagementClient.
23 24 25 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 23 def client @client end |
Instance Method Details
#get(expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ PriceSheetResult
Gets the price sheet for a scope by subscriptionId. Price sheet is available via this API only for May 1, 2014 or later.
within a price sheet. By default, these fields are not included when returning price sheet. returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. results. will be added to the HTTP request.
43 44 45 46 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 43 def get(expand:nil, skiptoken:nil, top:nil, custom_headers:nil) response = get_async(expand:, skiptoken:skiptoken, top:top, custom_headers:custom_headers).value! response.body unless response.nil? end |
#get_async(expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ Concurrent::Promise
Gets the price sheet for a scope by subscriptionId. Price sheet is available via this API only for May 1, 2014 or later.
within a price sheet. By default, these fields are not included when returning price sheet. returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. results. to the HTTP request.
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 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 88 def get_async(expand:nil, skiptoken:nil, top:nil, custom_headers:nil) fail ArgumentError, "'top' should satisfy the constraint - 'InclusiveMaximum': '1000'" if !top.nil? && top > 1000 fail ArgumentError, "'top' should satisfy the constraint - 'InclusiveMinimum': '1'" if !top.nil? && top < 1 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}/providers/Microsoft.Consumption/pricesheets/default' 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: {'$expand' => ,'$skiptoken' => skiptoken,'$top' => top,'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::Consumption::Mgmt::V2019_04_01_preview::Models::PriceSheetResult.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_by_billing_period(billing_period_name, expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ PriceSheetResult
Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.
within a price sheet. By default, these fields are not included when returning price sheet. returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. results. will be added to the HTTP request.
162 163 164 165 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 162 def get_by_billing_period(billing_period_name, expand:nil, skiptoken:nil, top:nil, custom_headers:nil) response = get_by_billing_period_async(billing_period_name, expand:, skiptoken:skiptoken, top:top, custom_headers:custom_headers).value! response.body unless response.nil? end |
#get_by_billing_period_async(billing_period_name, expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ Concurrent::Promise
Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.
within a price sheet. By default, these fields are not included when returning price sheet. returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. results. to the HTTP request.
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 209 def get_by_billing_period_async(billing_period_name, expand:nil, skiptoken:nil, top:nil, custom_headers:nil) fail ArgumentError, "'top' should satisfy the constraint - 'InclusiveMaximum': '1000'" if !top.nil? && top > 1000 fail ArgumentError, "'top' should satisfy the constraint - 'InclusiveMinimum': '1'" if !top.nil? && top < 1 fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, 'billing_period_name is nil' if billing_period_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 = 'subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default' request_url = @base_url || @client.base_url = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'subscriptionId' => @client.subscription_id,'billingPeriodName' => billing_period_name}, query_params: {'$expand' => ,'$skiptoken' => skiptoken,'$top' => top,'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::Consumption::Mgmt::V2019_04_01_preview::Models::PriceSheetResult.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_by_billing_period_with_http_info(billing_period_name, expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.
within a price sheet. By default, these fields are not included when returning price sheet. returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. results. will be added to the HTTP request.
186 187 188 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 186 def get_by_billing_period_with_http_info(billing_period_name, expand:nil, skiptoken:nil, top:nil, custom_headers:nil) get_by_billing_period_async(billing_period_name, expand:, skiptoken:skiptoken, top:top, custom_headers:custom_headers).value! end |
#get_with_http_info(expand: nil, skiptoken: nil, top: nil, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Gets the price sheet for a scope by subscriptionId. Price sheet is available via this API only for May 1, 2014 or later.
within a price sheet. By default, these fields are not included when returning price sheet. returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. results. will be added to the HTTP request.
66 67 68 |
# File 'lib/2019-04-01-preview/generated/azure_mgmt_consumption/price_sheet.rb', line 66 def get_with_http_info(expand:nil, skiptoken:nil, top:nil, custom_headers:nil) get_async(expand:, skiptoken:skiptoken, top:top, custom_headers:custom_headers).value! end |