Class QueryComponent
java.lang.Object
org.apache.solr.handler.component.SearchComponent
org.apache.solr.handler.component.QueryComponent
- All Implemented Interfaces:
AutoCloseable,SolrInfoBean,SolrMetricProducer,NamedListInitializedPlugin
TODO!
- Since:
- solr 1.3
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoBean
SolrInfoBean.Category, SolrInfoBean.Group -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringprotected static final EndResultTransformerprotected static final EndResultTransformerFields 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 TypeMethodDescriptionprotected booleanaddFL(StringBuilder fl, String field, boolean additionalAdded) protected voidprotected voidprotected voidintProcess for a distributed search.protected voiddoFieldSortValues(ResponseBuilder rb, SolrIndexSearcher searcher) protected voidvoidCalled after all responses have been received for this stage.Category of this componentSimple one or two line descriptionprotected intprotected voidprotected voidprotected voidvoidhandleResponses(ResponseBuilder rb, ShardRequest sreq) Called after all responses for a single request were receivedprotected voidmergeIds(ResponseBuilder rb, ShardRequest sreq) protected voidInspects the state of theResponseBuilderand populates the nextResponseBuilder.setNextCursorMark(org.apache.solr.search.CursorMark)as appropriate based on the merged sort values from individual shardsvoidPrepare the response.protected voidvoidActually run the queryprotected intprotected voidprotected voidreturnFields(ResponseBuilder rb, ShardRequest sreq) unmarshalSortValues(SortSpec sortSpec, org.apache.solr.common.util.NamedList<List<Object>> sortFieldValues, IndexSchema schema) protected voidupdateStats(ResponseBuilder rb, ShardRequest sreq) Methods inherited from class org.apache.solr.handler.component.SearchComponent
getName, getSolrMetricsContext, initializeMetrics, modifyRequest, 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:
-
MAIN_END_RESULT_TRANSFORMER
-
SIMPLE_END_RESULT_TRANSFORMER
-
-
Constructor Details
-
QueryComponent
public QueryComponent()
-
-
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.
-
prepareGrouping
- Throws:
IOException
-
process
Actually run the query- Specified by:
processin classSearchComponent- Parameters:
rb- TheResponseBuilder- Throws:
IOException- If there is a low-level I/O error.
-
doFieldSortValues
- Throws:
IOException
-
doPrefetch
- Throws:
IOException
-
distributedProcess
Description copied from class:SearchComponentProcess for a distributed search.- Overrides:
distributedProcessin classSearchComponent- Returns:
- the next stage for this component
- Throws:
IOException
-
groupedDistributedProcess
-
regularDistributedProcess
-
handleResponses
Description copied from class:SearchComponentCalled after all responses for a single request were received- Overrides:
handleResponsesin classSearchComponent
-
handleGroupedResponses
-
handleRegularResponses
-
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
-
groupedFinishStage
-
regularFinishStage
-
createDistributedStats
-
updateStats
-
createMainQuery
-
addFL
-
mergeIds
-
populateNextCursorMarkFromMergedShards
Inspects the state of theResponseBuilderand populates the nextResponseBuilder.setNextCursorMark(org.apache.solr.search.CursorMark)as appropriate based on the merged sort values from individual shards- Parameters:
rb- AResponseBuilderthat already contains mergedShardDocsinresultIds, may or may not be part of a Cursor based request (method will NOOP if not needed)
-
unmarshalSortValues
-
createRetrieveDocs
-
returnFields
-
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
-