Class FacetComponent
java.lang.Object
org.apache.solr.handler.component.SearchComponent
org.apache.solr.handler.component.FacetComponent
- All Implemented Interfaces:
AutoCloseable,SolrInfoBean,SolrMetricProducer,NamedListInitializedPlugin
Computes facets -- aggregations with counts of terms or ranges over the whole search results.
- Since:
- solr 1.3
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classThis API is experimental and subject to changestatic classThis API is experimental and subject to changestatic classEncapsulates facet ranges and facet queries such that their parameters are parsed and cached for efficient re-use.static classThis class is used exclusively for merging results from each shard in a distributed facet request.static classThis API is experimental and subject to changestatic classThis API is experimental and subject to changestatic classThis API is experimental and subject to changeNested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoBean
SolrInfoBean.Category, SolrInfoBean.Group -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic String[]Fields inherited from class org.apache.solr.handler.component.SearchComponent
solrMetricsContext, standard_componentsFields inherited from interface org.apache.solr.metrics.SolrMetricProducer
CATEGORY_ATTR, HANDLER_ATTR, NAME_ATTR, OPERATION_ATTR, PLUGIN_NAME_ATTR, RESULT_ATTR, TYPE_ATTR -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintProcess for a distributed search.voidCalled after all responses have been received for this stage.Category of this componentSimple one or two line descriptionstatic org.apache.solr.common.util.NamedList<Object> getFacetCounts(SimpleFacets simpleFacets) static org.apache.solr.common.util.NamedList<Object> getFacetCounts(SimpleFacets simpleFacets, FacetDebugInfo fdebug) Looks at various Params to determining if any simple Facet Constraint count computations are desired.voidhandleResponses(ResponseBuilder rb, ShardRequest sreq) Called after all responses for a single request were receivedvoidmodifyRequest(ResponseBuilder rb, SearchComponent who, ShardRequest sreq) Called after another component adds a requestprotected SimpleFacetsnewSimpleFacets(SolrQueryRequest req, DocSet docSet, org.apache.solr.common.params.SolrParams params, ResponseBuilder rb) voidPrepare the response.voidActually run the queryMethods inherited from class org.apache.solr.handler.component.SearchComponent
getName, getSolrMetricsContext, initializeMetrics, setNameMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.solr.util.plugin.NamedListInitializedPlugin
initMethods inherited from interface org.apache.solr.metrics.SolrMetricProducer
close
-
Field Details
-
COMPONENT_NAME
- See Also:
-
FACET_COUNTS_KEY
- See Also:
-
FACET_QUERY_KEY
- See Also:
-
FACET_FIELD_KEY
- See Also:
-
FACET_RANGES_KEY
- See Also:
-
FACET_INTERVALS_KEY
- See Also:
-
FACET_TYPE_PARAMS
-
-
Constructor Details
-
FacetComponent
public FacetComponent()
-
-
Method Details
-
prepare
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.
-
newSimpleFacets
protected SimpleFacets newSimpleFacets(SolrQueryRequest req, DocSet docSet, org.apache.solr.common.params.SolrParams params, ResponseBuilder rb) -
process
Actually run the query- Specified by:
processin classSearchComponent- Parameters:
rb- TheResponseBuilder- Throws:
IOException- If there is a low-level I/O error.
-
getFacetCounts
public static org.apache.solr.common.util.NamedList<Object> getFacetCounts(SimpleFacets simpleFacets) -
getFacetCounts
public static org.apache.solr.common.util.NamedList<Object> getFacetCounts(SimpleFacets simpleFacets, FacetDebugInfo fdebug) Looks at various Params to determining if any simple Facet Constraint count computations are desired.- Returns:
- a NamedList of Facet Count info or null
- See Also:
-
distributedProcess
Description copied from class:SearchComponentProcess for a distributed search.- Overrides:
distributedProcessin classSearchComponent- Returns:
- the next stage for this component
- Throws:
IOException
-
modifyRequest
Description copied from class:SearchComponentCalled after another component adds a request- Overrides:
modifyRequestin classSearchComponent
-
handleResponses
Description copied from class:SearchComponentCalled after all responses for a single request were received- Overrides:
handleResponsesin classSearchComponent
-
finishStage
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
Description copied from interface:SolrInfoBeanSimple one or two line description- Specified by:
getDescriptionin interfaceSolrInfoBean- Specified by:
getDescriptionin classSearchComponent
-
getCategory
Description copied from interface:SolrInfoBeanCategory of this component- Specified by:
getCategoryin interfaceSolrInfoBean- Overrides:
getCategoryin classSearchComponent
-