class Deas::Runner::NormalizedParams

Attributes

value[R]

Public Class Methods

new(value) click to toggle source
# File lib/deas/runner.rb, line 204
def initialize(value)
  @value = if value.is_a?(::Array)
    value.map{ |i| self.class.new(i).value }
  elsif self.hash_type?(value)
    value.inject({}){ |h, (k, v)| h[k.to_s] = self.class.new(v).value; h }
  elsif self.file_type?(value)
    value
  else
    value.to_s
  end
end

Public Instance Methods

file_type?(value) click to toggle source
# File lib/deas/runner.rb, line 216
def file_type?(value)
  raise NotImplementedError
end
hash_type?(value) click to toggle source
# File lib/deas/runner.rb, line 220
def hash_type?(value)
  # this supports older Rack versions (that don't have
  # Utils#params_hash_type?)
  ( Rack::Utils.respond_to?('params_hash_type?') &&
    Rack::Utils.params_hash_type?(value)
  ) || value.kind_of?(::Hash)
end