class AwsInstanceList::List

Attributes

regions[RW]

Public Class Methods

new() click to toggle source
# File lib/aws_instance_list/list.rb, line 7
def initialize
  @regions=AwsInstanceList::Region.list
  @list={}
end

Public Instance Methods

cache_instance_list(region: ec=AwsInstanceList::ElastiCache.new region: region) click to toggle source
# File lib/aws_instance_list/list.rb, line 45
def cache_instance_list region:
  ec=AwsInstanceList::ElastiCache.new region: region
  ec.cache_list
end
cache_list() click to toggle source
# File lib/aws_instance_list/list.rb, line 41
def cache_list
  list call_to: :cache_instance_list
end
db_list() click to toggle source
# File lib/aws_instance_list/list.rb, line 12
def db_list
  list
end
elasticsearch_list() click to toggle source
# File lib/aws_instance_list/list.rb, line 50
def elasticsearch_list
  list call_to: :elasticsearch_service_list
end
elasticsearch_service_list(region: es=AwsInstanceList::ElasticsearchService.new region: region) click to toggle source
# File lib/aws_instance_list/list.rb, line 54
def elasticsearch_service_list region:
  es=AwsInstanceList::ElasticsearchService.new region: region
  es.domain_list
end
list(call_to: :rds_db_list) click to toggle source
# File lib/aws_instance_list/list.rb, line 21
def list call_to: :rds_db_list

  threads = []

  regions.each do |region|

    threads << Thread.new do
      @list[region]=self.send( call_to, region: region)
    end

  end

  loop do
    break if threads.count { |th| th.alive? } == 0
  end

  @list.values.flatten(1)

end
rds_db_list(region: rds=AwsInstanceList::RDS.new region: region) click to toggle source
# File lib/aws_instance_list/list.rb, line 16
def rds_db_list region:
  rds=AwsInstanceList::RDS.new region: region
  rds.db_list
end