new(*arg)
public
Description
Creates a new URI::MailTo object from generic URL components
with no syntax checking.
This method is usually called from URI::parse, which checks the validity of
each component.
Show source
def initialize(*arg)
super(*arg)
@to = nil
@headers = []
@opaque = "?#{@query}" if @query && !@opaque
unless @opaque
raise InvalidComponentError,
"missing opaque part for mailto URL"
end
to, header = @opaque.split('?', 2)
unless /\A(?:[^@,;]+@[^@,;]+(?:\z|[,;]))*\z/ =~ to
raise InvalidComponentError,
"unrecognised opaque part for mailtoURL: #{@opaque}"
end
if arg[10]
self.to = to
self.headers = header
else
set_to(to)
set_headers(header)
end
end