Class: AwsReporting::Resolvers

Inherits:
Object
  • Object
show all
Defined in:
lib/aws-reporting/resolvers.rb

Instance Method Summary collapse

Constructor Details

#initializeResolvers

Returns a new instance of Resolvers.



3
4
5
# File 'lib/aws-reporting/resolvers.rb', line 3

def initialize
  @resolvers = Hash.new{|h, k| h[k] = {}}
end

Instance Method Details

#get_name(element) ⇒ Object



18
19
20
21
22
23
24
25
26
27
# File 'lib/aws-reporting/resolvers.rb', line 18

def get_name(element)
  namespace = element[:namespace]
  dimension_type = element[:dimensions].map{|d| d[:name]}.sort

  resolver = @resolvers[namespace][dimension_type]

  return nil unless resolver

  resolver.get_name(element)
end

#initObject



7
8
9
10
11
12
13
14
15
16
# File 'lib/aws-reporting/resolvers.rb', line 7

def init
  resolvers = [AwsReporting::Resolver::EC2Resolver,
               AwsReporting::Resolver::EBSResolver]
  
  resolvers.each{|resolver_class|
    resolver = resolver_class.new
    resolver.init
    @resolvers[resolver_class.namespace][resolver_class.dimension_type] = resolver
  }
end