Class: Azure::Consumption::Mgmt::V2019_06_01::ConsumptionManagementClient

Inherits:
MsRestAzure::AzureServiceClient
  • Object
show all
Includes:
MsRestAzure, MsRestAzure::Serialization
Defined in:
lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb

Overview

A service client - single point of access to the REST API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(credentials = nil, base_url = nil, options = nil) ⇒ ConsumptionManagementClient

Creates initializes a new instance of the ConsumptionManagementClient class.



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
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 87

def initialize(credentials = nil, base_url = nil, options = nil)
  super(credentials, options)
  @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)
  @marketplaces = Marketplaces.new(self)
  @budgets = Budgets.new(self)
  @tags = Tags.new(self)
  @charges = Charges.new(self)
  @balances = Balances.new(self)
  @reservations_summaries = ReservationsSummaries.new(self)
  @reservations_details = ReservationsDetails.new(self)
  @reservation_recommendations = ReservationRecommendations.new(self)
  @reservation_transactions = ReservationTransactions.new(self)
  @price_sheet = PriceSheet.new(self)
  @forecasts = Forecasts.new(self)
  @operations = Operations.new(self)
  @aggregated_cost = AggregatedCost.new(self)
  @api_version = '2019-06-01'
  @accept_language = 'en-US'
  @long_running_operation_retry_timeout = 30
  @generate_client_request_id = true
  add_telemetry
end

Instance Attribute Details

#accept_languageString



28
29
30
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 28

def accept_language
  @accept_language
end

#aggregated_costAggregatedCost (readonly)



79
80
81
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 79

def aggregated_cost
  @aggregated_cost
end

#api_versionString (readonly)

The current version is 2019-06-01.



22
23
24
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 22

def api_version
  @api_version
end

#balancesBalances (readonly)



55
56
57
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 55

def balances
  @balances
end

#base_urlString



15
16
17
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 15

def base_url
  @base_url
end

#budgetsBudgets (readonly)



46
47
48
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 46

def budgets
  @budgets
end

#chargesCharges (readonly)



52
53
54
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 52

def charges
  @charges
end

#credentialsObject (readonly)



18
19
20
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 18

def credentials
  @credentials
end

#forecastsForecasts (readonly)



73
74
75
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 73

def forecasts
  @forecasts
end

#generate_client_request_idBoolean

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/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 37

def generate_client_request_id
  @generate_client_request_id
end

#long_running_operation_retry_timeoutInteger

Operations. Default value is 30.



32
33
34
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 32

def long_running_operation_retry_timeout
  @long_running_operation_retry_timeout
end

#marketplacesMarketplaces (readonly)



43
44
45
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 43

def marketplaces
  @marketplaces
end

#operationsOperations (readonly)



76
77
78
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 76

def operations
  @operations
end

#price_sheetPriceSheet (readonly)



70
71
72
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 70

def price_sheet
  @price_sheet
end

#reservation_recommendationsReservationRecommendations (readonly)



64
65
66
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 64

def reservation_recommendations
  @reservation_recommendations
end

#reservation_transactionsReservationTransactions (readonly)



67
68
69
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 67

def reservation_transactions
  @reservation_transactions
end

#reservations_detailsReservationsDetails (readonly)



61
62
63
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 61

def reservations_details
  @reservations_details
end

#reservations_summariesReservationsSummaries (readonly)



58
59
60
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 58

def reservations_summaries
  @reservations_summaries
end

#subscription_idString



25
26
27
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 25

def subscription_id
  @subscription_id
end

#tagsTags (readonly)



49
50
51
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 49

def tags
  @tags
end

#usage_detailsUsageDetails (readonly)



40
41
42
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 40

def usage_details
  @usage_details
end

Instance Method Details

#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"
options = {
  body: request_content,
  query_params: {'api-version' => '2016-02-01'}
}
result = @client.make_request(:put, path, options)


131
132
133
134
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 131

def make_request(method, path, options = {})
  result = make_request_with_http_info(method, path, options)
  result.body unless result.nil?
end

#make_request_async(method, path, options = {}) ⇒ Concurrent::Promise

Makes a request asynchronously.



156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 156

def make_request_async(method, path, options = {})
  fail ArgumentError, 'method is nil' if method.nil?
  fail ArgumentError, 'path is nil' if path.nil?

  request_url = options[:base_url] || @base_url
  if(!options[:headers].nil? && !options[:headers]['Content-Type'].nil?)
    @request_headers['Content-Type'] = options[:headers]['Content-Type']
  end

  request_headers = @request_headers
  request_headers.merge!({'accept-language' => @accept_language}) unless @accept_language.nil?
  options.merge!({headers: request_headers.merge(options[:headers] || {})})
  options.merge!({credentials: @credentials}) unless @credentials.nil?

  super(request_url, method, path, options)
end

#make_request_with_http_info(method, path, options = {}) ⇒ MsRestAzure::AzureOperationResponse

Makes a request and returns the operation response.



143
144
145
146
147
# File 'lib/2019-06-01/generated/azure_mgmt_consumption/consumption_management_client.rb', line 143

def make_request_with_http_info(method, path, options = {})
  result = make_request_async(method, path, options).value!
  result.body = result.response.body.to_s.empty? ? nil : JSON.load(result.response.body)
  result
end