Class: Aquatone::Domain

Inherits:
Object
  • Object
show all
Defined in:
lib/aquatone/domain.rb

Defined Under Namespace

Classes: UnresolvableDomain

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, options = {}) ⇒ Domain



8
9
10
11
# File 'lib/aquatone/domain.rb', line 8

def initialize(name, options = {})
  @name    = name
  @options = options
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



6
7
8
# File 'lib/aquatone/domain.rb', line 6

def name
  @name
end

Instance Method Details

#nameserversObject



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/aquatone/domain.rb', line 13

def nameservers
  result = []
  parts  = name.split(".")
  parts.size.times do |n|
    lookup      = parts[n..-1].join('.') + "."
    nameservers = nameserver.getresources(lookup, Resolv::DNS::Resource::IN::NS)
    if !nameservers.count.zero?
      result = nameservers.map { |ns| nameserver.getaddress(ns.name.to_s).to_s }
      break
    end
  end
  result
end