Class: Azure::Consumption::Mgmt::V2018_06_30::ConsumptionManagementClient

Inherits:
MsRestAzure::AzureServiceClient
  • Object
show all
Includes:
MsRestAzure, MsRestAzure::Serialization
Defined in:
lib/2018-06-30/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.

Parameters:

  • credentials (MsRest::ServiceClientCredentials) (defaults to: nil)

    credentials to authorize HTTP requests made by the service client.

  • base_url (String) (defaults to: nil)

    the base URI of the service.

  • options (Array) (defaults to: nil)

    filters to be applied to the HTTP requests.



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
# File 'lib/2018-06-30/generated/azure_mgmt_consumption/consumption_management_client.rb', line 81

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)
  @balances = Balances.new(self)
  @reservations_summaries = ReservationsSummaries.new(self)
  @reservations_details = ReservationsDetails.new(self)
  @reservation_recommendations = ReservationRecommendations.new(self)
  @budgets = Budgets.new(self)
  @price_sheet = PriceSheet.new(self)
  @cost_tags = CostTags.new(self)
  @tags = Tags.new(self)
  @forecasts = Forecasts.new(self)
  @operations = Operations.new(self)
  @api_version = '2018-06-30'
  @accept_language = 'en-US'
  @long_running_operation_retry_timeout = 30
  @generate_client_request_id = true
  add_telemetry
end

Instance Attribute Details

#accept_languageString

Returns The preferred language for the response.

Returns:

  • (String)

    The preferred language for the response.



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

def accept_language
  @accept_language
end

#api_versionString (readonly)

The current version is 2018-06-30.

Returns:

  • (String)

    Version of the API to be used with the client request.



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

def api_version
  @api_version
end

#balancesBalances (readonly)

Returns balances.

Returns:



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

def balances
  @balances
end

#base_urlString

Returns the base URI of the service.

Returns:

  • (String)

    the base URI of the service.



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

def base_url
  @base_url
end

#budgetsBudgets (readonly)

Returns budgets.

Returns:



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

def budgets
  @budgets
end

#cost_tagsCostTags (readonly)

Returns cost_tags.

Returns:



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

def cost_tags
  @cost_tags
end

#credentialsObject (readonly)

Returns Credentials needed for the client to connect to Azure.

Returns:

  • Credentials needed for the client to connect to Azure.



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

def credentials
  @credentials
end

#forecastsForecasts (readonly)

Returns forecasts.

Returns:



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

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.

Returns:

  • (Boolean)

    Whether a unique x-ms-client-request-id should be



37
38
39
# File 'lib/2018-06-30/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.

Returns:

  • (Integer)

    The retry timeout in seconds for Long Running



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

def long_running_operation_retry_timeout
  @long_running_operation_retry_timeout
end

#marketplacesMarketplaces (readonly)

Returns marketplaces.

Returns:



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

def marketplaces
  @marketplaces
end

#operationsOperations (readonly)

Returns operations.

Returns:



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

def operations
  @operations
end

#price_sheetPriceSheet (readonly)

Returns price_sheet.

Returns:



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

def price_sheet
  @price_sheet
end

#reservation_recommendationsReservationRecommendations (readonly)

Returns reservation_recommendations.

Returns:



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

def reservation_recommendations
  @reservation_recommendations
end

#reservations_detailsReservationsDetails (readonly)

Returns reservations_details.

Returns:



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

def reservations_details
  @reservations_details
end

#reservations_summariesReservationsSummaries (readonly)

Returns reservations_summaries.

Returns:



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

def reservations_summaries
  @reservations_summaries
end

#subscription_idString

Returns Azure Subscription ID.

Returns:

  • (String)

    Azure Subscription ID.



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

def subscription_id
  @subscription_id
end

#tagsTags (readonly)

Returns tags.

Returns:



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

def tags
  @tags
end

#usage_detailsUsageDetails (readonly)

Returns usage_details.

Returns:



40
41
42
# File 'lib/2018-06-30/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)

Parameters:

  • method (Symbol)

    with any of the following values :get, :put, :post, :patch, :delete.

  • path (String)

    the path, relative to #base_url.

  • options (Hash{String=>String}) (defaults to: {})

    specifying any request options like :body.

Returns:

  • (Hash{String=>String})

    containing the body of the response.



123
124
125
126
# File 'lib/2018-06-30/generated/azure_mgmt_consumption/consumption_management_client.rb', line 123

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.

Parameters:

  • method (Symbol)

    with any of the following values :get, :put, :post, :patch, :delete.

  • path (String)

    the path, relative to #base_url.

  • options (Hash{String=>String}) (defaults to: {})

    specifying any request options like :body.

Returns:

  • (Concurrent::Promise)

    Promise object which holds the HTTP response.



148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
# File 'lib/2018-06-30/generated/azure_mgmt_consumption/consumption_management_client.rb', line 148

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.

Parameters:

  • method (Symbol)

    with any of the following values :get, :put, :post, :patch, :delete.

  • path (String)

    the path, relative to #base_url.

  • options (Hash{String=>String}) (defaults to: {})

    specifying any request options like :body.

Returns:

  • (MsRestAzure::AzureOperationResponse)

    Operation response containing the request, response and status.



135
136
137
138
139
# File 'lib/2018-06-30/generated/azure_mgmt_consumption/consumption_management_client.rb', line 135

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