Class: AWS

Inherits:
Fog::Bin show all
Defined in:
lib/fog/bin/aws.rb

Class Method Summary collapse

Methods inherited from Fog::Bin

available?, collections

Class Method Details

.[](service) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/fog/bin/aws.rb', line 34

def [](service)
  @@connections ||= Hash.new do |hash, key|
    hash[key] = case key
    when :cdn
      Formatador.display_line("[yellow][WARN] AWS[:cdn] is deprecated, use CDN[:aws] instead[/]")
      Fog::CDN.new(:provider => 'AWS')
    when :cloud_formation
      Fog::AWS::CloudFormation.new
    when :compute
      Formatador.display_line("[yellow][WARN] AWS[:compute] is deprecated, use Compute[:aws] instead[/]")
      Fog::Compute.new(:provider => 'AWS')
    when :dns
      Formatador.display_line("[yellow][WARN] AWS[:dns] is deprecated, use DNS[:aws] instead[/]")
      Fog::DNS.new(:provider => 'AWS')
    when :elb
      Fog::AWS::ELB.new
    when :iam
      Fog::AWS::IAM.new
    when :rds
      Fog::AWS::RDS.new
    when :eu_storage
      Fog::Storage.new(:provider => 'AWS', :region => 'eu-west-1')
    when :sdb, :simpledb
      Fog::AWS::SimpleDB.new
    when :ses
      Fog::AWS::SES.new
    when :storage
      Formatador.display_line("[yellow][WARN] AWS[:storage] is deprecated, use Storage[:aws] instead[/]")
      Fog::Storage.new(:provider => 'AWS')
    else
      raise ArgumentError, "Unrecognized service: #{key.inspect}"
    end
  end
  @@connections[service]
end

.class_for(key) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/fog/bin/aws.rb', line 4

def class_for(key)
  case key
  when :cdn
    Fog::CDN::AWS
  when :cloud_formation
    Fog::AWS::CloudFormation
  when :compute
    Fog::Compute::AWS
  when :dns
    Fog::DNS::AWS
  when :elb
    Fog::AWS::ELB
  when :iam
    Fog::AWS::IAM
  when :sdb, :simpledb
    Fog::AWS::SimpleDB
  when :ses
    Fog::AWS::SES
  when :eu_storage, :storage
    Fog::Storage::AWS
  when :rds
    Fog::AWS::RDS
  else
    # @todo Replace most instances of ArgumentError with NotImplementedError
    # @todo For a list of widely supported Exceptions, see:
    # => http://www.zenspider.com/Languages/Ruby/QuickRef.html#35
    raise ArgumentError, "Unsupported #{self} service: #{key}"
  end
end

.servicesObject



70
71
72
# File 'lib/fog/bin/aws.rb', line 70

def services
  Fog::AWS.services
end