class Searchr::Query
Attributes
fields_to_query[W]
query[W]
Public Instance Methods
base_query_url()
click to toggle source
# File lib/searchr/query.rb, line 32 def base_query_url @base_query_url ||= default_base_query_url end
debug_query?()
click to toggle source
# File lib/searchr/query.rb, line 81 def debug_query? @do_debug_query ||= default_debug_query? end
end_row()
click to toggle source
# File lib/searchr/query.rb, line 73 def end_row start_row + num_rows - 1 end
fields_to_query()
click to toggle source
# File lib/searchr/query.rb, line 36 def fields_to_query @fields_to_query ||= default_fields_to_query end
fields_to_return()
click to toggle source
# File lib/searchr/query.rb, line 40 def fields_to_return @fields_to_return ||= default_fields_to_return @fields_to_return.split(/\W+/) end
fields_to_return=(array_or_string)
click to toggle source
# File lib/searchr/query.rb, line 45 def fields_to_return=(array_or_string) @fields_to_return = if array_or_string.class==String array_or_string else array_or_string.join(' ') end end
http_response()
click to toggle source
# File lib/searchr/query.rb, line 20 def http_response Net::HTTP.get_response url end
indent?()
click to toggle source
# File lib/searchr/query.rb, line 77 def indent? @do_indent ||= default_indent? end
num_rows()
click to toggle source
# File lib/searchr/query.rb, line 63 def num_rows @num_rows ||= default_num_rows end
num_rows=(num)
click to toggle source
# File lib/searchr/query.rb, line 67 def num_rows=(num) num_as_int = Integer(num) raise "num_rows must be a positive integer (#{num})" if num_as_int < 0 @num_rows = num_as_int end
query()
click to toggle source
# File lib/searchr/query.rb, line 24 def query @query ||= default_query end
query_parameters()
click to toggle source
# File lib/searchr/query.rb, line 16 def query_parameters subclass_responsibility end
query_type()
click to toggle source
# File lib/searchr/query.rb, line 28 def query_type @query_type ||= default_query_type end
result_class()
click to toggle source
There are more subclass responsibility methods in the protected section.
# File lib/searchr/query.rb, line 12 def result_class subclass_responsibility end
return_type()
click to toggle source
# File lib/searchr/query.rb, line 85 def return_type @return_type ||= default_return_type end
search()
click to toggle source
# File lib/searchr/query.rb, line 7 def search result_class.new self, http_response end
start_row()
click to toggle source
# File lib/searchr/query.rb, line 53 def start_row @start_row ||= 1 end
start_row=(num)
click to toggle source
# File lib/searchr/query.rb, line 57 def start_row=(num) num_as_int = Integer(num) raise "start_row must be a positive integer (#{num})" if num_as_int < 1 @start_row = num_as_int end
url()
click to toggle source
# File lib/searchr/query.rb, line 89 def url uri = URI(base_query_url) query_uri = Addressable::URI.new query_uri.query_values = query_parameters uri.query = query_uri.query uri end
Protected Instance Methods
default_debug_query?()
click to toggle source
# File lib/searchr/query.rb, line 126 def default_debug_query? # true required to retrieve result weights true end
default_fields_to_query()
click to toggle source
# File lib/searchr/query.rb, line 109 def default_fields_to_query subclass_responsibility end
default_fields_to_return()
click to toggle source
# File lib/searchr/query.rb, line 113 def default_fields_to_return subclass_responsibility end
default_indent?()
click to toggle source
# File lib/searchr/query.rb, line 121 def default_indent? # purely cosmetic to make it easier to read. true end
default_num_rows()
click to toggle source
# File lib/searchr/query.rb, line 117 def default_num_rows 10 end
default_query()
click to toggle source
# File lib/searchr/query.rb, line 101 def default_query subclass_responsibility end
default_query_type()
click to toggle source
# File lib/searchr/query.rb, line 105 def default_query_type subclass_responsibility end
default_return_type()
click to toggle source
# File lib/searchr/query.rb, line 131 def default_return_type 'json' end