rackspace models, tightening up servers, adding flavors

This commit is contained in:
Wesley Beary 2009-11-15 20:05:59 -08:00
parent e8019a18cf
commit 80f30016aa
4 changed files with 59 additions and 2 deletions

View File

@ -0,0 +1,18 @@
module Fog
module Rackspace
class Servers
class Flavor < Fog::Model
identity :id
attribute :disk
attribute :id
attribute :name
attribute :ram
end
end
end
end

View File

@ -0,0 +1,37 @@
module Fog
module Rackspace
class Servers
def flavors
Fog::Rackspace::Servers::Flavors.new(:connection => self)
end
class Flavors < Fog::Collection
model Fog::Rackspace::Servers::Flavor
def all
data = connection.list_flavors_detail.body
flavors = Fog::Rackspace::Servers::Flavors.new({
:connection => connection
})
for flavor in data['flavors']
flavors << Fog::Rackspace::Servers::Flavor.new({
:collection => flavors,
:connection => connection
}.merge!(flavor))
end
flavors
end
def get(flavor_id)
connection.get_flavor_details(flavor_id)
rescue Excon::Errors::NotFound
nil
end
end
end
end
end

View File

@ -24,8 +24,8 @@ module Fog
servers
end
def get(id)
connection.get_server_details(id)
def get(server_id)
connection.get_server_details(server_id)
rescue Excon::Errors::NotFound
nil
end

View File

@ -15,6 +15,8 @@ module Fog
end
def self.reload
load "fog/rackspace/models/servers/flavor.rb"
load "fog/rackspace/models/servers/flavors.rb"
load "fog/rackspace/models/servers/server.rb"
load "fog/rackspace/models/servers/servers.rb"