org.apache.solr.handler.admin
Class ShowFileRequestHandler

java.lang.Object
  extended by org.apache.solr.handler.RequestHandlerBase
      extended by org.apache.solr.handler.admin.ShowFileRequestHandler
All Implemented Interfaces:
SolrInfoMBean, SolrRequestHandler

public class ShowFileRequestHandler
extends RequestHandlerBase

This handler uses the RawResponseWriter to give client access to files inside ${solr.home}/conf

If you want to selectively restrict access some configuration files, you can list these files in the HIDDEN invariants. For example to hide synonyms.txt and anotherfile.txt, you would register:

 <requestHandler name="/admin/file" class="org.apache.solr.handler.admin.ShowFileRequestHandler" >
   <lst name="defaults">
    <str name="echoParams">explicit</str>
   </lst>
   <lst name="invariants">
    <str name="hidden">synonyms.txt</str> 
    <str name="hidden">anotherfile.txt</str> 
   </lst>
 </requestHandler>
 

The ShowFileRequestHandler uses the RawResponseWriter (wt=raw) to return file contents. If you need to use a different writer, you will need to change the registered invariant param for wt.

If you want to override the contentType header returned for a given file, you can set it directly using: USE_CONTENT_TYPE. For example, to get a plain text version of schema.xml, try:

   http://localhost:8983/solr/admin/file?file=schema.xml&contentType=text/plain
 

Since:
solr 1.3

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoMBean
SolrInfoMBean.Category
 
Field Summary
static String HIDDEN
           
protected  Set<String> hiddenFiles
           
static String USE_CONTENT_TYPE
           
 
Fields inherited from class org.apache.solr.handler.RequestHandlerBase
appends, defaults, httpCaching, initArgs, invariants
 
Constructor Summary
ShowFileRequestHandler()
           
 
Method Summary
 String getDescription()
          Simple one or two line description
 Set<String> getHiddenFiles()
           
 String getSource()
          CVS Source, SVN Source, etc
 void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp)
           
 void init(NamedList args)
          Initializes the SolrRequestHandler by creating three SolrParams named.
 
Methods inherited from class org.apache.solr.handler.RequestHandlerBase
getCategory, getDocs, getInitArgs, getName, getStatistics, getVersion, handleRequest
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HIDDEN

public static final String HIDDEN
See Also:
Constant Field Values

USE_CONTENT_TYPE

public static final String USE_CONTENT_TYPE
See Also:
Constant Field Values

hiddenFiles

protected Set<String> hiddenFiles
Constructor Detail

ShowFileRequestHandler

public ShowFileRequestHandler()
Method Detail

init

public void init(NamedList args)
Description copied from class: RequestHandlerBase
Initializes the SolrRequestHandler by creating three SolrParams named.
NameDescription
defaultsContains all of the named arguments contained within the list element named "defaults".
appendsContains all of the named arguments contained within the list element named "appends".
invariantsContains all of the named arguments contained within the list element named "invariants".
Example:
 <lst name="defaults">
 <str name="echoParams">explicit</str>
 <str name="qf">text^0.5 features^1.0 name^1.2 sku^1.5 id^10.0</str>
 <str name="mm">2<-1 5<-2 6<90%</str>
 <str name="bq">incubationdate_dt:[* TO NOW/DAY-1MONTH]^2.2</str>
 </lst>
 <lst name="appends">
 <str name="fq">inStock:true</str>
 </lst>

 <lst name="invariants">
 <str name="facet.field">cat</str>
 <str name="facet.field">manu_exact</str>
 <str name="facet.query">price:[* TO 500]</str>
 <str name="facet.query">price:[500 TO *]</str>
 </lst>
 

Specified by:
init in interface SolrRequestHandler
Overrides:
init in class RequestHandlerBase
Parameters:
args - The NamedList to initialize from
See Also:
RequestHandlerBase.handleRequest(org.apache.solr.request.SolrQueryRequest, org.apache.solr.response.SolrQueryResponse), RequestHandlerBase.handleRequestBody(org.apache.solr.request.SolrQueryRequest, org.apache.solr.response.SolrQueryResponse), SolrPluginUtils.setDefaults(org.apache.solr.request.SolrQueryRequest, org.apache.solr.common.params.SolrParams, org.apache.solr.common.params.SolrParams, org.apache.solr.common.params.SolrParams), See also the example solrconfig.xml located in the Solr codebase (example/solr/conf).

getHiddenFiles

public Set<String> getHiddenFiles()

handleRequestBody

public void handleRequestBody(SolrQueryRequest req,
                              SolrQueryResponse rsp)
                       throws IOException,
                              org.apache.zookeeper.KeeperException,
                              InterruptedException
Specified by:
handleRequestBody in class RequestHandlerBase
Throws:
IOException
org.apache.zookeeper.KeeperException
InterruptedException

getDescription

public String getDescription()
Description copied from interface: SolrInfoMBean
Simple one or two line description

Specified by:
getDescription in interface SolrInfoMBean
Specified by:
getDescription in class RequestHandlerBase

getSource

public String getSource()
Description copied from interface: SolrInfoMBean
CVS Source, SVN Source, etc

Specified by:
getSource in interface SolrInfoMBean
Specified by:
getSource in class RequestHandlerBase


Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.