lib/net/dns/rr/ns.rb in net-dns-0.8.0 vs lib/net/dns/rr/ns.rb in net-dns-0.9.0

- old
+ new

@@ -1,78 +1,70 @@ module Net # :nodoc: module DNS class RR - # # = Name Server Record (NS) # # Class for DNS NS resource records. # class NS < RR - # Gets the name server value. # # Returns a String. - def nsdname - @nsdname - end + attr_reader :nsdname # Gets the standardized value for this record, # represented by the value of <tt>nsdname</tt>. # # Returns a String. def value nsdname.to_s end - private - def subclass_new_from_hash(options) - if options.has_key?(:nsdname) - @nsdname = check_name(options[:nsdname]) - else - raise ArgumentError, ":nsdname field is mandatory" - end + def subclass_new_from_hash(options) + if options.key?(:nsdname) + @nsdname = check_name(options[:nsdname]) + else + raise ArgumentError, ":nsdname field is mandatory" end + end - def subclass_new_from_string(str) - @nsdname = check_name(str) - end + def subclass_new_from_string(str) + @nsdname = check_name(str) + end - def subclass_new_from_binary(data, offset) - @nsdname, offset = dn_expand(data, offset) - offset - end + def subclass_new_from_binary(data, offset) + @nsdname, offset = dn_expand(data, offset) + offset + end + def set_type + @type = Net::DNS::RR::Types.new("NS") + end - def set_type - @type = Net::DNS::RR::Types.new("NS") - end + def get_inspect + value + end - def get_inspect - value + def check_name(input) + name = input.to_s + unless name =~ /(\w\.?)+\s*$/ && name =~ /[a-zA-Z]/ + raise ArgumentError, "Invalid Name Server `#{name}'" end + name + end - def check_name(input) - name = input.to_s - unless name =~ /(\w\.?)+\s*$/ and name =~ /[a-zA-Z]/ - raise ArgumentError, "Invalid Name Server `#{name}'" - end - name - end + def build_pack + @nsdname_pack = pack_name(@nsdname) + @rdlength = @nsdname_pack.size + end - def build_pack - @nsdname_pack = pack_name(@nsdname) - @rdlength = @nsdname_pack.size - end - - def get_data - @nsdname_pack - end - + def get_data + @nsdname_pack + end end - end end end