Class: Azure::Consumption::Mgmt::V2018_03_31::ConsumptionManagementClient
- Inherits:
-
MsRestAzure::AzureServiceClient
- Object
- MsRestAzure::AzureServiceClient
- Azure::Consumption::Mgmt::V2018_03_31::ConsumptionManagementClient
- Includes:
- MsRestAzure, MsRestAzure::Serialization
- Defined in:
- lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb
Overview
A service client - single point of access to the REST API.
Instance Attribute Summary collapse
-
#accept_language ⇒ String
The preferred language for the response.
-
#api_version ⇒ String
readonly
The current version is 2018-03-31.
-
#base_url ⇒ String
The base URI of the service.
-
#budgets ⇒ Budgets
readonly
Budgets.
-
#cost_tags_operations ⇒ CostTagsOperations
readonly
Cost_tags_operations.
-
#credentials ⇒ Object
readonly
Credentials needed for the client to connect to Azure.
-
#generate_client_request_id ⇒ Boolean
generated.
-
#get_balances_by_billing_account(billing_account_id, custom_headers: nil) ⇒ Balance
readonly
Gets the balances for a scope by billingAccountId.
-
#long_running_operation_retry_timeout ⇒ Integer
Operations.
-
#marketplaces ⇒ Marketplaces
readonly
Marketplaces.
-
#marketplaces_by_billing_account ⇒ MarketplacesByBillingAccount
readonly
Marketplaces_by_billing_account.
-
#marketplaces_by_department ⇒ MarketplacesByDepartment
readonly
Marketplaces_by_department.
-
#marketplaces_by_enrollment_accounts ⇒ MarketplacesByEnrollmentAccounts
readonly
marketplaces_by_enrollment_accounts.
-
#operations ⇒ Operations
readonly
Operations.
-
#price_sheet ⇒ PriceSheet
readonly
Price_sheet.
-
#reservation_recommendations_operations ⇒ ReservationRecommendationsOperations
readonly
reservation_recommendations_operations.
-
#reservations_details ⇒ ReservationsDetails
readonly
Reservations_details.
-
#reservations_summaries ⇒ ReservationsSummaries
readonly
Reservations_summaries.
-
#subscription_id ⇒ String
Azure Subscription ID.
-
#tags_operations ⇒ TagsOperations
readonly
Tags_operations.
-
#usage_details ⇒ UsageDetails
readonly
Usage_details.
-
#usage_details_by_billing_account ⇒ UsageDetailsByBillingAccount
readonly
Usage_details_by_billing_account.
-
#usage_details_by_department ⇒ UsageDetailsByDepartment
readonly
Usage_details_by_department.
-
#usage_details_by_enrollment_account ⇒ UsageDetailsByEnrollmentAccount
readonly
usage_details_by_enrollment_account.
Instance Method Summary collapse
-
#get_balances_by_billing_account_async(billing_account_id, custom_headers: nil) ⇒ Concurrent::Promise
Gets the balances for a scope by billingAccountId.
-
#get_balances_by_billing_account_with_http_info(billing_account_id, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Gets the balances for a scope by billingAccountId.
-
#initialize(credentials = nil, base_url = nil, options = nil) ⇒ ConsumptionManagementClient
constructor
Creates initializes a new instance of the ConsumptionManagementClient class.
-
#make_request(method, path, options = {}) ⇒ Hash{String=>String}
Makes a request and returns the body of the response.
-
#make_request_async(method, path, options = {}) ⇒ Concurrent::Promise
Makes a request asynchronously.
-
#make_request_with_http_info(method, path, options = {}) ⇒ MsRestAzure::AzureOperationResponse
Makes a request and returns the operation response.
Constructor Details
#initialize(credentials = nil, base_url = nil, options = nil) ⇒ ConsumptionManagementClient
Creates initializes a new instance of the ConsumptionManagementClient class.
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 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 99 def initialize(credentials = nil, base_url = nil, = nil) super(credentials, ) @base_url = base_url || 'https://management.azure.com' fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials) unless credentials.nil? @credentials = credentials @usage_details = UsageDetails.new(self) @usage_details_by_billing_account = UsageDetailsByBillingAccount.new(self) @usage_details_by_department = UsageDetailsByDepartment.new(self) @usage_details_by_enrollment_account = UsageDetailsByEnrollmentAccount.new(self) @marketplaces = Marketplaces.new(self) @marketplaces_by_billing_account = MarketplacesByBillingAccount.new(self) @marketplaces_by_department = MarketplacesByDepartment.new(self) @marketplaces_by_enrollment_accounts = MarketplacesByEnrollmentAccounts.new(self) @get_balances_by_billing_account = GetBalancesByBillingAccount.new(self) @reservations_summaries = ReservationsSummaries.new(self) @reservations_details = ReservationsDetails.new(self) @reservation_recommendations_operations = ReservationRecommendationsOperations.new(self) @budgets = Budgets.new(self) @operations = Operations.new(self) @price_sheet = PriceSheet.new(self) @cost_tags_operations = CostTagsOperations.new(self) @tags_operations = TagsOperations.new(self) @api_version = '2018-03-31' @accept_language = 'en-US' @long_running_operation_retry_timeout = 30 @generate_client_request_id = true add_telemetry end |
Instance Attribute Details
#accept_language ⇒ String
Returns The preferred language for the response.
28 29 30 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 28 def accept_language @accept_language end |
#api_version ⇒ String (readonly)
The current version is 2018-03-31.
22 23 24 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 22 def api_version @api_version end |
#base_url ⇒ String
Returns the base URI of the service.
15 16 17 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 15 def base_url @base_url end |
#budgets ⇒ Budgets (readonly)
Returns budgets.
79 80 81 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 79 def budgets @budgets end |
#cost_tags_operations ⇒ CostTagsOperations (readonly)
Returns cost_tags_operations.
88 89 90 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 88 def @cost_tags_operations end |
#credentials ⇒ Object (readonly)
Returns Credentials needed for the client to connect to Azure.
18 19 20 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 18 def credentials @credentials end |
#generate_client_request_id ⇒ Boolean
generated. When set to true a unique x-ms-client-request-id value is generated and included in each request. Default is true.
37 38 39 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 37 def generate_client_request_id @generate_client_request_id end |
#get_balances_by_billing_account(billing_account_id, custom_headers: nil) ⇒ Balance (readonly)
Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.
will be added to the HTTP request.
66 67 68 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 66 def get_balances_by_billing_account @get_balances_by_billing_account end |
#long_running_operation_retry_timeout ⇒ Integer
Operations. Default value is 30.
32 33 34 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 32 def long_running_operation_retry_timeout @long_running_operation_retry_timeout end |
#marketplaces ⇒ Marketplaces (readonly)
Returns marketplaces.
53 54 55 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 53 def marketplaces @marketplaces end |
#marketplaces_by_billing_account ⇒ MarketplacesByBillingAccount (readonly)
Returns marketplaces_by_billing_account.
56 57 58 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 56 def marketplaces_by_billing_account @marketplaces_by_billing_account end |
#marketplaces_by_department ⇒ MarketplacesByDepartment (readonly)
Returns marketplaces_by_department.
59 60 61 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 59 def marketplaces_by_department @marketplaces_by_department end |
#marketplaces_by_enrollment_accounts ⇒ MarketplacesByEnrollmentAccounts (readonly)
marketplaces_by_enrollment_accounts
63 64 65 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 63 def marketplaces_by_enrollment_accounts @marketplaces_by_enrollment_accounts end |
#operations ⇒ Operations (readonly)
Returns operations.
82 83 84 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 82 def operations @operations end |
#price_sheet ⇒ PriceSheet (readonly)
Returns price_sheet.
85 86 87 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 85 def price_sheet @price_sheet end |
#reservation_recommendations_operations ⇒ ReservationRecommendationsOperations (readonly)
reservation_recommendations_operations
76 77 78 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 76 def reservation_recommendations_operations @reservation_recommendations_operations end |
#reservations_details ⇒ ReservationsDetails (readonly)
Returns reservations_details.
72 73 74 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 72 def reservations_details @reservations_details end |
#reservations_summaries ⇒ ReservationsSummaries (readonly)
Returns reservations_summaries.
69 70 71 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 69 def reservations_summaries @reservations_summaries end |
#subscription_id ⇒ String
Returns Azure Subscription ID.
25 26 27 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 25 def subscription_id @subscription_id end |
#tags_operations ⇒ TagsOperations (readonly)
Returns tags_operations.
91 92 93 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 91 def @tags_operations end |
#usage_details ⇒ UsageDetails (readonly)
Returns usage_details.
40 41 42 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 40 def usage_details @usage_details end |
#usage_details_by_billing_account ⇒ UsageDetailsByBillingAccount (readonly)
Returns usage_details_by_billing_account.
43 44 45 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 43 def usage_details_by_billing_account @usage_details_by_billing_account end |
#usage_details_by_department ⇒ UsageDetailsByDepartment (readonly)
Returns usage_details_by_department.
46 47 48 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 46 def usage_details_by_department @usage_details_by_department end |
#usage_details_by_enrollment_account ⇒ UsageDetailsByEnrollmentAccount (readonly)
usage_details_by_enrollment_account
50 51 52 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 50 def usage_details_by_enrollment_account @usage_details_by_enrollment_account end |
Instance Method Details
#get_balances_by_billing_account_async(billing_account_id, custom_headers: nil) ⇒ Concurrent::Promise
Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.
to the HTTP request.
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 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 227 def get_balances_by_billing_account_async(billing_account_id, custom_headers:nil) fail ArgumentError, 'api_version is nil' if api_version.nil? fail ArgumentError, 'billing_account_id is nil' if billing_account_id.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'] = accept_language unless accept_language.nil? path_template = 'providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances' request_url = @base_url || self.base_url = { middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]], path_params: {'billingAccountId' => billing_account_id}, query_params: {'api-version' => api_version}, headers: request_headers.merge(custom_headers || {}), base_url: request_url } promise = self.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_03_31::Models::Balance.mapper() result.body = self.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_balances_by_billing_account_with_http_info(billing_account_id, custom_headers: nil) ⇒ MsRestAzure::AzureOperationResponse
Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.
will be added to the HTTP request.
213 214 215 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 213 def get_balances_by_billing_account_with_http_info(billing_account_id, custom_headers:nil) get_balances_by_billing_account_async(billing_account_id, custom_headers:custom_headers).value! end |
#make_request(method, path, options = {}) ⇒ Hash{String=>String}
Makes a request and returns the body of the response. Example:
request_content = "{'location':'westus','tags':{'tag1':'val1','tag2':'val2'}}"
path = "/path"
= {
body: request_content,
query_params: {'api-version' => '2016-02-01'}
}
result = @client.make_request(:put, path, )
146 147 148 149 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 146 def make_request(method, path, = {}) result = make_request_with_http_info(method, path, ) result.body unless result.nil? end |
#make_request_async(method, path, options = {}) ⇒ Concurrent::Promise
Makes a request asynchronously.
171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 171 def make_request_async(method, path, = {}) fail ArgumentError, 'method is nil' if method.nil? fail ArgumentError, 'path is nil' if path.nil? request_url = [:base_url] || @base_url if(![:headers].nil? && ![:headers]['Content-Type'].nil?) @request_headers['Content-Type'] = [:headers]['Content-Type'] end request_headers = @request_headers request_headers.merge!({'accept-language' => @accept_language}) unless @accept_language.nil? .merge!({headers: request_headers.merge([:headers] || {})}) .merge!({credentials: @credentials}) unless @credentials.nil? super(request_url, method, path, ) end |
#make_request_with_http_info(method, path, options = {}) ⇒ MsRestAzure::AzureOperationResponse
Makes a request and returns the operation response.
158 159 160 161 162 |
# File 'lib/2018-03-31/generated/azure_mgmt_consumption/consumption_management_client.rb', line 158 def make_request_with_http_info(method, path, = {}) result = make_request_async(method, path, ).value! result.body = result.response.body.to_s.empty? ? nil : JSON.load(result.response.body) result end |