class Grape::Validations::Types::File

Virtus::Attribute implementation for parameters that are multipart file objects. Actual handling of these objects is provided by Rack::Request; this class is here only to assert that rack's handling has succeeded, and to prevent virtus from interfering.

Public Instance Methods

coerce(input) click to toggle source
# File lib/grape/validations/types/file.rb, line 11
def coerce(input)
  # Processing of multipart file objects
  # is already taken care of by Rack::Request.
  # Nothing to do here.
  input
end
value_coerced?(value) click to toggle source
# File lib/grape/validations/types/file.rb, line 18
def value_coerced?(value)
  # Rack::Request creates a Hash with filename,
  # content type and an IO object. Do a bit of basic
  # duck-typing.
  value.is_a?(::Hash) && value.key?(:tempfile)
end