[jsword-devel] Searching

Joe Walker joseph.walker at gmail.com
Sat Sep 4 04:11:26 MST 2004


I'm working on searching issues, the current plan should eventually fix:
- lucene does not report indexing progress
- allow only one index at a time
- Implement match in lucene using wild cards
- retire ser, replacing it w/ lucene
- make index creation happen at a better time

So far I've done the following:
- Created a new interface Matcher that uses an Index to do best
matching and extracted the best match functionallity from Ser.
- Renamed the Parser interface to Searcher because it handles search
(as opposed to match)
- As a result of this the notion of SearchEngine becomes redundant -
in effect Searcher and Matcher are the new SearchEngine.
- Created an IndexManager that serializes index requests (and should
be able to index a Book at any time, like after downloading)

I discovered that we can't simply reuse the current matcher with
lucene since it relies on the ability of an index to do
getStartsWith(x) wich returns the indexed words starting with x. The
equivalent functionallity within Lucene includes performing the
search.
So I've started on LuceneMatcher and LuceneSearcher, but they are not finished.

I think we should probably make it so that when a Bible has finished
downloading we should present the user with an option:
- Downoad an index (with estimates of times?)
- Generate an index (with estimates of times?)
- Leave it until later

The patch is one of those scarey "whoah, how did it get to be that big!" ones.

Joe.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch-search.zip
Type: application/x-zip-compressed
Size: 30101 bytes
Desc: not available
Url : http://www.crosswire.org/pipermail/jsword-devel/attachments/20040904/0bfe92a4/patch-search-0001.bin


More information about the jsword-devel mailing list