Class: Daedal::Queries::DisMaxQuery

Inherits:
BaseQuery
  • Object
show all
Defined in:
lib/daedal/queries/dis_max_query.rb

Instance Method Summary collapse

Methods inherited from BaseQuery

#to_json

Instance Method Details

#add_query(q) ⇒ Object



23
24
25
26
# File 'lib/daedal/queries/dis_max_query.rb', line 23

def add_query(q)
  verify_query(q)
  queries << q
end

#to_hashObject



28
29
30
31
32
33
34
# File 'lib/daedal/queries/dis_max_query.rb', line 28

def to_hash
  result = {dis_max: {queries: queries.map {|q| q.to_hash }}}
  options = {tie_breaker: tie_breaker, boost: boost}
  result[:dis_max].merge!(options.select { |k,v| !v.nil? })
  
  result
end

#verify_query(q) ⇒ Object



17
18
19
20
21
# File 'lib/daedal/queries/dis_max_query.rb', line 17

def verify_query(q)
  unless q.is_a? Daedal::Queries::BaseQuery
    raise "Must give a valid query"
  end
end