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