class Searchr::SolrResult

Public Instance Methods

documents() click to toggle source
# File lib/searchr/solr_result.rb, line 3
def documents
  @documents ||= body['response']['docs']
end
end_row() click to toggle source
# File lib/searchr/solr_result.rb, line 19
def end_row
  start_row + num_documents_received - 1
end
explain() click to toggle source
# File lib/searchr/solr_result.rb, line 35
def explain
  body['debug']['explain']
end
explanation_hash() click to toggle source
# File lib/searchr/solr_result.rb, line 45
def explanation_hash
  unless @explanation_hash
    @explanation_hash = extract_explanations
    @explanation_hash.each do |key, rows|
      parser = ExplanationParser.new rows
      rows[0] = parser.explanation
    end
  end
  @explanation_hash
end
explanations() click to toggle source

calculated fields

# File lib/searchr/solr_result.rb, line 41
def explanations
  explanation_hash
end
num_documents_received() click to toggle source
# File lib/searchr/solr_result.rb, line 7
def num_documents_received
  documents.size
end
num_documents_requested() click to toggle source
# File lib/searchr/solr_result.rb, line 11
def num_documents_requested
  query.num_rows
end
num_matches() click to toggle source
# File lib/searchr/solr_result.rb, line 23
def num_matches
  @num_found ||= body['response']['numFound']
end
parameters() click to toggle source
# File lib/searchr/solr_result.rb, line 31
def parameters
  @parameters ||= body['responseHeader']['params']
end
start_row() click to toggle source
# File lib/searchr/solr_result.rb, line 15
def start_row
  @start_row ||= body['response']['start']
end
status() click to toggle source
# File lib/searchr/solr_result.rb, line 27
def status
  status ||= body['responseHeader']['status']
end

Protected Instance Methods

extract_explanations() click to toggle source
# File lib/searchr/solr_result.rb, line 58
def extract_explanations
  matches = {}
  explain.each do |key, val|
    matches[key] = val.split("\n")
  end
  matches
end