Class ExpandComponent
- java.lang.Object
-
- org.apache.solr.handler.component.SearchComponent
-
- org.apache.solr.handler.component.ExpandComponent
-
- All Implemented Interfaces:
SolrInfoBean,NamedListInitializedPlugin,PluginInfoInitialized,SolrCoreAware
public class ExpandComponent extends SearchComponent implements PluginInfoInitialized, SolrCoreAware
The ExpandComponent is designed to work with the CollapsingPostFilter. The CollapsingPostFilter collapses a result set on a field.The ExpandComponent expands the collapsed groups for a single page. When multiple collapse groups are specified then, the field is chosen from collapse group with min cost. If the cost are equal then, the field is chosen from first collapse group.
http parameters:
expand=true
expand.rows=5
expand.sort=field asc|desc
expand.q=*:* (optional, overrides the main query)
expand.fq=type:child (optional, overrides the main filter queries)
expand.field=field (mandatory, if the not used with the CollapsingQParserPlugin. This is given higher priority when both are present)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoBean
SolrInfoBean.Category, SolrInfoBean.Group
-
-
Field Summary
Fields Modifier and Type Field Description static StringCOMPONENT_NAME-
Fields inherited from class org.apache.solr.handler.component.SearchComponent
metricNames, registry, standard_components
-
-
Constructor Summary
Constructors Constructor Description ExpandComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intdistributedProcess(ResponseBuilder rb)Process for a distributed search.voidfinishStage(ResponseBuilder rb)Called after all responses have been received for this stage.SolrInfoBean.CategorygetCategory()Category of this componentStringgetDescription()Simple one or two line descriptionvoidhandleResponses(ResponseBuilder rb, ShardRequest sreq)Called after all responses for a single request were receivedvoidinform(SolrCore core)voidinit(PluginInfo info)voidmodifyRequest(ResponseBuilder rb, SearchComponent who, ShardRequest sreq)Called after another component adds a requestvoidprepare(ResponseBuilder rb)Prepare the response.voidprocess(ResponseBuilder rb)Process the request for this component-
Methods inherited from class org.apache.solr.handler.component.SearchComponent
getMetricNames, getMetricRegistry, getName, init, setName
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.solr.core.SolrInfoBean
getMetricsSnapshot, registerMetricName
-
-
-
-
Field Detail
-
COMPONENT_NAME
public static final String COMPONENT_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
init
public void init(PluginInfo info)
- Specified by:
initin interfacePluginInfoInitialized
-
prepare
public void prepare(ResponseBuilder rb) throws IOException
Description copied from class:SearchComponentPrepare the response. Guaranteed to be called before any SearchComponentSearchComponent.process(org.apache.solr.handler.component.ResponseBuilder)method. Called for every incoming request. The place to do initialization that is request dependent.- Specified by:
preparein classSearchComponent- Parameters:
rb- TheResponseBuilder- Throws:
IOException- If there is a low-level I/O error.
-
inform
public void inform(SolrCore core)
- Specified by:
informin interfaceSolrCoreAware
-
process
public void process(ResponseBuilder rb) throws IOException
Description copied from class:SearchComponentProcess the request for this component- Specified by:
processin classSearchComponent- Parameters:
rb- TheResponseBuilder- Throws:
IOException- If there is a low-level I/O error.
-
distributedProcess
public int distributedProcess(ResponseBuilder rb) throws IOException
Description copied from class:SearchComponentProcess for a distributed search.- Overrides:
distributedProcessin classSearchComponent- Returns:
- the next stage for this component
- Throws:
IOException
-
modifyRequest
public void modifyRequest(ResponseBuilder rb, SearchComponent who, ShardRequest sreq)
Description copied from class:SearchComponentCalled after another component adds a request- Overrides:
modifyRequestin classSearchComponent
-
handleResponses
public void handleResponses(ResponseBuilder rb, ShardRequest sreq)
Description copied from class:SearchComponentCalled after all responses for a single request were received- Overrides:
handleResponsesin classSearchComponent
-
finishStage
public void finishStage(ResponseBuilder rb)
Description copied from class:SearchComponentCalled after all responses have been received for this stage. Useful when different requests are sent to each shard.- Overrides:
finishStagein classSearchComponent
-
getDescription
public String getDescription()
Description copied from interface:SolrInfoBeanSimple one or two line description- Specified by:
getDescriptionin interfaceSolrInfoBean- Specified by:
getDescriptionin classSearchComponent
-
getCategory
public SolrInfoBean.Category getCategory()
Description copied from interface:SolrInfoBeanCategory of this component- Specified by:
getCategoryin interfaceSolrInfoBean- Overrides:
getCategoryin classSearchComponent
-
-