Method: Mechanize::DirectorySaver#initialize

Defined in:
lib/mechanize/directory_saver.rb

#initialize(uri = nil, response = nil, body_io = nil, code = nil) ⇒ DirectorySaver

Saves the body_io into the directory specified for this DirectorySaver by save_to. The filename is chosen by Mechanize::Parser#extract_filename.

Raises:



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/mechanize/directory_saver.rb', line 57

def initialize uri = nil, response = nil, body_io = nil, code = nil
  directory = self.class.directory

  raise Mechanize::Error,
    'no save directory specified - ' \
    'use Mechanize::DirectorySaver.save_to ' \
    'and register the resulting class' unless directory

  super

  @filename = CGI.unescape(@filename) if self.class.decode_filename?
  path = File.join directory, @filename

  if self.class.overwrite?
    save! path
  else
    save path
  end
end