Files
old-pruning-excersise/lib/http/query.rb
2018-08-13 11:25:01 +02:00

19 lines
515 B
Ruby

module Pruning
module HTTP
class Query < Struct.new(:name, :indicator_ids)
def initialize(params = {})
values = members.map do |member|
value = params.fetch(member, nil)
next if value.nil?
case member
when :indicator_ids then value.map(&:to_i) # break on purpose if indicator_ids is not an array
when :name then value.to_s.gsub(/[^A-Za-z]/,'')
else value
end
end
super(*values)
end
end
end
end