Class: StraightJacket::IntegerParameter

Inherits:
Object
  • Object
show all
Defined in:
lib/straight_jacket/integer_parameter.rb

Instance Method Summary collapse

Constructor Details

#initialize(param, required = false) ⇒ IntegerParameter

Returns a new instance of IntegerParameter.



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/straight_jacket/integer_parameter.rb', line 7

def initialize(param, required = false)
  @param = param
  case
  when !!required == required # is a boolean
    @required = lambda { |request| required }
  when required.is_a?(Proc)
    @required = required
  else
    @required = lambda { |request| false }
  end
end

Instance Method Details

#matches?(request) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
23
24
25
# File 'lib/straight_jacket/integer_parameter.rb', line 19

def matches?(request)
  if value = request.parameters[@param].presence
    Validator.int?(value)
  else
    !required.call(request)
  end
end