lib/net/dns/rr/mr.rb in net-dns-0.6.1 vs lib/net/dns/rr/mr.rb in net-dns-0.7.0
- old
+ new
@@ -1,62 +1,79 @@
-module Net
+module Net # :nodoc:
module DNS
class RR
-
- #------------------------------------------------------------
- # RR type MR
- #------------------------------------------------------------
+
+ #
+ # = Mail Rename Record (MR)
+ #
+ # Class for DNS MR resource records.
+ #
class MR < RR
- attr_reader :newname
- private
-
- def check_name(name)
- unless name =~ /(\w\.?)+\s*$/
- raise ArgumentError, "Name not valid: #{name.inspect}"
- end
- name
+ # Gets the newname value.
+ #
+ # Returns a String.
+ def newname
+ @newname
end
- def build_pack
- @newname_pack = pack_name(@newname)
- @rdlength = @newname_pack.size
+ # Gets the standardized value for this record,
+ # represented by the value of <tt>newname</tt>.
+ #
+ # Returns a String.
+ def value
+ newname.to_s
end
- def get_data
- @newname_pack
- end
- def get_inspect
- "#@newname"
- end
-
- def subclass_new_from_hash(args)
- if args.has_key? :newname
- @newname = check_name args[:newname]
- else
- raise ArgumentError, ":newname field is mandatory but missing"
+ private
+
+ def subclass_new_from_hash(options)
+ if options.has_key?(:newname)
+ @newname = check_name(options[:newname])
+ else
+ raise ArgumentError, ":newname field is mandatory"
+ end
end
- end
- def subclass_new_from_string(str)
- @newname = check_name(str)
- end
+ def subclass_new_from_string(str)
+ @newname = check_name(str)
+ end
- def subclass_new_from_array(data,offset)
- @newname = dn_expand(data,offset)
- return offset
- end
-
- private
-
+ def subclass_new_from_binary(data, offset)
+ @newname = dn_expand(data,offset)
+ offset
+ end
+
+
def set_type
@type = Net::DNS::RR::Types.new("MR")
end
-
- end # class MR
- end # class RR
- end # module DNS
-end # module Net
+ def get_inspect
+ value
+ end
+
+ def check_name(input)
+ name = input.to_s
+ unless name =~ /(\w\.?)+\s*$/
+ raise ArgumentError, "Invalid Domain Name `#{name}'"
+ end
+ name
+ end
+
+ def build_pack
+ @newname_pack = pack_name(@newname)
+ @rdlength = @newname_pack.size
+ end
+
+ def get_data
+ @newname_pack
+ end
+
+ end
+
+ end
+ end
+end