def get(fqdn = nil, record_id=nil)
if record_id && fqdn
raw_rr = @dynect.get("#{resource_path}/#{fqdn}/#{record_id}")
DynectRest::Resource.new(dynect,
raw_rr["record_type"],
raw_rr["zone"],
raw_rr["fqdn"],
raw_rr["record_id"],
raw_rr["ttl"],
raw_rr["rdata"])
elsif fqdn
results = @dynect.get("#{resource_path}/#{fqdn}")
raw_rr_list = results.map do |record|
if (record =~ /^#{resource_path(:full)}\/#{Regexp.escape(fqdn)}\/(\d+)$/)
self.get(fqdn, $1)
else
record
end
end
case raw_rr_list.length
when 0
raise DynectRest::Exceptions::RequestFailed, "Cannot find #{record_type} record for #{fqdn}"
when 1
raw_rr_list[0]
else
raw_rr_list
end
else
@dynect.get(resource_path)
end
end