Class: Azure::CostManagement::Profiles::Latest::Mgmt::CostManagementManagementClass

Inherits:
Object
  • Object
show all
Defined in:
lib/profiles/latest/modules/costmanagement_profile_module.rb

Overview

CostManagementManagementClass

Direct Known Subclasses

Client

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ CostManagementManagementClass

Returns a new instance of CostManagementManagementClass.



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 61

def initialize(options = {})
  if options.is_a?(Hash) && options.length == 0
    @options = setup_default_options
  else
    @options = options
  end

  reset!(options)

  @configurable = self
  @base_url = options[:base_url].nil? ? nil:options[:base_url]
  @options = options[:options].nil? ? nil:options[:options]

  @client_0 = Azure::CostManagement::Mgmt::V2019_04_01_preview::CostManagementClient.new(configurable.credentials, base_url, options)
  if(@client_0.respond_to?(:subscription_id))
    @client_0.subscription_id = configurable.subscription_id
  end
  add_telemetry(@client_0)
  @views = @client_0.views
  @budgets = @client_0.budgets
  @budget = @client_0.budget
  @operations = @client_0.operations

  @model_classes = ModelClasses.new
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method, *args) ⇒ Object



92
93
94
95
96
97
98
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 92

def method_missing(method, *args)
  if @client_0.respond_to?method
    @client_0.send(method, *args)
  else
    super
  end
end

Instance Attribute Details

#base_urlObject (readonly)

Returns the value of attribute base_url.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def base_url
  @base_url
end

#budgetObject (readonly)

Returns the value of attribute budget.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def budget
  @budget
end

#budgetsObject (readonly)

Returns the value of attribute budgets.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def budgets
  @budgets
end

#configurableObject (readonly)

Returns the value of attribute configurable.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def configurable
  @configurable
end

#model_classesObject (readonly)

Returns the value of attribute model_classes.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def model_classes
  @model_classes
end

#operationsObject (readonly)

Returns the value of attribute operations.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def operations
  @operations
end

#optionsObject (readonly)

Returns the value of attribute options.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def options
  @options
end

#viewsObject (readonly)

Returns the value of attribute views.



59
60
61
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 59

def views
  @views
end

Instance Method Details

#add_telemetry(client) ⇒ Object



87
88
89
90
# File 'lib/profiles/latest/modules/costmanagement_profile_module.rb', line 87

def add_telemetry(client)
  profile_information = 'Profiles/Latest/CostManagement/Mgmt'
  client.add_user_agent_information(profile_information)
end