fog--fog/lib/fog/dnsimple/models/dns/records.rb

35 lines
756 B
Ruby
Raw Normal View History

2011-02-25 01:14:50 +00:00
require 'fog/core/collection'
require 'fog/dnsimple/models/dns/record'
2011-02-25 01:14:50 +00:00
module Fog
module DNS
class DNSimple
2011-02-25 01:14:50 +00:00
class Records < Fog::Collection
attribute :zone
model Fog::DNS::DNSimple::Record
2011-02-25 01:14:50 +00:00
def all
requires :zone
clear
data = service.list_records(zone.id).body.map {|record| record['record']}
load(data)
2011-02-25 01:14:50 +00:00
end
def get(record_id)
requires :zone
data = service.get_record(zone.id, record_id).body["record"]
new(data)
rescue Excon::Errors::NotFound
2011-02-25 01:14:50 +00:00
nil
end
def new(attributes = {})
requires :zone
super({ :zone => zone }.merge!(attributes))
end
end
end
end
end