Package org.apache.solr.search
Class QParserPlugin
java.lang.Object
org.apache.solr.search.QParserPlugin
- All Implemented Interfaces:
AutoCloseable,SolrInfoBean,SolrMetricProducer,NamedListInitializedPlugin
- Direct Known Subclasses:
BlockJoinParentQParserPlugin,BoolQParserPlugin,BoostQParserPlugin,CollapsingQParserPlugin,ComplexPhraseQParserPlugin,DisMaxQParserPlugin,ExportQParserPlugin,ExtendedDismaxQParserPlugin,FieldQParserPlugin,FiltersQParserPlugin,FunctionQParserPlugin,FunctionRangeQParserPlugin,FuzzyQParserPlugin,GraphQParserPlugin,GraphTermsQParserPlugin,HashQParserPlugin,HashRangeQParserPlugin,IGainTermsQParserPlugin,JoinQParserPlugin,KnnQParserPlugin,LuceneQParserPlugin,MinHashQParserPlugin,MLTContentQParserPlugin,MLTQParserPlugin,NestedQParserPlugin,NumericRangeQParserPlugin,PayloadCheckQParserPlugin,PayloadScoreQParserPlugin,PrefixQParserPlugin,RankQParserPlugin,RawQParserPlugin,ReRankQParserPlugin,ScoreJoinQParserPlugin,SignificantTermsQParserPlugin,SimpleQParserPlugin,SpatialFilterQParserPlugin,SurroundQParserPlugin,SwitchQParserPlugin,TermQParserPlugin,TermsQParserPlugin,TextLogisticRegressionQParserPlugin,VectorSimilarityQParserPlugin,XmlQParserPlugin
public abstract class QParserPlugin
extends Object
implements NamedListInitializedPlugin, SolrInfoBean
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoBean
SolrInfoBean.Category, SolrInfoBean.Group -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringinternal use - name of the default parserstatic final Map<String, QParserPlugin> Internal use - name to parser for the builtin parsers. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract QParsercreateParser(String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest req) return aQParserCategory of this componentSimple one or two line descriptiongetName()Simple common usage name, e.g.Implementations should return the context used inSolrMetricProducer.initializeMetrics(SolrMetricsContext, String)to ensure proper cleanup of metrics at the end of the life-cycle of this component.voidinitializeMetrics(SolrMetricsContext parentContext, String scope) Initialize metrics specific to this producer.Methods 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
-
DEFAULT_QTYPE
internal use - name of the default parser- See Also:
-
standardPlugins
Internal use - name to parser for the builtin parsers. Each query parser plugin extendingQParserPluginhas own instance of standardPlugins. This leads to cyclic dependencies of static fields and to case when NAME field is not yet initialized. This result to NPE during initialization. For every plugin, listed here, NAME field has to be final and static.
-
-
Constructor Details
-
QParserPlugin
public QParserPlugin()
-
-
Method Details
-
createParser
public abstract QParser createParser(String qstr, org.apache.solr.common.params.SolrParams localParams, org.apache.solr.common.params.SolrParams params, SolrQueryRequest req) return aQParser -
getName
Description copied from interface:SolrInfoBeanSimple common usage name, e.g. BasicQueryHandler, or fully qualified class name.- Specified by:
getNamein interfaceSolrInfoBean
-
getDescription
Description copied from interface:SolrInfoBeanSimple one or two line description- Specified by:
getDescriptionin interfaceSolrInfoBean
-
getCategory
Description copied from interface:SolrInfoBeanCategory of this component- Specified by:
getCategoryin interfaceSolrInfoBean
-
initializeMetrics
Description copied from interface:SolrMetricProducerInitialize metrics specific to this producer.- Specified by:
initializeMetricsin interfaceSolrMetricProducer- Parameters:
parentContext- parent metrics context. If this component has the same life-cycle as the parent it can simply use the parent context, otherwise it should obtain a child context usingSolrMetricsContext.getChildContext(Object)passingthisas the child object.scope- component scope
-
getSolrMetricsContext
Description copied from interface:SolrMetricProducerImplementations should return the context used inSolrMetricProducer.initializeMetrics(SolrMetricsContext, String)to ensure proper cleanup of metrics at the end of the life-cycle of this component. This should be the child context if one was created, or null if the parent context was used.- Specified by:
getSolrMetricsContextin interfaceSolrMetricProducer
-