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/rackspace/models/dns/records.rb

38 lines
853 B
Ruby

require 'fog/core/collection'
require 'fog/rackspace/models/dns/record'
module Fog
module DNS
class Rackspace
class Records < Fog::Collection
attribute :zone
model Fog::DNS::Rackspace::Record
def all
requires :zone
data = connection.list_records(zone.identity)
load(data.body['records'])
end
def get(record_id)
requires :zone
data = connection.list_record_details(zone.identity, record_id).body
new(data)
#nil or empty string will trigger an argument error
rescue ArgumentError
nil
rescue Fog::Rackspace::Errors::NotFound
nil
end
def new(attributes = {})
requires :zone
super({ :zone => zone }.merge!(attributes))
end
end
end
end
end