source: trunk/indexers/lucene-gs/src/org/greenstone/LuceneWrapper/GS2LuceneQuery.java@ 12255

Last change on this file since 12255 was 12254, checked in by mdewsnip, 18 years ago

Made this compatible with Lucene 1.9 and newer.

  • Property svn:keywords set to Author Date Id Revision
File size: 2.1 KB
Line 
1/*
2 * search.java
3 *
4 * Created on 25 February 2003, 02:25
5 */
6
7
8/**
9 *
10 * @author [email protected]
11 * @author [email protected]
12 * @version
13 */
14
15import java.io.IOException;
16import java.io.BufferedReader;
17import java.io.InputStreamReader;
18
19import org.apache.lucene.analysis.Analyzer;
20import org.apache.lucene.analysis.standard.StandardAnalyzer;
21import org.apache.lucene.document.Document;
22import org.apache.lucene.search.Searcher;
23import org.apache.lucene.search.IndexSearcher;
24import org.apache.lucene.search.Query;
25import org.apache.lucene.search.Hits;
26import org.apache.lucene.queryParser.QueryParser;
27import org.apache.lucene.search.TermQuery;
28import org.apache.lucene.index.Term;
29
30public class GS2LuceneQuery {
31
32 public static void main (String args[]) {
33
34 if (args.length == 0) {
35 System.out.println("Usage: GS2LuceneQuery <index directory>");
36 return;
37 }
38 try {
39 Searcher searcher = new IndexSearcher(args[0]);
40 Analyzer analyzer = new StandardAnalyzer();
41
42 BufferedReader in = new BufferedReader(new InputStreamReader(System.in, "UTF-8"));
43 while (true) {
44 String line = in.readLine();
45
46 if (line == null) {
47 break;
48 }
49
50 if (line.length() == -1)
51 break;
52
53
54 // Term term = new Term("TX",line);
55 // Query query = new TermQuery(term);
56
57 System.err.println("**** query = " + line);
58
59 QueryParser query_parser = new QueryParser("TX", analyzer);
60 Query query = query_parser.parse(line);
61
62 Hits hits = searcher.search(query);
63 System.out.println("<ResultSet>");
64 System.out.println(" <QueryString>" + query.toString("TX")+"</QueryString>");
65 System.out.println(" <MatchingDocsInfo num=\""+hits.length()+"\"/>");
66
67 for (int i=0; i< hits.length(); i++) {
68 Document doc = hits.doc(i);
69 String node_id= doc.get("nodeID");
70 System.out.println(" <Match id=\""+node_id+"\"/>");
71 }
72 System.out.println("</ResultSet>");
73
74 }
75
76 searcher.close();
77 }
78 catch (Exception e) {
79 System.out.println(" caught a " + e.getClass() +
80 "\n with message: " + e.getMessage());
81 }
82 }
83}
Note: See TracBrowser for help on using the repository browser.