1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/terremark/models/shared/addresses.rb
geemus b554eb0bb4 Revert "move vcloud models to its directory since the format is common to both"
Conflicts with work freeformz is doing, reverting in favor of those changes for now.

This reverts commit 9907d4ed59.
2010-05-17 20:57:13 -07:00

49 lines
993 B
Ruby

module Fog
module Terremark
module Shared
module Mock
def addresses(options = {})
Fog::Terremark::Shared::Addresses.new(options.merge(:connection => self))
end
end
module Real
def addresses(options = {})
Fog::Terremark::Shared::Addresses.new(options.merge(:connection => self))
end
end
class Addresses < Fog::Collection
model Fog::Terremark::Shared::Address
def all
load(connection.get_public_ips(vdc_id).body['PublicIpAddresses'])
end
def get(ip_id)
if ip_id && ip = connection.get_public_ip(ip_id).body
new(ip)
elsif !ip_id
nil
end
rescue Excon::Errors::Forbidden
nil
end
def vdc_id
@vdc_id ||= connection.default_vdc_id
end
private
def vdc_id=(new_vdc_id)
@vdc_id = new_vdc_id
end
end
end
end
end