Author: yonik
Date: Wed Jul 19 15:00:28 2006
New Revision: 423629

URL: http://svn.apache.org/viewvc?rev=423629&view=rev
Log:
make json response writers available by default

Modified:
    incubator/solr/trunk/example/solr/conf/solrconfig.xml
    incubator/solr/trunk/src/java/org/apache/solr/core/SolrCore.java

Modified: incubator/solr/trunk/example/solr/conf/solrconfig.xml
URL: 
http://svn.apache.org/viewvc/incubator/solr/trunk/example/solr/conf/solrconfig.xml?rev=423629&r1=423628&r2=423629&view=diff
==============================================================================
--- incubator/solr/trunk/example/solr/conf/solrconfig.xml (original)
+++ incubator/solr/trunk/example/solr/conf/solrconfig.xml Wed Jul 19 15:00:28 
2006
@@ -223,14 +223,16 @@
     writer.
     The "standard" writer is the default and will be used if 'wt' is not 
specified 
     in the request. XMLResponseWriter will be used if nothing specified here.
-    
-    <queryResponseWriter name="standard" 
class="org.apache.solr.request.XMLResponseWriter"/>
-    <queryResponseWriter name="custom" class="com.example.MyResponseWriter"/>
-  -->
+    The json, python, and ruby writers are also available by default.
 
+    <queryResponseWriter name="standard" 
class="org.apache.solr.request.XMLResponseWriter"/>
     <queryResponseWriter name="json" 
class="org.apache.solr.request.JSONResponseWriter"/>
     <queryResponseWriter name="python" 
class="org.apache.solr.request.PythonResponseWriter"/>
     <queryResponseWriter name="ruby" 
class="org.apache.solr.request.RubyResponseWriter"/>
+
+    <queryResponseWriter name="custom" class="com.example.MyResponseWriter"/>
+  -->
+
 
     
   <!-- config for the admin interface --> 

Modified: incubator/solr/trunk/src/java/org/apache/solr/core/SolrCore.java
URL: 
http://svn.apache.org/viewvc/incubator/solr/trunk/src/java/org/apache/solr/core/SolrCore.java?rev=423629&r1=423628&r2=423629&view=diff
==============================================================================
--- incubator/solr/trunk/src/java/org/apache/solr/core/SolrCore.java (original)
+++ incubator/solr/trunk/src/java/org/apache/solr/core/SolrCore.java Wed Jul 19 
15:00:28 2006
@@ -16,17 +16,11 @@
 
 package org.apache.solr.core;
 
-import java.util.Map;
-import java.util.TreeMap;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.search.BooleanQuery;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
-import org.apache.solr.request.QueryResponseWriter;
-import org.apache.solr.request.SolrRequestHandler;
-import org.apache.solr.request.SolrQueryRequest;
-import org.apache.solr.request.SolrQueryResponse;
-import org.apache.solr.request.XMLResponseWriter;
+import org.apache.solr.request.*;
 import org.apache.solr.schema.IndexSchema;
 import org.apache.solr.schema.SchemaField;
 import org.apache.solr.search.SolrIndexSearcher;
@@ -47,8 +41,7 @@
 import java.io.IOException;
 import java.io.Reader;
 import java.io.Writer;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -956,8 +949,7 @@
   
   
   private QueryResponseWriter defaultResponseWriter;
-  private Map<String, QueryResponseWriter> responseWriters
-    = new TreeMap<String, QueryResponseWriter>();
+  private final Map<String, QueryResponseWriter> responseWriters = new 
HashMap<String, QueryResponseWriter>();
   
   /** Configure the query response writers. There will always be a default 
writer; additional 
    * writers may also be configured. */
@@ -988,6 +980,18 @@
     if (defaultResponseWriter == null) {
       defaultResponseWriter = new XMLResponseWriter();
     }
+
+    // make JSON response writers available by default
+    if (responseWriters.get("json")==null) {
+      responseWriters.put("json", new JSONResponseWriter());
+    }
+    if (responseWriters.get("python")==null) {
+      responseWriters.put("python", new PythonResponseWriter());
+    }
+    if (responseWriters.get("ruby")==null) {
+      responseWriters.put("ruby", new RubyResponseWriter());
+    }
+
   }
   
   /** Finds a writer by name, or returns the default writer if not found. */


Reply via email to