Class: Azure::Consumption::Mgmt::V2018_11_01_preview::ChargesByInvoiceSection
- Inherits:
-
Object
- Object
- Azure::Consumption::Mgmt::V2018_11_01_preview::ChargesByInvoiceSection
- Includes:
- MsRestAzure
- Defined in:
- lib/2018-11-01-preview/generated/azure_mgmt_consumption/charges_by_invoice_section.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
-
#initialize(client) ⇒ ChargesByInvoiceSection
constructor
Creates and initializes a new instance of the ChargesByInvoiceSection class.
-
#list(billing_account_id, invoice_section_id, start_date, end_date, apply: nil, custom_headers: nil) ⇒ ChargesListByInvoiceSection
Lists the charges by invoice section id for given start and end date.
-
#list_async(billing_account_id, invoice_section_id, start_date, end_date, apply: nil, custom_headers: nil) ⇒ Concurrent::Promise
Lists the charges by invoice section id for given start and end date.
-
#list_with_http_info(billing_account_id, invoice_section_id, start_date, end_date, apply: nil, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Lists the charges by invoice section id for given start and end date.
Constructor Details
#initialize(client) ⇒ ChargesByInvoiceSection
Creates and initializes a new instance of the ChargesByInvoiceSection class.
18 19 20 |
# File 'lib/2018-11-01-preview/generated/azure_mgmt_consumption/charges_by_invoice_section.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/2018-11-01-preview/generated/azure_mgmt_consumption/charges_by_invoice_section.rb', line 23 def client @client end |
Instance Method Details
#list(billing_account_id, invoice_section_id, start_date, end_date, apply: nil, custom_headers: nil) ⇒ ChargesListByInvoiceSection
Lists the charges by invoice section id for given start and end date. Start and end date are used to determine the billing period. For current month, the data will be provided from month to date. If there are no charges for a month then that month will show all zeroes.
will be added to the HTTP request.
41 42 43 44 |
# File 'lib/2018-11-01-preview/generated/azure_mgmt_consumption/charges_by_invoice_section.rb', line 41 def list(billing_account_id, invoice_section_id, start_date, end_date, apply:nil, custom_headers:nil) response = list_async(billing_account_id, invoice_section_id, start_date, end_date, apply:apply, custom_headers:custom_headers).value! response.body unless response.nil? end |
#list_async(billing_account_id, invoice_section_id, start_date, end_date, apply: nil, custom_headers: nil) ⇒ Concurrent::Promise
Lists the charges by invoice section id for given start and end date. Start and end date are used to determine the billing period. For current month, the data will be provided from month to date. If there are no charges for a month then that month will show all zeroes.
to the HTTP request.
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 126 127 128 129 130 131 132 133 134 135 136 |
# File 'lib/2018-11-01-preview/generated/azure_mgmt_consumption/charges_by_invoice_section.rb', line 82 def list_async(billing_account_id, invoice_section_id, start_date, end_date, apply:nil, custom_headers:nil) fail ArgumentError, 'billing_account_id is nil' if billing_account_id.nil? fail ArgumentError, 'invoice_section_id is nil' if invoice_section_id.nil? fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil? fail ArgumentError, 'start_date is nil' if start_date.nil? fail ArgumentError, 'end_date is nil' if end_date.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}/invoiceSections/{invoiceSectionId}/providers/Microsoft.Consumption/charges' request_url = @base_url || @client.base_url = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'billingAccountId' => billing_account_id,'invoiceSectionId' => invoice_section_id}, query_params: {'api-version' => @client.api_version,'startDate' => start_date,'endDate' => end_date,'$apply' => apply}, 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::V2018_11_01_preview::Models::ChargesListByInvoiceSection.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 |
#list_with_http_info(billing_account_id, invoice_section_id, start_date, end_date, apply: nil, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Lists the charges by invoice section id for given start and end date. Start and end date are used to determine the billing period. For current month, the data will be provided from month to date. If there are no charges for a month then that month will show all zeroes.
will be added to the HTTP request.
62 63 64 |
# File 'lib/2018-11-01-preview/generated/azure_mgmt_consumption/charges_by_invoice_section.rb', line 62 def list_with_http_info(billing_account_id, invoice_section_id, start_date, end_date, apply:nil, custom_headers:nil) list_async(billing_account_id, invoice_section_id, start_date, end_date, apply:apply, custom_headers:custom_headers).value! end |