public class ShowFileRequestHandler extends RequestHandlerBase
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> <str name="hidden">*</str> </lst> </requestHandler>At present, there is only explicit file names (including path) or the glob '*' are supported. Variants like '*.xml' are NOT supported.ere
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
SolrInfoMBean.Category
Modifier and Type | Field and Description |
---|---|
static String |
HIDDEN |
protected Set<String> |
hiddenFiles |
protected static org.slf4j.Logger |
log |
static String |
USE_CONTENT_TYPE |
appends, defaults, httpCaching, initArgs, invariants
Constructor and Description |
---|
ShowFileRequestHandler() |
Modifier and Type | Method and Description |
---|---|
static File |
getAdminFileFromFileSystem(SolrQueryRequest req,
SolrQueryResponse rsp,
Set<String> hiddenFiles) |
static String |
getAdminFileFromZooKeeper(SolrQueryRequest req,
SolrQueryResponse rsp,
SolrZkClient zkClient,
Set<String> hiddenFiles) |
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. |
static Set<String> |
initHidden(SolrParams invariants) |
static boolean |
isHiddenFile(SolrQueryRequest req,
SolrQueryResponse rsp,
String fnameIn,
boolean reportError,
Set<String> hiddenFiles) |
getCategory, getDocs, getInitArgs, getName, getStatistics, getVersion, handleRequest
public static final String HIDDEN
public static final String USE_CONTENT_TYPE
protected static final org.slf4j.Logger log
public void init(NamedList args)
RequestHandlerBase
SolrRequestHandler
by creating three SolrParams
named.
Name | Description |
---|---|
defaults | Contains all of the named arguments contained within the list element named "defaults". |
appends | Contains all of the named arguments contained within the list element named "appends". |
invariants | Contains all of the named arguments contained within the list element named "invariants". |
<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>
init
in interface SolrRequestHandler
init
in class RequestHandlerBase
args
- The NamedList
to initialize fromRequestHandlerBase.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).
public static Set<String> initHidden(SolrParams invariants)
public void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp) throws InterruptedException, org.apache.zookeeper.KeeperException, IOException
handleRequestBody
in class RequestHandlerBase
InterruptedException
org.apache.zookeeper.KeeperException
IOException
public static boolean isHiddenFile(SolrQueryRequest req, SolrQueryResponse rsp, String fnameIn, boolean reportError, Set<String> hiddenFiles)
public static String getAdminFileFromZooKeeper(SolrQueryRequest req, SolrQueryResponse rsp, SolrZkClient zkClient, Set<String> hiddenFiles) throws org.apache.zookeeper.KeeperException, InterruptedException
org.apache.zookeeper.KeeperException
InterruptedException
public static File getAdminFileFromFileSystem(SolrQueryRequest req, SolrQueryResponse rsp, Set<String> hiddenFiles)
public String getDescription()
SolrInfoMBean
getDescription
in interface SolrInfoMBean
getDescription
in class RequestHandlerBase
public String getSource()
SolrInfoMBean
getSource
in interface SolrInfoMBean
getSource
in class RequestHandlerBase
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.