|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.crosswire.jsword.book.search.lucene.LuceneIndex
public class LuceneIndex
Implement the SearchEngine using Lucene as the search engine.
Distribution Licence: JSword is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2 as published by the Free Software Foundation. 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. The License is available on the internet here, or by writing to: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA The copyright to this program is held by it's authors. |
Licence
Field Summary | |
---|---|
private boolean |
active
Are we active |
protected Book |
book
The Book that we are indexing |
private static Object |
CREATING
A synchronization lock point to prevent us from doing 2 index runs at a time. |
protected static String |
FIELD_BODY
The Lucene field for the verse contents |
protected static String |
FIELD_NAME
The Lucene field for the verse name |
protected static String |
FIELD_STRONG
The Lucene field for the strong numbers |
private static Logger |
log
The log stream |
private String |
path
The location of this index |
protected org.apache.lucene.search.Searcher |
searcher
The Lucene search engine |
Constructor Summary | |
---|---|
LuceneIndex(Book book,
URL storage)
Read an existing index and use it. |
|
LuceneIndex(Book book,
URL storage,
boolean create)
Generate an index to use, telling the job about progress as you go. |
Method Summary | |
---|---|
void |
activate(Lock lock)
Called to indicate that the Book should initialize itself, and consume whatever system resources it needs to be able to respond to other queries. |
protected void |
checkActive()
Helper method so we can quickly activate ourselves on access |
void |
deactivate(Lock lock)
Called to indicate that the Book should release whatever system resources it can to make way for other uses. |
Key |
findWord(String search)
For a given word find a list of references to it. |
private void |
generateSearchIndexImpl(Job job,
List errors,
org.apache.lucene.index.IndexWriter writer,
Key key)
Dig down into a Key indexing as we go. |
Key |
getKey(String name)
An index must be able to create KeyLists for users in a similar way to the Book that it is indexing. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final Object CREATING
private boolean active
private static final Logger log
protected static final String FIELD_NAME
protected static final String FIELD_BODY
protected static final String FIELD_STRONG
protected Book book
private String path
protected org.apache.lucene.search.Searcher searcher
Constructor Detail |
---|
public LuceneIndex(Book book, URL storage) throws BookException
BookException
- If we fail to read the index filespublic LuceneIndex(Book book, URL storage, boolean create) throws BookException
BookException
- If we fail to read the index filesMethod Detail |
---|
public Key findWord(String search) throws BookException
Index
word
being searched for is null then an empty Key
MUST be returned. Users of this index may use this functionality
to get empty KeyLists which they then use to aggregate other searches
done on this index.
findWord
in interface Index
search
- The text to search for
BookException
public Key getKey(String name) throws NoSuchKeyException
Index
getKey
in interface Index
name
- The string to convert to a Key
NoSuchKeyException
- If the string can not be turned into a KeyKeyFactory.getKey(String)
public final void activate(Lock lock)
Activatable
activate
in interface Activatable
lock
- An attempt to ensure that only the Activator calls this methodpublic final void deactivate(Lock lock)
Activatable
deactivate
in interface Activatable
lock
- An attempt to ensure that only the Activator calls this methodprotected final void checkActive()
private void generateSearchIndexImpl(Job job, List errors, org.apache.lucene.index.IndexWriter writer, Key key) throws BookException, IOException
BookException
IOException
|
Copyright ? 2003-2004 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |