class ActionDispatch::Http::UploadedFile

clean them with a separate maintenance task.
the object is finalized Ruby unlinks the file, so there is no need to
Uploaded files are temporary files whose lifespan is one request. When
of its interface is available directly for convenience.
The actual file is accessible via the tempfile accessor, though some
Models uploaded files.
= Action Dispatch HTTP UploadedFile

def close(unlink_now = false)

Shortcut for +tempfile.close+.
def close(unlink_now = false)
  @tempfile.close(unlink_now)
end

def eof?

Shortcut for +tempfile.eof?+.
def eof?
  @tempfile.eof?
end

def initialize(hash) # :nodoc:

:nodoc:
def initialize(hash) # :nodoc:
  @tempfile = hash[:tempfile]
  raise(ArgumentError, ":tempfile is required") unless @tempfile
  @content_type = hash[:type]
  if hash[:filename]
    @original_filename = hash[:filename].dup
    begin
      @original_filename.encode!(Encoding::UTF_8)
    rescue EncodingError
      @original_filename.force_encoding(Encoding::UTF_8)
    end
  else
    @original_filename = nil
  end
  if hash[:head]
    @headers = hash[:head].dup
    begin
      @headers.encode!(Encoding::UTF_8)
    rescue EncodingError
      @headers.force_encoding(Encoding::UTF_8)
    end
  else
    @headers = nil
  end
end

def open

Shortcut for +tempfile.open+.
def open
  @tempfile.open
end

def path

Shortcut for +tempfile.path+.
def path
  @tempfile.path
end

def read(length = nil, buffer = nil)

Shortcut for +tempfile.read+.
def read(length = nil, buffer = nil)
  @tempfile.read(length, buffer)
end

def rewind

Shortcut for +tempfile.rewind+.
def rewind
  @tempfile.rewind
end

def size

Shortcut for +tempfile.size+.
def size
  @tempfile.size
end

def to_io

def to_io
  @tempfile.to_io
end

def to_path

Shortcut for +tempfile.to_path+.
def to_path
  @tempfile.to_path
end