Blame view
lib/mirimiri/index.rb
1.48 KB
aa386f553 changes in query,... |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#!/usr/bin/env ruby #-- # This file is a part of the mirimiri library # # Copyright (C) 2010-2012 Romain Deveaud <romain.deveaud@gmail.com> # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. #++ class Index end module Indri |
e0e33fca0 new way of queryi... |
26 |
class IndriIndex < Index |
aa386f553 changes in query,... |
27 |
|
e0e33fca0 new way of queryi... |
28 29 30 31 32 33 |
def initialize path raise ArgumentError, 'Index path does not exist' unless File.directory? path @path = path end def runquery indriquery |
aa386f553 changes in query,... |
34 35 |
raise ArgumentError, 'Argument is not an IndriQuery' unless indriquery.is_a? Indri::IndriQuery |
e0e33fca0 new way of queryi... |
36 |
query = "IndriRunQuery -query=\"#{indriquery.query}\" -index=#{@path}" |
aa386f553 changes in query,... |
37 38 39 40 |
query += " -count=#{indriquery.count}" unless indriquery.count.nil? query += " -rule=method:#{indriquery.sm_method},#{indriquery.sm_param}:#{indriquery.sm_value}" unless indriquery.sm_method.nil? query += " #{indriquery.args}" unless indriquery.args.nil? |
e0e33fca0 new way of queryi... |
41 42 43 44 |
res = `#{query}` res |
aa386f553 changes in query,... |
45 46 47 |
end end end |