public abstract class RequestHandlerBase extends Object implements SolrRequestHandler, SolrInfoMBean, SolrMetricProducer, NestedRequestHandler
SolrInfoMBean.Category, SolrInfoMBean.Group
Modifier and Type | Field and Description |
---|---|
protected SolrParams |
appends |
protected SolrParams |
defaults |
protected boolean |
httpCaching |
protected NamedList |
initArgs |
protected SolrParams |
invariants |
TYPE
Constructor and Description |
---|
RequestHandlerBase() |
Modifier and Type | Method and Description |
---|---|
SolrInfoMBean.Category |
getCategory()
Purpose of this Class
|
abstract String |
getDescription()
Simple one or two line description
|
URL[] |
getDocs()
Documentation URL list.
|
NamedList |
getInitArgs() |
String |
getName()
Simple common usage name, e.g.
|
PluginInfo |
getPluginInfo() |
static SolrRequestHandler |
getRequestHandler(String handlerName,
PluginBag<SolrRequestHandler> reqHandlers)
Get the request handler registered to a given name.
|
static SolrParams |
getSolrParamsFromNamedList(NamedList args,
String key) |
String |
getSource()
CVS Source, SVN Source, etc
|
NamedList<Object> |
getStatistics()
Any statistics this instance would like to be publicly available via
the Solr Administration interface.
|
SolrRequestHandler |
getSubHandler(String subPath)
Return a RequestHandler to handle a subpath from the path this handler is registered.
|
String |
getVersion()
Simple common usage version, e.g.
|
void |
handleRequest(SolrQueryRequest req,
SolrQueryResponse rsp)
Handles a query request, this method must be thread safe.
|
abstract void |
handleRequestBody(SolrQueryRequest req,
SolrQueryResponse rsp) |
void |
init(NamedList args)
Initializes the
SolrRequestHandler by creating three SolrParams named. |
void |
initializeMetrics(SolrMetricManager manager,
String registryName,
String scope)
Initializes metrics specific to this producer
|
void |
setPluginInfo(PluginInfo pluginInfo) |
protected NamedList initArgs
protected SolrParams defaults
protected SolrParams appends
protected SolrParams invariants
protected boolean httpCaching
public void init(NamedList args)
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
args
- The NamedList
to initialize fromhandleRequest(org.apache.solr.request.SolrQueryRequest, org.apache.solr.response.SolrQueryResponse)
,
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 void initializeMetrics(SolrMetricManager manager, String registryName, String scope)
SolrMetricProducer
initializeMetrics
in interface SolrMetricProducer
manager
- an instance of SolrMetricManager
registryName
- registry name where metrics are registeredscope
- scope of the metrics (eg. handler name) to separate metrics of
instances of the same component executing in different contextspublic static SolrParams getSolrParamsFromNamedList(NamedList args, String key)
public NamedList getInitArgs()
public abstract void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp) throws Exception
Exception
public void handleRequest(SolrQueryRequest req, SolrQueryResponse rsp)
SolrRequestHandler
Information about the request may be obtained from req
and
response information may be set using rsp
.
There are no mandatory actions that handleRequest must perform. An empty handleRequest implementation would fulfill all interface obligations.
handleRequest
in interface SolrRequestHandler
public String getName()
SolrInfoMBean
getName
in interface SolrInfoMBean
public abstract String getDescription()
SolrInfoMBean
getDescription
in interface SolrInfoMBean
public String getSource()
SolrInfoMBean
getSource
in interface SolrInfoMBean
public String getVersion()
SolrInfoMBean
getVersion
in interface SolrInfoMBean
public SolrInfoMBean.Category getCategory()
SolrInfoMBean
getCategory
in interface SolrInfoMBean
public URL[] getDocs()
SolrInfoMBean
Suggested documentation URLs: Homepage for sponsoring project, FAQ on class usage, Design doc for class, Wiki, bug reporting URL, etc...
getDocs
in interface SolrInfoMBean
public SolrRequestHandler getSubHandler(String subPath)
NestedRequestHandler
getSubHandler
in interface NestedRequestHandler
public static SolrRequestHandler getRequestHandler(String handlerName, PluginBag<SolrRequestHandler> reqHandlers)
public void setPluginInfo(PluginInfo pluginInfo)
public PluginInfo getPluginInfo()
public NamedList<Object> getStatistics()
SolrInfoMBean
Any Object type may be stored in the list, but only the
toString()
representation will be used.
getStatistics
in interface SolrInfoMBean
Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.