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/dreamhost/models/dns/zone.rb

60 lines
1.2 KiB
Ruby
Raw Normal View History

require 'fog/core/model'
require 'fog/dreamhost/models/dns/records'
module Fog
module DNS
class Dreamhost
#
# Dreamhost API has no concept of 'Zone', but we
# can emulate it.
#
# http://wiki.dreamhost.com/API/Dns_commands
#
class Zone < Fog::Model
identity :id
attribute :domain, :aliases => 'name'
#
# There's no destroy API call
#
def destroy
raise NotImplementedError.new
end
#
# Return a list of records for this zone
#
# Since Dreamhost does not support zones, this is
# emulated. Iterates over all the records and discards
# the ones where Record.zone != domain (the current zone domain)
#
def records
service.records.all :zone => domain
end
#
# Return the Dreamhost nameserver list
#
def nameservers
[
"ns1.dreamhost.com",
"ns2.dreamhost.com",
"ns3.dreamhost.com",
]
end
#
# There's no zone create API call
#
def save
raise NotImplementedError.new
end
end
end
end
end