Author: ryan
Date: Tue Dec  4 11:40:29 2007
New Revision: 601055

URL: http://svn.apache.org/viewvc?rev=601055&view=rev
Log:
SOLR-414 -- convert SpellCheckerRequestHandler to a SolrCoreAware handler 
rather then using SolrCore.getSolrCore()

Modified:
    
lucene/solr/trunk/src/java/org/apache/solr/handler/SpellCheckerRequestHandler.java

Modified: 
lucene/solr/trunk/src/java/org/apache/solr/handler/SpellCheckerRequestHandler.java
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/SpellCheckerRequestHandler.java?rev=601055&r1=601054&r2=601055&view=diff
==============================================================================
--- 
lucene/solr/trunk/src/java/org/apache/solr/handler/SpellCheckerRequestHandler.java
 (original)
+++ 
lucene/solr/trunk/src/java/org/apache/solr/handler/SpellCheckerRequestHandler.java
 Tue Dec  4 11:40:29 2007
@@ -21,7 +21,6 @@
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.spell.Dictionary;
-import org.apache.lucene.search.spell.LuceneDictionary;
 import org.apache.lucene.search.spell.SpellChecker;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
@@ -34,6 +33,7 @@
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.util.HighFrequencyDictionary;
+import org.apache.solr.util.plugin.SolrCoreAware;
 
 import java.io.File;
 import java.io.IOException;
@@ -183,7 +183,7 @@
  * @see <a href="http://wiki.apache.org/jakarta-lucene/SpellChecker";>The 
Lucene Spellchecker documentation</a>
  *
  */
-public class SpellCheckerRequestHandler extends RequestHandlerBase {
+public class SpellCheckerRequestHandler extends RequestHandlerBase implements 
SolrCoreAware {
 
   private static Logger log = 
Logger.getLogger(SpellCheckerRequestHandler.class.getName());
   
@@ -226,17 +226,23 @@
   protected static final boolean DEFAULT_EXTENDED_RESULTS = false;
   protected static final float DEFAULT_DICTIONARY_THRESHOLD = 0.0f;
 
+  protected SolrParams args = null;
+  
+  @Override
   public void init(NamedList args) {
     super.init(args);
-    SolrParams p = SolrParams.toSolrParams(args);
-    termSourceField = p.get(SOURCE_FIELD, p.get("termSourceField"));
+    this.args = SolrParams.toSolrParams(args);
+  }
 
+  public void inform(SolrCore core) 
+  {
+    termSourceField = args.get(SOURCE_FIELD, args.get("termSourceField"));
     try {
-      String dir = p.get(INDEX_DIR, p.get("spellcheckerIndexDir"));
+      String dir = args.get(INDEX_DIR, args.get("spellcheckerIndexDir"));
       if (null != dir) {
         File f = new File(dir);
         if ( ! f.isAbsolute() ) {
-          f = new File(SolrCore.getSolrCore().getDataDir(), dir);
+          f = new File(core.getDataDir(), dir);
         }
         dirDescription = f.getAbsolutePath();
         log.info("using spell directory: " + dirDescription);
@@ -254,6 +260,7 @@
    * Processes the following query string parameters: q, multiWords, cmd 
rebuild,
    * cmd reopen, accuracy, suggestionCount, restrictToField, and 
onlyMorePopular.
    */
+  @Override
   public void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp)
     throws Exception {
     SolrParams p = req.getParams();


Reply via email to